I meant you have to pause your processing in java if you want to access the db externally.
On Sat, Nov 22, 2014 at 9:15 PM, Markus Gutmann <[email protected]> wrote: > I simply execute the connect-code I have posted above in order to connect > to the db. > > In this code I do reassign a new value to the variable _gdbService so I am > not quite sure whether _gdbService still points to the old db - I would > rather say no. > > What do you mean with "wait to continue" .. ? is there a certain time > threshold to wait? > > Even if I wait a few seconds (up to 1 minute) the result is the same ... > > > > On Saturday, November 22, 2014 9:09:04 PM UTC+1, Michael Hunger wrote: >> >> I think your _gdbService variable still refers to the old db-instance >> and was not set to the newly created instance. >> >> How do you wait to continue after you finished the external operation >> with the db? >> >> Could that be? >> >> Michael >> >> On Sat, Nov 22, 2014 at 8:59 PM, Markus Gutmann <[email protected]> >> wrote: >> >>> I do >>> >>> 1. connect >>> 2. disconnect >>> 3. connect >>> >>> as described in my original post. >>> >>> Then I execute the following method: >>> >>> try ( Transaction transaction = _gdbService.beginTx() ) { >>> >>> Iterable<Relationship> relationships = node.getRelationships(Direction. >>> OUTGOING); >>> ... >>> >>> >>> and the first line throws an exception with the following trace: >>> >>> >>> org.neo4j.graphdb.DatabaseShutdownException: This database is shutdown. >>> at org.neo4j.kernel.impl.core.ThreadToStatementContextBridge.ch >>> eckIfShutdown(ThreadToStatementContextBridge.java:80) >>> at org.neo4j.kernel.impl.core.ThreadToStatementContextBridge.instance( >>> ThreadToStatementContextBridge.java:54) >>> at org.neo4j.kernel.impl.core.NodeProxy.getRelationships(NodeProxy.java >>> :140) >>> at org.neo4j.kernel.impl.core.NodeProxy.getRelationships(NodeProxy.java >>> :76) >>> at thesisPrototype.cfgUtilizer.cfgdb.GraphDatabase.findAdjacent >>> ReachableNode(GraphDatabase.java:336) >>> at thesisPrototype.reconnaissanceCore.CFGDBTracer.hook(CFGDBTracer.java >>> :92) >>> at thesisPrototype.rmiBridge.TracerProxy.hook(TracerProxy.java:16) >>> at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source) >>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) >>> at java.lang.reflect.Method.invoke(Unknown Source) >>> at sun.rmi.server.UnicastServerRef.dispatch(Unknown Source) >>> at sun.rmi.transport.Transport$1.run(Unknown Source) >>> at sun.rmi.transport.Transport$1.run(Unknown Source) >>> at java.security.AccessController.doPrivileged(Native Method) >>> at sun.rmi.transport.Transport.serviceCall(Unknown Source) >>> at sun.rmi.transport.tcp.TCPTransport.handleMessages(Unknown Source) >>> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(Unknown >>> Source) >>> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(Unknown >>> Source) >>> at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) >>> at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) >>> at java.lang.Thread.run(Unknown Source) >>> >>> Please, .. I need to fix that issue as soon as possible and I would be >>> more than grateful for any help... >>> >>> >>> On Saturday, November 22, 2014 5:39:15 PM UTC+1, Markus Gutmann wrote: >>>> >>>> _gdbFactory = new GraphDatabaseFactory(); >>>> _gdbService = _gdbFactory.newEmbeddedDatabase(_gdbPath); >>>> _gdbEngine = new ExecutionEngine(_gdbService); >>>> do some work >>>> disconnect from the gdbdo some workdisconnect from the gdb >>>> >>>> I am using a local Neo4j server instance and the Neo4j Java API to >>>> access a graph-database (gdb). >>>> >>>> I simply want to achieve the following workflow: >>>> >>>> 1. connect to the local gdb from a Java program >>>> >>>> I do this using: >>>> >>>> _gdbFactory = new GraphDatabaseFactory(); >>>> _gdbService = _gdbFactory.newEmbeddedDatabase(_gdbPath); >>>> _gdbEngine = new ExecutionEngine(_gdbService); >>>> >>>> 2. then disconnect using. >>>> >>>> _gdbService.shutdown(); >>>> >>>> 3. connect with another process to the same gdb >>>> >>>> e.g. with the locally installed Neo4j program. >>>> >>>> 4. disconnect from the gdb from this process >>>> >>>> e.g. by simply clicking the "stop" button at the Neo4j program. >>>> >>>> 5. again connect to the gdb with the Java program using again the >>>> same code as in 1. >>>> >>>> *Right now, point 5 is not working!* >>>> >>>> The use of >>>> >>>> GraphDatabaseService.shutdown().shutdown >>>> >>>> seems to finalize the gdb in some way that I cannot connect to it any >>>> more. >>>> >>>> After reconnecting I get an Exception which tells me: *"This database >>>> is shutdown!"* >>>> >>>> So, my question is: >>>> >>>> What is the common way to connect - disconnect - reconnect to a Neo4J >>>> gdb ? Is there an alternative to the shutdown-method from above? >>>> >>> -- >>> 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. >>> >> >> -- > 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. > -- 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.
