Page 1 of 2
Neo4j database full import not working - empty warning mess
Posted: 09 Jul 2014 16:24
by lionbark
Hi, I'm having some difficulty in importing a Neo4j database into Gephi using the Neo4j plugin: when I go to File > Neo4j Database > Full Import and try to import a database, I get a popup with an empty warning message. I have also tried a Traversal Import, but after selecting the database, no windows pop up.
I've tried a sample database with a reference node that points to another node, and also the example Movies/Actors database that comes included with Neo4j.
I am using Neo4j 2.1.2 and Gephi 0.8.2. Any help would be much appreciated!
Re: Neo4j database full import not working - empty warning m
Posted: 10 Jul 2014 16:13
by lionbark
Hi Holger, thanks for the reply. I tried closing the neo4j server, then importing the two dbs again but it's the same issue unfortunately.
Re: Neo4j database full import not working - empty warning m
Posted: 28 Jul 2014 00:52
by claudio_alvarez
Hi guys,
Any news on this topic?
I am experiencing the same disgusting issue with Neo4j 2.1.2, plugin version 2.1.0,
Gepphi version:
Product Version: Gephi 0.8.2 201210100934
Updates: Updates available
Java: 1.7.0_55; OpenJDK 64-Bit Server VM 24.51-b03
System: Linux version 3.13.0-24-generic running on amd64; UTF-8; en_US (gephi)
User directory: /home/**********/.gephi/0.8.2/dev
Cache directory: /home/**********/.gephi/0.8.2/dev/var/cache
I will appreciate any pointers on how to see the exception raised by the Neo4j plugin.
Re: Neo4j database full import not working - empty warning m
Posted: 28 Jul 2014 23:18
by romans
I have the same problem with a database created with 2.1.0 or 2.1.2 (same with both versions) on a windows as well as on a linux machine.
I get just an empty error window on "full import" and no message on traversal.
Is there any restrictions on how the database should look like?
I managed to save one of these exaples (les miserables) to neo4j and reload it though.
Some kind of error message would be great...
Linux Machine:
Produktversion: Gephi 0.8.2 201210100934
Java: 1.7.0_60; Java HotSpot(TM) 64-Bit Server VM 24.60-b09
System: Linux Version 3.13.0-30-generic wird auf amd64 ausgeführt; UTF-8; de_DE (gephi)
Re: Neo4j database full import not working - empty warning m
Posted: 29 Jul 2014 01:57
by romans
I forked the plugin git and looked at the source.
It seems that exceptions get eaten on connect - very very very very very ugly. Still typical Java programmers behaviour...
I did the following to Neo4jVisualDebugger:
Code: Select all
@@ -189,6 +189,13 @@ public class Neo4jMenuAction extends CallableSystemAction {
Collection<Class> inUseExceptions = Arrays.<Class>asList(Neo4jStoreAlreadyInUseException.class,StoreLockException.class);
if (inUseExceptions.contains(e.getClass()) || inUseExceptions.contains(e.getCause().getClass()))
errorMessage = NbBundle.getMessage(Neo4jMenuAction.class, "CTL_Neo4j_DatabaseStorageAlreadyInUse");
+ else
+ {
+ e.printStackTrace();
+ StringWriter sw = new StringWriter();
+ PrintWriter pw = new PrintWriter(sw);
+ e.printStackTrace(pw);
+ errorMessage = sw.toString(); // stack trace as a string
+ }
NotifyDescriptor notifyDescriptor = new NotifyDescriptor.Message(errorMessage, JOptionPane.WARNING_MESSAGE);
DialogDisplayer.getDefault().notify(notifyDescriptor);
So now I see what is actually happening and I get the following stack trace:
Code: Select all
java.lang.RuntimeException: Error starting org.neo4j.kernel.EmbeddedGraphDatabase, /home/roman/Dropbox/Crawler/temp-neo-test
at org.neo4j.kernel.InternalAbstractGraphDatabase.run(InternalAbstractGraphDatabase.java:339)
at org.neo4j.kernel.EmbeddedGraphDatabase.<init>(EmbeddedGraphDatabase.java:66)
at org.neo4j.graphdb.factory.GraphDatabaseFactory$1.newDatabase(GraphDatabaseFactory.java:92)
at org.neo4j.graphdb.factory.GraphDatabaseBuilder.newGraphDatabase(GraphDatabaseBuilder.java:198)
at org.gephi.desktop.neo4j.ui.util.Neo4jUtils.localDatabase(Neo4jUtils.java:43)
at org.gephi.desktop.neo4j.Neo4jMenuAction$FullImportMenuAction.actionPerformed(Neo4jMenuAction.java:236)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
at java.awt.Component.processMouseEvent(Component.java:6516)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3320)
at java.awt.Component.processEvent(Component.java:6281)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4872)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4698)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4698)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:158)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.kernel.impl.transaction.XaDataSourceManager@16253994' was successfully initialized, but failed to start. Please see attached cause exception.
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:513)
at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:115)
at org.neo4j.kernel.InternalAbstractGraphDatabase.run(InternalAbstractGraphDatabase.java:316)
... 44 more
Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.kernel.impl.nioneo.xa.NeoStoreXaDataSource@4d2c47e9' was successfully initialized, but failed to start. Please see attached cause exception.
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:513)
at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:115)
at org.neo4j.kernel.impl.transaction.XaDataSourceManager.start(XaDataSourceManager.java:164)
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:507)
... 46 more
Caused by: org.neo4j.kernel.impl.storemigration.StoreUpgrader$UnexpectedUpgradingStoreVersionException: 'neostore' has a store version number that we cannot upgrade from. Expected 'NeoStore v0.A.1' but file is version 'NeoStore v0.A.3'.
at org.neo4j.kernel.impl.storemigration.UpgradableDatabase.checkUpgradeable(UpgradableDatabase.java:70)
at org.neo4j.kernel.impl.storemigration.StoreUpgrader.attemptUpgrade(StoreUpgrader.java:72)
at org.neo4j.kernel.impl.nioneo.store.StoreFactory.tryToUpgradeStores(StoreFactory.java:147)
at org.neo4j.kernel.impl.nioneo.store.StoreFactory.newNeoStore(StoreFactory.java:121)
at org.neo4j.kernel.impl.nioneo.xa.NeoStoreXaDataSource.start(NeoStoreXaDataSource.java:327)
at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:507)
... 49 more
The interresting line here is:
Expected 'NeoStore v0.A.1' but file is version 'NeoStore v0.A.3'.
https://github.com/gephi/gephi-plugins/issues/40 seems to report maybe the same issue. I have to get some sleep now but I'll have a look at it tomorrow.
What has to be fixed one way or the other is the plugin's eating exceptions. This should not be happening.
Re: Neo4j database full import not working - empty warning m
Posted: 29 Jul 2014 02:10
by romans
Re: Neo4j database full import not working - empty warning m
Posted: 29 Jul 2014 05:17
by hbruch
Currently, there are a number of open issues, some of them closely related:
- Eaten exceptions (might be caused by locked neo4jstore or neo4j version >2.1.0), (#44, fixed with pull request #45)
- NotInTransactionException for TraversalImport (#40, fixed with pull request)
- Missing support for current neo4j 2.1.2 (fixed with pull request #48)
- Finally, Node Labels (introduced with Neo4j2) are not yet supported, neither their import (#46, fixed with pull request #47), nor using them as import filter (I'm currently working on it)
I hope, they will be merged in near future, otherwise I might provide a temporarilly patch version for the compiled plugin.
Best regards,
Holger