2017-02-07 2 views
0

Je me connecte à neo4j de la manière normale et je peux exécuter des requêtes sans problème.
Lors des tests, j'ai écrit une requête qui devrait échouer (en raison de la contrainte d'unicité), la requête échoue comme prévu et j'attrape l'exception.
Le problème est que lorsque j'essaie d'exécuter la requête suivante dans la file d'attente, elle se bloque (plus longtemps que le délai d'expiration).
Je ne suppose pas que c'est un comportement normal.Neo4j, graphaware: Après avoir intercepté une exception, une autre requête ne sera pas exécutée.

try{ 
    $result = $neo->run ($query); 
} 
catch (Exception $e) { 
      // handle it 
} 

// all good so far 
// now we attempt: 

try{ 
    $result = $neo->run ($next_query); 
} 
catch (Exception $e) { 
      // handle it 
} 
// hangs longer than timeout 

si je retire la requête a échoué de la file d'attente, tout c'est

+0

est-ce une version 3.1 de neo4j? –

+0

Oui, 3.1, et im se connecter en utilisant boulon –

+0

Répondu sur le problème de github https://github.com/graphaware/neo4j-php-client/issues/86#issuecomment-278420273 –

Répondre

0

Il semble donc que l'exception lancée par la casse php-client la connexion à Neo4j.
Si je modifie le code à ce qui suit, tout fonctionne très bien.

try{ 
    $result = $neo->run ($query); 
} 
catch (Exception $e) { 
      // handle it 
     connect_to_neo() 
} 

// all good so far 

try{ 
    $result = $neo->run ($next_query); 
} 
catch (Exception $e) { 
      // handle it 
} 
// all good, $next_query gets executed 

Je ne pense pas qu'une exception qui casse la connexion soit le comportement souhaité. Va soulever le problème sur github.