[
https://issues.apache.org/jira/browse/LUCENE-8384?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16532843#comment-16532843
]
Simon Willnauer edited comment on LUCENE-8384 at 7/4/18 2:52 PM:
-----------------------------------------------------------------
here is a different patch. There are some issues with how we handle the DV
update. We also need to record the generation if the field isn't a soft deletes
field. But I am starting to wonder why we advance this generation every time a
new update is handled in ReadersAndUpdates#handleDVUpdates I wonder if we can
try to optimize this, it would be interesting to see if we can merge them in
memory first. But maybe I am missing something
was (Author: simonw):
here is a different patch. There are some issues with how we handle the DV
update. We also need to record the generation if the field isn't a soft deletes
field. But I am starting to wonder why we advance this generation every time a
new update is handeled in ReadersAndUpdates#handleDVUpdates
> SoftDeleteCount assertion in SoftPendingDeletes violated
> --------------------------------------------------------
>
> Key: LUCENE-8384
> URL: https://issues.apache.org/jira/browse/LUCENE-8384
> Project: Lucene - Core
> Issue Type: Bug
> Affects Versions: 7.4
> Reporter: Nhat Nguyen
> Assignee: Simon Willnauer
> Priority: Major
> Fix For: master (8.0), 7.4.1, 7.5.
>
> Attachments: LUCENE-8384.patch, LUCENE-8384.patch
>
>
> A spinoff from LUCENE-8381. If a soft-deletes docvalues was applied to
> PendingSoftDeletes already, newDelCount should be less than the softDelCount
> recorded in SegmentInfo. The attached test trips an assertion in
> PendingSoftDeletes. I think we need to relax that assertion.
>
> {noformat}
> java.lang.AssertionError: softDeleteCount doesn't match 1 != 0
> at
> __randomizedtesting.SeedInfo.seed([BAC2AFC59AFF8806:167825A6261D33F0]:0)
> at
> org.apache.lucene.index.PendingSoftDeletes.onNewReader(PendingSoftDeletes.java:87)
> at
> org.apache.lucene.index.ReadersAndUpdates.createNewReaderWithLatestLiveDocs(ReadersAndUpdates.java:651)
> at
> org.apache.lucene.index.ReadersAndUpdates.swapNewReaderWithLatestLiveDocs(ReadersAndUpdates.java:663)
> at
> org.apache.lucene.index.ReadersAndUpdates.writeFieldUpdates(ReadersAndUpdates.java:619)
> at
> org.apache.lucene.index.ReaderPool.writeAllDocValuesUpdates(ReaderPool.java:228)
> at
> org.apache.lucene.index.IndexWriter.writeReaderPool(IndexWriter.java:3313)
> at org.apache.lucene.index.IndexWriter.getReader(IndexWriter.java:517)
> at
> org.apache.lucene.index.StandardDirectoryReader.doOpenFromWriter(StandardDirectoryReader.java:288)
> at
> org.apache.lucene.index.StandardDirectoryReader.doOpenIfChanged(StandardDirectoryReader.java:263)
> at
> org.apache.lucene.index.StandardDirectoryReader.doOpenIfChanged(StandardDirectoryReader.java:253)
> at
> org.apache.lucene.index.DirectoryReader.openIfChanged(DirectoryReader.java:140)
> at
> org.apache.lucene.search.SearcherManager.refreshIfNeeded(SearcherManager.java:156)
> at
> org.apache.lucene.search.SearcherManager.refreshIfNeeded(SearcherManager.java:58)
> at
> org.apache.lucene.search.ReferenceManager.doMaybeRefresh(ReferenceManager.java:176)
> at
> org.apache.lucene.search.ReferenceManager.maybeRefreshBlocking(ReferenceManager.java:253)
> at
> org.apache.lucene.index.TestSoftDeletesRetentionMergePolicy.testSoftDeleteWithTryUpdateDocValue(TestSoftDeletesRetentionMergePolicy.java:586)
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]