É um bug no pymongo versão 3.0.x. URL do relatório de bug https://jira.mongodb.org/browse/PYTHON-961
Solução alternativa para este problema. (Testado no pymongo 3.0.3) Passe “connect=False” na inicialização do objeto MongoClient
MongoClient(uri, connect=False)
Ou simplesmente espere alguns segundos antes de criar a instância do MongoClient no processo filho (como time.sleep(2)).
def start(uri):
time.sleep(2)
mclient = MongoClient(uri)
mclient.db.collection.find_one()
if __name__ == '__main__':
p = multiprocessing.Process(target=start, args=('mongodb://localhost:27017/',))
p.start()