houserjohn commented on issue #14431:
URL: https://github.com/apache/lucene/issues/14431#issuecomment-2803254782

   After looking into the suggestions you mentioned, I still believe there is a 
valid need for a timeout for `forceMergeDeletes`. In the first suggestion, you 
recommended using two different forceMergeDeletes calls with different 
targets/blocking behavior. While I think this is a good suggestion, there still 
is this problem that either the index is too large and the blocking call takes 
too long for user needs, or not enough deletes are addressed before bringing 
the index online (as msokolov described). In the second suggestion, it is true 
that it would be better to do several small merges rather than a large merge. 
To my understanding, `forceMergeDeletes` does not do several, small merges. 
However, natural background merges are nonblocking and do not help us address 
the deletes in the index before it goes online.
   
   Additionally, maybe this might answer a question you have, because it did 
for me. If we decide to implement a timeout in `forceMergeDeletes`, we do not 
need to be concerned about interrupting the process and corrupting the index 
because our merges are done atomically. Theoretically, we should be able to 
stop `forceMergeDeletes` at any point and our index would not be corrupted. 
Even if we lose all progress on `forceMergeDeletes` after the timeout occurs, 
we will still give users tighter control over the `forceMergeDeletes` process.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to