The error occurs here:
            catch ( OutOfMemoryError e )
            {
                e.printStackTrace();
                ooe++;
                logWarn( "Unable to allocate direct buffer" );
            }

And I assume that's why the jdk classloader can't load the stuff needed for 
localizing  Level.WARN.
And that results in the error.

So what would be much more helpful is the stacktrace from e.printStackTrace() 
from your console.

The one from the zipfile is probably rather from the JDK reading from one of 
its JARs.

So if that error ocurred during creating your RTree, you should be able to 
reproduce it as the store is still intact after the initial import.

You can also zip the store and your code and share it via dropbox.

What are your: heap and mmap settings and which version of of jdk, neo4j etc. 
you were running?

We can try to run it on one of our test servers then it should be faster and 
not bother someones box for so long.

Cheers

Michael

P.S: What bothers me is that you run imports via a JUnit - Test, isn't there 
OSMImport.main() exactly for that purpose ?


Am 26.02.2011 um 12:38 schrieb Craig Taverner:

> Hi,
> 
> I was importing a reasonably large OSM dataset into Neo4j Spatial, and this
> involves a batch inserter which imports everything, followed by switching to
> a normal embedded graph database for adding nodes to the RTree index, which
> is an in-graph tree structure. The batch inserter phase worked fine, but
> sometime into the RTree index (normal graph API tree creation), the process
> terminated and I got the error message in the console:
> 
> mmap failed for CEN and END part of zip file
> 
> 
> Since this was running in JUnit, I also got a stack trace in junit console,
> which I have included below, but the key elements are that it occurred on a
> line in my code that extracts a double[] property from a node:
> 
> double[] bbox = (double[]) geomNode.getProperty("bbox");
> 
> 
> This was certainly not the first time that method was called, and in fact
> this code has been stable for many months, so I think something deeper
> inside is going wrong. The stack trace goes further to enter logging, so it
> seems like it was trying to print a warning, but the logging seems to be
> trying to load a jar file, which gave a ZipException.
> 
> I do not know which is more relevant, the 'mmap' error in the console, or
> the  logWarn/ZipFile error in the stack trance. Has anyone seen something
> like this, or have any ideas how I can trace this further? It took nearly 5
> hours to run to this point, so it is not easy to duplicate. Could this in
> any way be due to issues with memory or the heap versus memory mapping
> question. Considering that I switch between the batch inserter and the
> normal API in the same java runtime with the same settings, are there things
> that I should be taking into account here.
> 
> Regards, Craig
> ----
> java.lang.InternalError
> at sun.misc.URLClassPath$JarLoader.*getResource*(Unknown Source)
> at sun.misc.URLClassPath.getResource(Unknown Source)
> at java.net.URLClassLoader$1.run(Unknown Source)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(Unknown Source)
> at sun.misc.Launcher$ExtClassLoader.findClass(Unknown Source)
> at java.lang.ClassLoader.loadClass(Unknown Source)
> at java.lang.ClassLoader.loadClass(Unknown Source)
> at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
> at java.lang.ClassLoader.loadClass(Unknown Source)
> at java.util.ResourceBundle$RBClassLoader.loadClass(Unknown Source)
> at java.util.ResourceBundle$Control.newBundle(Unknown Source)
> at java.util.ResourceBundle.loadBundle(Unknown Source)
> at java.util.ResourceBundle.findBundle(Unknown Source)
> at java.util.ResourceBundle.findBundle(Unknown Source)
> at java.util.ResourceBundle.getBundleImpl(Unknown Source)
> at java.util.ResourceBundle.getBundle(Unknown Source)
> at java.util.logging.Level.getLocalizedName(Unknown Source)
> at java.util.logging.SimpleFormatter.format(Unknown Source)
> at java.util.logging.StreamHandler.publish(Unknown Source)
> at java.util.logging.ConsoleHandler.publish(Unknown Source)
> at java.util.logging.Logger.log(Unknown Source)
> at java.util.logging.Logger.doLog(Unknown Source)
> at java.util.logging.Logger.log(Unknown Source)
> at java.util.logging.Logger.warning(Unknown Source)
> at org.neo4j.kernel.impl.nioneo.store.PersistenceWindowPool.*logWarn*
> (PersistenceWindowPool.java:605)
> at
> org.neo4j.kernel.impl.nioneo.store.PersistenceWindowPool.refreshBricks(PersistenceWindowPool.java:505)
> at
> org.neo4j.kernel.impl.nioneo.store.PersistenceWindowPool.acquire(PersistenceWindowPool.java:123)
> at
> org.neo4j.kernel.impl.nioneo.store.CommonAbstractStore.acquireWindow(CommonAbstractStore.java:490)
> at
> org.neo4j.kernel.impl.nioneo.store.AbstractDynamicStore.getLightRecords(AbstractDynamicStore.java:397)
> at
> org.neo4j.kernel.impl.nioneo.store.PropertyStore.getRecord(PropertyStore.java:343)
> at
> org.neo4j.kernel.impl.nioneo.xa.WriteTransaction.propertyGetValue(WriteTransaction.java:1147)
> at
> org.neo4j.kernel.impl.nioneo.xa.NioNeoDbPersistenceSource$NioNeoDbResourceConnection.loadPropertyValue(NioNeoDbPersistenceSource.java:407)
> at
> org.neo4j.kernel.impl.persistence.PersistenceManager.loadPropertyValue(PersistenceManager.java:79)
> at
> org.neo4j.kernel.impl.core.NodeManager.loadPropertyValue(NodeManager.java:572)
> at org.neo4j.kernel.impl.core.Primitive.getPropertyValue(Primitive.java:538)
> at org.neo4j.kernel.impl.core.Primitive.getProperty(Primitive.java:158)
> at org.neo4j.kernel.impl.core.NodeProxy.*getProperty*(NodeProxy.java:134)
> at
> org.neo4j.gis.spatial.osm.OSMGeometryEncoder.decodeEnvelope(OSMGeometryEncoder.java:115)
> at org.neo4j.gis.spatial.RTreeIndex.getEnvelope(RTreeIndex.java:243)
> at org.neo4j.gis.spatial.RTreeIndex.chooseSubTree(RTreeIndex.java:349)
> at org.neo4j.gis.spatial.RTreeIndex.add(RTreeIndex.java:76)
> at org.neo4j.gis.spatial.osm.OSMLayer.addWay(OSMLayer.java:102)
> at org.neo4j.gis.spatial.osm.OSMImporter.reIndex(OSMImporter.java:212)
> at org.neo4j.gis.spatial.osm.OSMImporter.reIndex(OSMImporter.java:185)
> at
> org.neo4j.gis.spatial.TestOSMImport.loadTestOsmData(TestOSMImport.java:99)
> at org.neo4j.gis.spatial.TestOSMImport.runImport(TestOSMImport.java:87)
> at
> org.neo4j.gis.spatial.TestOSMImport.testImport_Denmark(TestOSMImport.java:76)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> at java.lang.reflect.Method.invoke(Unknown Source)
> at junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
> at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
> at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
> at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
> at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
> at
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:49)
> at
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
> Caused by: java.util.zip.ZipException: *error in opening zip file*
> at java.util.zip.ZipFile.open(Native Method)
> at java.util.zip.ZipFile.<init>(Unknown Source)
> at java.util.jar.JarFile.<init>(Unknown Source)
> at java.util.jar.JarFile.<init>(Unknown Source)
> at sun.misc.URLClassPath$JarLoader.getJarFile(Unknown Source)
> at sun.misc.URLClassPath$JarLoader.access$600(Unknown Source)
> at sun.misc.URLClassPath$JarLoader$1.run(Unknown Source)
> at java.security.AccessController.doPrivileged(Native Method)
> at sun.misc.URLClassPath$JarLoader.ensureOpen(Unknown Source)
> ... 67 more
> _______________________________________________
> Neo4j mailing list
> User@lists.neo4j.org
> https://lists.neo4j.org/mailman/listinfo/user

_______________________________________________
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to