You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Simon Willnauer (JIRA)" <ji...@apache.org> on 2018/04/19 13:26:00 UTC

[jira] [Created] (LUCENE-8260) Extract ReaderPool from IndexWriter

Simon Willnauer created LUCENE-8260:
---------------------------------------

             Summary:  Extract ReaderPool from IndexWriter
                 Key: LUCENE-8260
                 URL: https://issues.apache.org/jira/browse/LUCENE-8260
             Project: Lucene - Core
          Issue Type: Improvement
    Affects Versions: 7.4, master (8.0)
            Reporter: Simon Willnauer
             Fix For: 7.4, master (8.0)
         Attachments: LUCENE-8260.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: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org