1 votes

Une tentative d'importation de apache_beam en python3 sur Mac provoque une erreur fatale de protobuf.

Essayer d'importer apache_beam

>>> import apache_beam

lance une erreur fatale

[libprotobuf ERROR google/protobuf/descriptor_database.cc:58] Le fichier existe déjà dans la base de données :
[libprotobuf FATAL google/protobuf/descriptor.cc:1370] CHECK a échoué :
GeneratedDatabase()->Add(encoded_file_descriptor, size) :
libc++abi.dylib : terminating with uncaught exception of type google::protobuf::FatalException :
CHECK a échoué : GeneratedDatabase()->Add(encoded_file_descriptor, size) :

J'ai réussi à reproduire ce phénomène avec une virtualenv créé à l'aide de pyenv et par le système installé Python.

D'après d'autres messages, j'ai compris qu'il s'agissait d'un problème avec libprotobuf qui est chargé deux fois. Je suis cependant gêné par le fait que le premier ERROR ne signale pas quel fichier existe dans la base de données.

Running python -v indique que le problème est lié à pyarrow qui est la dernière dépendance importée par apache_beam avant qu'il n'explose. J'ai essayé d'installer pyarrow avant apache_beam, et il s'est chargé correctement. Cependant, apache_beam le désinstalle puis le réinstalle, ce qui conduit probablement à l'erreur de liaison.

Des conseils sur la manière de faire fonctionner apache_beam ?

1voto

Ubaier Bhat Points 111

Si vous avez récemment mis à jour votre macos vers Catalina, cette erreur est causée par pyarrow (déjà signalée dans la rubrique https://issues.apache.org/jira/browse/BEAM-8368 )

La solution temporaire est d'épingler pyarrow < 0.14.0

0 votes

Oui, ça a été causé par la mise à jour de l'OS. La rétrogradation de pyarrow l'a corrigé. Merci pour le conseil.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X