The data isn't sensitive at all, I'll send it to you in a minute...

>> Which version of Neo4j have you been using?
[INFO] \- org.neo4j:neo4j:jar:1.2:compile
[INFO]    +- org.neo4j:neo4j-kernel:jar:1.2-1.2:compile
[INFO]    |  \- 
org.apache.geronimo.specs:geronimo-jta_1.1_spec:jar:1.1.1:compile
[INFO]    +- org.neo4j:neo4j-index:jar:1.2-1.2:compile
[INFO]    |  \- 
org.apache.servicemix.bundles:org.apache.servicemix.bundles.lucene:jar:3.0.1_2:compile
[INFO]    +- org.neo4j:neo4j-lucene-index:jar:0.2-1.2:compile
[INFO]    +- org.neo4j:neo4j-shell:jar:1.2-1.2:compile
[INFO]    |  \- 
org.apache.servicemix.bundles:org.apache.servicemix.bundles.jline:jar:0.9.94_1:compile
[INFO]    +- org.neo4j:neo4j-remote-graphdb:jar:0.8-1.2:compile
[INFO]    |  \- com.google.protobuf:protobuf-java:jar:2.3.0:compile
[INFO]    +- org.neo4j:neo4j-graph-algo:jar:0.7-1.2:compile
[INFO]    +- org.neo4j:neo4j-online-backup:jar:0.7-1.2:compile
[INFO]    +- org.neo4j:neo4j-udc:jar:0.1-1.2:compile
[INFO]    +- org.neo4j:neo4j-management:jar:1.2-1.2:compile
[INFO]    |  \- com.sun:tools:jar:1.6:system
[INFO]    \- org.neo4j:neo4j-ha:jar:0.5-1.2:compile
[INFO]       +- org.apache.zookeeper:zookeeper:jar:3.3.2:compile
[INFO]       +- org.jboss.netty:netty:jar:3.2.1.Final:compile
[INFO]       \- log4j:log4j:jar:1.2.16:compile

>> * What operating system are you running on?
I'm using vmware workstation, the neo-stuff is coded inside an image..
host: ubuntu 9.10
vmware workstation 7.10
guest ubuntu 9.10

>> * What file system were you storing the Neo4j store on?
ext4 on both guest & host

>> * How was that file system configured?
standard ubuntu config

>> * Which JVM and version were you using?
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) Server VM (build 17.1-b03, mixed mode)


Lars Hvile
________________________________________
Fra: [email protected] [[email protected]] på vegne 
av Tobias Ivarsson [[email protected]]
Sendt: 1. februar 2011 23:17
Til: Neo4j user discussions
Emne: Re: [Neo4j] InvalidRecordException during traversal after unclean shutdown

I don't like the sound of this. The thread you dug up is the only other case
(I know of) where there has been anything similar, so I would love to have a
look at any data you have.
If you could zip up the store files and send them to us in some way we will
investigate. It would of course had been better if we could have received
the store in the state it was before recovery was started, but how would you
know this was going to happen. We will have to make do with the closest
thing we've got.

Uploading a zip to dropbox (or similar) and sending the link to me off-list
usually works well. I promise you we will treat your data according to the
levels of confidentiality you request, if you feel your data is too
sensitive for dropbox transfer, contact me and I'll see what alternative
mode of encrypted transfer we can set up.

By the way, could you please provide some details on your database:
* Which version of Neo4j have you been using?
* What operating system are you running on?
* What file system were you storing the Neo4j store on?
* How was that file system configured?
* Which JVM and version were you using?

Cheers,
Tobias

On Tue, Feb 1, 2011 at 10:26 PM, Lars Hvile <[email protected]> wrote:

> Correct, not using the batch-inserter, just a regular loop with
> transactions & inserts + adding data to a lucene-index.
> Each transaction contained ~500 nodes, and the total count was about ~3M
> when it got corrupted..
>
> I did unclean shutdowns a bunch of times without any corruption, so this
> isn't exactly reproducible either.
>
> Is there any way to manually clean up these kinds of errors? Like reverting
> the last transaction or something like that?
>
> Regards,
> Lars Hvile
> ________________________________________
> Fra: [email protected] [[email protected]] p&#229;
> vegne av Tobias Ivarsson [[email protected]]
> Sendt: 1. februar 2011 22:04
> Til: Neo4j user discussions
> Emne: Re: [Neo4j] InvalidRecordException during traversal after unclean
> shutdown
>
> And this was not using the batchinsert either? Because batchinsert will
> most
> likely leave the data corrupt if not shut down cleanly.
>
> Just want to make sure, by covering the simplest things first.
>
> -tobias
>
> On Tue, Feb 1, 2011 at 7:12 PM, Lars Hvile <[email protected]> wrote:
>
> > This exact error has already been discussed on the mailinglist back in
> 2009
> > (http://lists.neo4j.org/pipermail/user/2009-November/001906.html), but
> > without a conclusion?
> >
> > During some inserts, I did an unclean shutdown. When I restarted neo, the
> > standard recovery stuff was logged,
> > and it said that recovery was successful, but my data is corrupt, and I
> > can't find a way to restore it.
> > (this is just test-data, so the actual data is a non-issue, however the
> > recovery process is a huge issue for us...)
> >
> > Our basic test-structure is a tree, root (not the reference-node) ->
> > groupA/B/C -> nodeA/B/C etc, after the unclean shutdown, somehow
> > the root-node has gotten a reference to a relationship on one of the
> > leaf-nodes, i.e. nodeA..
> >
> > -- directly after "successful" recovery
> > org.neo4j.kernel.impl.nioneo.store.InvalidRecordException: Node[1] is
> > neither firstNode[2055881] nor secondNode[2055876] for
> Relationship[2055394]
> >        at
> >
> org.neo4j.kernel.impl.nioneo.xa.ReadTransaction.getMoreRelationships(ReadTransaction.java:133)
> >        at
> >
> org.neo4j.kernel.impl.nioneo.xa.NioNeoDbPersistenceSource$ReadOnlyResourceConnection.getMoreRelationships(NioNeoDbPersistenceSource.java:281)
> >        at
> >
> org.neo4j.kernel.impl.persistence.PersistenceManager.getMoreRelationships(PersistenceManager.java:101)
> >        at
> >
> org.neo4j.kernel.impl.core.NodeManager.getMoreRelationships(NodeManager.java:586)
> >        at
> >
> org.neo4j.kernel.impl.core.NodeImpl.getMoreRelationships(NodeImpl.java:359)
> >        at
> >
> org.neo4j.kernel.impl.core.IntArrayIterator.hasNext(IntArrayIterator.java:116)
> >        at
> >
> org.neo4j.helpers.collection.NestingIterator.fetchNextOrNull(NestingIterator.java:67)
> >        at
> >
> org.neo4j.helpers.collection.PrefetchingIterator.hasNext(PrefetchingIterator.java:56)
> >        at
> >
> org.neo4j.kernel.impl.traversal.TraversalBranchImpl.next(TraversalBranchImpl.java:94)
> >        at
> >
> org.neo4j.kernel.PreorderBreadthFirstSelector.next(PreorderBreadthFirstSelector.java:49)
> >        at
> >
> org.neo4j.kernel.impl.traversal.TraverserImpl$TraverserIterator.fetchNextOrNull(TraverserImpl.java:128)
> >        at
> >
> org.neo4j.kernel.impl.traversal.TraverserImpl$TraverserIterator.fetchNextOrNull(TraverserImpl.java:95)
> >        at
> >
> org.neo4j.helpers.collection.PrefetchingIterator.hasNext(PrefetchingIterator.java:56)
> >        at
> >
> org.neo4j.kernel.impl.traversal.OldTraverserWrapper$TraverserImpl.hasNext(OldTraverserWrapper.java:77)
> >        at
> >
> testing.persistence.neo4j.Neo4jEntityStore.traverse(Neo4jEntityStore.java:154)
> >        at testing.Launcher$3.execute(Launcher.java:74)
> >        at
> >
> testing.persistence.neo4j.Neo4jEntityRepo.access(Neo4jEntityRepo.java:116)
> >        at testing.Launcher.doStuff(Launcher.java:72)
> >        at testing.Launcher.main(Launcher.java:32)
> >
> > -- after manual deletion of Relationship[2055394], in a desperate
> > recovery-attempt =)
> > org.neo4j.kernel.impl.nioneo.store.InvalidRecordException: Node[1] is
> > neither firstNode[0] nor secondNode[0] for Relationship[2055394]
> >        at
> >
> org.neo4j.kernel.impl.nioneo.xa.ReadTransaction.getMoreRelationships(ReadTransaction.java:133)
> >        at
> >
> org.neo4j.kernel.impl.nioneo.xa.NioNeoDbPersistenceSource$ReadOnlyResourceConnection.getMoreRelationships(NioNeoDbPersistenceSource.java:281)
> >        at
> >
> org.neo4j.kernel.impl.persistence.PersistenceManager.getMoreRelationships(PersistenceManager.java:101)
> >        at
> >
> org.neo4j.kernel.impl.core.NodeManager.getMoreRelationships(NodeManager.java:586)
> >        at
> >
> org.neo4j.kernel.impl.core.NodeImpl.getMoreRelationships(NodeImpl.java:359)
> >        at
> >
> org.neo4j.kernel.impl.core.IntArrayIterator.hasNext(IntArrayIterator.java:116)
> >        at
> >
> testing.persistence.neo4j.Neo4jEntityStore.traverse(Neo4jEntityStore.java:150)
> >        at testing.Launcher$3.execute(Launcher.java:74)
> >        at
> >
> testing.persistence.neo4j.Neo4jEntityRepo.access(Neo4jEntityRepo.java:116)
> >        at testing.Launcher.doStuff(Launcher.java:72)
> >        at testing.Launcher.main(Launcher.java:32)
> >
> > Unfortunately I don't have a copy of the database at it's original
> corrupt
> > state, I do however have a copy of it after I deleted the the
> relationship..
> > 788MiB zipped
> >
> >
> > Regards,
> > Lars Hvile
> > _______________________________________________
> > Neo4j mailing list
> > [email protected]
> > https://lists.neo4j.org/mailman/listinfo/user
> >
>
>
>
> --
> Tobias Ivarsson <[email protected]>
> Hacker, Neo Technology
> www.neotechnology.com
> Cellphone: +46 706 534857
> _______________________________________________
> Neo4j mailing list
> [email protected]
> https://lists.neo4j.org/mailman/listinfo/user
> _______________________________________________
> Neo4j mailing list
> [email protected]
> https://lists.neo4j.org/mailman/listinfo/user
>



--
Tobias Ivarsson <[email protected]>
Hacker, Neo Technology
www.neotechnology.com
Cellphone: +46 706 534857
_______________________________________________
Neo4j mailing list
[email protected]
https://lists.neo4j.org/mailman/listinfo/user
_______________________________________________
Neo4j mailing list
[email protected]
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to