Simon Willnauer created LUCENE-8259:
---------------------------------------
Summary: Extract ReaderPool from IndexWriter
Key: LUCENE-8259
URL: https://issues.apache.org/jira/browse/LUCENE-8259
Project: Lucene - Core
Issue Type: Improvement
Affects Versions: 7.4, master (8.0)
Reporter: Simon Willnauer
Fix For: 7.4, master (8.0)
Attachments: extract_reader_pool.diff
ReaderPool plays a central role in the IndexWriter pooling NRT readers and
making sure we write buffered deletes and updates to disk. This class used to
be a non-static inner class accessing many aspects including locks from the
IndexWriter itself. This change moves the class outside of IW and defines it's
responsiblity in a clear way with respect to locks etc. Now IndexWriter doesn't
need to share ReaderPool anymore and reacts on writes done inside the pool by
checkpointing internally. This also removes acquiring the IW lock inside the
reader pool which makes reasoning about concurrency difficult.
This change also add javadocs and dedicated tests for the ReaderPool class.
/cc [~mikemccand] [~dawidweiss]
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]