I am trying to model a transaction-log for lucene, which creates a transaction-log per-commit
Things work fine during normal operations, but I cannot fathom the effect during a. IOException during Index-Commit Will the index be restored to previous commit-point? Can I blindly re-try operations from the current transaction log, after some time interval? b. IOException during Background-Flush Will all the RAM buffers including deletes for that DWPT be cleaned up? flush() being per-thread and async obviously has problems with my transaction-log-per-commit approach, right? Most of the time, the IOExceptions are temporary and recoverable [Ex: Solr's HDFSDirectory etc...]. So, I must definitely retry these operations after some time-interval. Any help is much needed and appreciated. -- Ravi