Segmentationsfehler im Aerospike Python-Client

8

Ich verwende Aerospike Python CLient, um ein Schlüssel / Wert-Paar zu setzen und zu erhalten:

%Vor%

Nach dem Put endet mein Programm jedoch mit SEGFAULT während des Befehls Get . Im Folgenden ist der Stack-Trace, den ich von GDB erhalten habe:

%Vor%

Es sieht so aus, als ob aerospike_key_get eine Unterroutine in der Datei src/main/aerospike/as_shm_cluster.c aufruft, die nicht vorhanden ist, daher Segmentierungsfehler. Ich habe mein $ LD_LIBRARY_PATH überprüft und es enthält ein Verzeichnis mit aerospike.so.

  1. Warum fehlt diese bestimmte Datei? Ist es anderswo als aerospike.so?
  2. Warum Segmentierungsfehler. Es sollte elegant im Python-Client
  3. behandelt werden

Bearbeiten:

%Vor%     
Mangat Rai Modi 30.03.2016, 07:17
quelle

1 Antwort

9

Dies wurde bereits in den Ausgaben 112 und 115 im aerospike / aerospike-client-python Repo auf GitHub und ein Posting im Diskussionsforum.

In Ihrem Fall besteht die Problemumgehung darin, den Client korrekt zu verwenden. Führen Sie keine Aufrufe an die Datenbank aus, nachdem Sie die Verbindung explizit geschlossen haben.

Wenn Sie diesen Fehler beheben möchten, können Sie das Projekt entweder forken (Open Source unter der Apache-Lizenz) und es selbst reparieren oder darauf warten, dass die Projektbetreuer es auf der Grundlage der bestehenden Probleme selbst reparieren.

    
Ronen Botzer 31.03.2016, 13:50
quelle