[ https://issues.apache.org/jira/browse/LUCENE-2956?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Simon Willnauer updated LUCENE-2956: ------------------------------------ Attachment: LUCENE-2956.patch Attaching an initial patch. This patch uses a entirely non-blocking approach to deletes based on a specialized linked list that only uses CAS operations. Since this issue is quiet complex I tried to add as many useful comments as possible inline in the patch to make reviewing easier. So for details check out the patch. All test on realtime branch pass with this patch. (once in a while I have a failure in the healthiness test but the assumptions in that test seem to be too strict and I need to fix that separately) Reviews are very very much appreciated! > 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: Simon Willnauer > Priority: Minor > Fix For: Realtime Branch > > Attachments: LUCENE-2956.patch > > > 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