On Mon, Sep 7, 2015 at 6:46 PM, <[email protected]> wrote: > Hi Nigel, hi Mathias, > > Thanks for the suggestions ! > > > You should try with Neo4j 2.2.5 > Do you think to a specific fix released in this version which may help > here ? > Anyway, I think I'll upgrade in a close future. >
Yes, there have been resolved issues regarding bugs just like that, so it's definitely a possibility. > > > I strongly suggest that you upgrade to py2neo 2.0 and, if possible, > migrate to using Cypher transactions instead of batches. > Yep. It's clearly a task in my todo list ! :) > For reasons related to the planning of my project, I can't do it right now > because it would need to be done in the rush and that sounds risky. > > Anyway, I think I've made some good progresses: > - I've found why no exception was bubbling even with a call to submit(). > Basically, the exception was silenced by some of my code handling > exceptions, Arghhhhh. Stupid me ! > - The scenario seems to be the following: > - a process writes a bunch of update/create with a WriteBatch > - a concurrent process tries to read some data with a CypherQuery. > - a lock is detected for the read request. As I've implemented a "retry" > pattern around my calls to CypherQuery, the read request is sent again but > the first one is never closed => Error message appearing in the logs of > Neo4j server. > > I'm currently testing this modification of the submit() method: > > --------------------------------------------------------------------------------------------------------- > def submit(self): > try: > responses = self._execute() > return [BatchResponse(rs).hydrated for rs in responses.json] > finally: > if responses: > responses.close() > > --------------------------------------------------------------------------------------------------------- > > So far, results seem good but I want the processes to run on a long period. > I just want to be sure that putting the call to _execute() inside the > try/except block won't have nasty side-effects (especially in case of an > exception occurring in the _execute() method. > > laurent > > -- > You received this message because you are subscribed to a topic in the > Google Groups "Neo4j" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/neo4j/fQx9O3cu0n0/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- Mattias Persson Neo4j Hacker at Neo Technology -- You received this message because you are subscribed to the Google Groups "Neo4j" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
