[ https://issues.apache.org/jira/browse/LUCENE-10658?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17572282#comment-17572282 ]
Adrien Grand commented on LUCENE-10658: --------------------------------------- {{Thread#interrupt}} has the side effect on invalidating every {{NIOFSIndexInput}} that is blocked on I/O, the javadocs on {{NIOFSDirectory}} give some more details, so we generally discourage from using {{Thread#interrupt}}. I guess it would not be ok to interrupt because there might be open IndexReaders that reference some of the segments that are being merged and that users plan on keeping using after the call to rollback? > Merges should periodically check for abort > ------------------------------------------ > > Key: LUCENE-10658 > URL: https://issues.apache.org/jira/browse/LUCENE-10658 > Project: Lucene - Core > Issue Type: Bug > Components: core/index > Affects Versions: 9.3 > Reporter: Nhat Nguyen > Priority: Major > > Rolling back an IndexWriter without committing shouldn't take long (i.e., > less than several seconds), and Elasticsearch cluster coordination [relies > on|https://github.com/elastic/elasticsearch/issues/88055] this assumption. If > some merges are taking place, the rollback can take several minutes as merges > only check for abort when writing to files via > [MergeRateLimiter|https://github.com/apache/lucene/blob/3d7d85f245381f84c46c766119695a8645cde2b8/lucene/core/src/java/org/apache/lucene/index/MergeRateLimiter.java#L117-L119]. > Merging a completion field, for example, can take a long time without > touching output files. Another reason merges should periodically check for > abort is its outputs will be discarded. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org