lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (LUCENE-8384) SoftDeleteCount assertion in SoftPendingDeletes violated
Date Thu, 05 Jul 2018 02:24:00 GMT

    [ https://issues.apache.org/jira/browse/LUCENE-8384?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16533188#comment-16533188
] 

ASF subversion and git services commented on LUCENE-8384:
---------------------------------------------------------

Commit 81d41737a4cb074d0140da59114e7ba8d7638587 in lucene-solr's branch refs/heads/branch_7x
from [~dnhatn]
[ https://git-wip-us.apache.org/repos/asf?p=lucene-solr.git;h=81d4173 ]

LUCENE-8384: Fix missing advance DVGen in PendingSoftDeletes

Today we only advance the docValues update generation in
PendingSoftDeletes for the soft-deletes field. If we update a
soft-deletes DV field, then update a non-soft-deletes DV field, then
onNewReader will consider that we never update DV field although we did.

This commit makes sure that we always advance the docValues update
generation when handling docValues update in PendingSoftDeletes.

Co-authored-by: Simon Willnauer <simonw@apache.org>


> 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: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message