I’m using an IndexSearcher created from an IndexWriter (NRT mode).
Up until now the IW was kept open forever.
I want to properly handle cases where an indexing task failed and call IW.rollback to discard the incomplete changes.
The problem I’m facing is that rollback also closes the writer.
Q1: Can I somehow keep using the same IndexSearcher instance after the writer is closed?
Q2: Can I rollback the changes without closing the writer?
Creating a new IndexSearcher is possible but can be a bit fragile as it is used by many threads concurrently.
Up until now the IW was kept open forever.
I want to properly handle cases where an indexing task failed and call IW.rollback to discard the incomplete changes.
The problem I’m facing is that rollback also closes the writer.
Q1: Can I somehow keep using the same IndexSearcher instance after the writer is closed?
Q2: Can I rollback the changes without closing the writer?
Creating a new IndexSearcher is possible but can be a bit fragile as it is used by many threads concurrently.