Vor ein paar Tagen habe ich mein MacOS auf Catalina upgedatet und sofort danach begannen alle Snowflake-Skripte, die ich in #Python geschrieben habe, einen Abort trap: 6 Fehler zu liefern. Mein erster Gedanke war, dass es sich um ein Kompatibilitätsproblem mit dem Python-Connector oder der neuen Standard-Terminal-Shell zsh handeln muss. Zum Glück lag ich falsch, aber hier ist, was ich gefunden habe und wie ich meine Python-Skripte wieder zum Laufen bringen konnte.
Warum passiert das
Der Fehler scheint damit zusammenzuhängen, dass Catalina den Aufruf von nicht versionierten Dylibs nicht erlaubt. Wir können dies abkürzen, indem wir die nicht-versionierten Dylib-Dateien mit denen mit Versionen verknüpfen. Hier ist die Lösung, die bei mir funktioniert hat.
Die Lösung
Eine Google-Suche führte mich hierher: https://forums.developer.apple.com/thread/119429
;tldr
Vom Terminal aus müssen wir ein paar Updates mit brew ausführen.
brew update && brew upgrade && brew install openssl
Nachdem die Updates abgeschlossen sind, führen Sie die folgenden Schritte aus
cd /usr/local/Cellar/openssl/1.0.2t/lib
sudo cp libssl.1.0.0.dylib libcrypto.1.0.0.dylib /usr/local/lib/
cd /usr/local/lib
sudo ln -s libssl.1.0.0.dylib libssl.dylib
sudo ln -s libcrypto.1.0.0.dylib libcrypto.dylib
Mein spezielles Problem
Speziell für mich war es, sicherzustellen, dass der Snowflake Python Connector ordnungsgemäß funktioniert, also habe ich auch ein pip3-Upgrade davon durchgeführt:
pip3 install --upgrade snowflake-connector-python
Nachdem ich mehrere Module übersprungen hatte, die keine Updates benötigten, kamen wir zu den Updates einiger Dateien, die mit Crypto verbunden sind:
„Successfully installed asn1crypto-1.2.0 oscrypto-1.1.0 snowflake-connector-python-2.0.3“
Danach ist alles gut …. so weit 😉
Hoffe das hilft!