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.

Reply via email to