[ https://issues.apache.org/jira/browse/LUCENE-2956?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13004818#comment-13004818 ]
Michael Busch commented on LUCENE-2956: --------------------------------------- An idea from Mike how to fix this problem: {quote} To avoid the full-stop, I think during the flush we can have two global delete pools. We carefully sweep all DWPTs and flush each, in succession. Any DWPT not yet flushed is free to continue indexing as normal, putting deletes into the first global pool, flushing as normal. But, a DWPT that has been flushed by the "sweeper" must instead put deletes for an updateDocument carefully into the 2nd pool, and not buffer the delete into DWPTs not yet flushed. {quote} > Support updateDocument() with DWPTs > ----------------------------------- > > Key: LUCENE-2956 > URL: https://issues.apache.org/jira/browse/LUCENE-2956 > Project: Lucene - Java > Issue Type: Bug > Components: Index > Affects Versions: Realtime Branch > Reporter: Michael Busch > Assignee: Michael Busch > Priority: Minor > Fix For: Realtime Branch > > > With separate DocumentsWriterPerThreads (DWPT) it can currently happen that > the delete part of an updateDocument() is flushed and committed separately > from the corresponding new document. > We need to make sure that updateDocument() is always an atomic operation from > a IW.commit() and IW.getReader() perspective. See LUCENE-2324 for more > details. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org