[Neo4j] Why doInternalRecovery is necessary?

Balazs E. Pataki pataki at dsd.sztaki.hu
Wed Oct 26 15:41:21 CEST 2011


Hi,

after crashing my application the next time I start it up I get the usual

Oct 26, 2011 3:28:42 PM 
org.neo4j.kernel.impl.transaction.xaframework.XaLogicalLog 
doInternalRecovery
INFO: Non clean shutdown detected on log [/db/nioneo_logical.log.1]. 
Recovery started ...
INFO: Non clean shutdown detected on log [/db/index/lucene.log.1]. 
Recovery started ...

kind of messages.

I have a 8GB database and now this recovery has been running for quite 
some time, and I started to thinking why is this recovery is necessary 
at all? AS far as I'm aware the transactions are ACID, so they either 
commit, or rollback, in both case the state of the database must be OK. 
In this case I could see no reason why to do any recovery (from 
transactional point of view). If the DB crash happens while transactions 
are open, then there coudl be some problems. But in my case I could live 
with loosing such transactions and just not have recovery at all.

To sum up my question: is this doInternalRecovery process essential? And 
if not, is there a way to avoid it at startup?

Thanks,
---
balazs



More information about the User mailing list