You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Steve Rowe (JIRA)" <ji...@apache.org> on 2018/06/25 16:20:00 UTC

[jira] [Comment Edited] (SOLR-11216) Race condition in peerSync

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

Steve Rowe edited comment on SOLR-11216 at 6/25/18 4:19 PM:
------------------------------------------------------------

Policeman Jenkins found a reproducing seed for a {{TestStressCloudBlindAtomicUpdates.test_dv_idx()}} failure that {{git bisect}} blames on commit {{412116f}} on this issue [https://jenkins.thetaphi.de/job/Lucene-Solr-7.x-Linux/2190/]:

{noformat}
Checking out Revision 82b793df56c8c9fb50c29f46f39465453a87f2b2 (refs/remotes/origin/branch_7x)
[...]
   [junit4]   2> NOTE: reproduce with: ant test  -Dtestcase=TestStressCloudBlindAtomicUpdates -Dtests.method=test_dv_idx -Dtests.seed=9E9025C836D166FA -Dtests.multiplier=3 -Dtests.slow=true -Dtests.locale=ga -Dtests.timezone=Europe/Monaco -Dtests.asserts=true -Dtests.file.encoding=UTF-8
   [junit4] FAILURE 11.4s J1 | TestStressCloudBlindAtomicUpdates.test_dv_idx <<<
   [junit4]    > Throwable #1: java.lang.AssertionError: Some docs had errors -- check logs expected:<0> but was:<7>
   [junit4]    > 	at __randomizedtesting.SeedInfo.seed([9E9025C836D166FA:BEC5000EA0DCB1B]:0)
   [junit4]    > 	at org.apache.solr.cloud.TestStressCloudBlindAtomicUpdates.checkField(TestStressCloudBlindAtomicUpdates.java:342)
   [junit4]    > 	at org.apache.solr.cloud.TestStressCloudBlindAtomicUpdates.test_dv_idx(TestStressCloudBlindAtomicUpdates.java:231)
   [junit4]    > 	at java.lang.Thread.run(Thread.java:748)
[...]
   [junit4]   2> NOTE: test params are: codec=Asserting(Lucene70), sim=RandomSimilarity(queryNorm=true): {}, locale=ga, timezone=Europe/Monaco
   [junit4]   2> NOTE: Linux 4.13.0-41-generic i386/Oracle Corporation 1.8.0_172 (32-bit)/cpus=8,threads=1,free=238679536,total=536870912
{noformat}


was (Author: steve_rowe):
Policeman Jenkins found a reproducing seed for a {{TestStressCloudBlindAtomicUpdates -Dtests.method.test_dv_idx()}} failure that {{git bisect}} blames on commit {{412116f}} on this issue [https://jenkins.thetaphi.de/job/Lucene-Solr-7.x-Linux/2190/]:

{noformat}
Checking out Revision 82b793df56c8c9fb50c29f46f39465453a87f2b2 (refs/remotes/origin/branch_7x)
[...]
   [junit4]   2> NOTE: reproduce with: ant test  -Dtestcase=TestStressCloudBlindAtomicUpdates -Dtests.method=test_dv_idx -Dtests.seed=9E9025C836D166FA -Dtests.multiplier=3 -Dtests.slow=true -Dtests.locale=ga -Dtests.timezone=Europe/Monaco -Dtests.asserts=true -Dtests.file.encoding=UTF-8
   [junit4] FAILURE 11.4s J1 | TestStressCloudBlindAtomicUpdates.test_dv_idx <<<
   [junit4]    > Throwable #1: java.lang.AssertionError: Some docs had errors -- check logs expected:<0> but was:<7>
   [junit4]    > 	at __randomizedtesting.SeedInfo.seed([9E9025C836D166FA:BEC5000EA0DCB1B]:0)
   [junit4]    > 	at org.apache.solr.cloud.TestStressCloudBlindAtomicUpdates.checkField(TestStressCloudBlindAtomicUpdates.java:342)
   [junit4]    > 	at org.apache.solr.cloud.TestStressCloudBlindAtomicUpdates.test_dv_idx(TestStressCloudBlindAtomicUpdates.java:231)
   [junit4]    > 	at java.lang.Thread.run(Thread.java:748)
[...]
   [junit4]   2> NOTE: test params are: codec=Asserting(Lucene70), sim=RandomSimilarity(queryNorm=true): {}, locale=ga, timezone=Europe/Monaco
   [junit4]   2> NOTE: Linux 4.13.0-41-generic i386/Oracle Corporation 1.8.0_172 (32-bit)/cpus=8,threads=1,free=238679536,total=536870912
{noformat}

> Race condition in peerSync
> --------------------------
>
>                 Key: SOLR-11216
>                 URL: https://issues.apache.org/jira/browse/SOLR-11216
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public) 
>    Affects Versions: 7.4
>            Reporter: Cao Manh Dat
>            Assignee: Cao Manh Dat
>            Priority: Major
>             Fix For: master (8.0), 7.5
>
>         Attachments: SOLR-11216.patch, SOLR-11216.patch, SOLR-11216.patch, SOLR-11216.patch, SOLR-11216.patch, SOLR-11216.patch, SOLR-11216.patch
>
>
> When digging into SOLR-10126. I found a case that can make peerSync fail.
> * leader and replica receive update from 1 to 4
> * replica stop
> * replica miss updates 5, 6
> * replica start recovery
> ## replica buffer updates 7, 8
> ## replica request versions from leader, 
> ## in the same time leader receive update 9, so it will return updates from 1 to 9 (for request versions) when replica get recent versions ( so it will be 1,2,3,4,5,6,7,8,9 )
> ## replica do peersync and request updates 5, 6, 9 from leader 
> ## replica apply updates 5, 6, 9. Its index does not have update 7, 8 and maxVersionSpecified for fingerprint is 9, therefore compare fingerprint will fail



--
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