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

Tyler Hobbs commented on CASSANDRA-7390:
----------------------------------------

The v3 patch still has a bit of a race condition:

{code}
   if (updateJobs.get() < 2)
   {
       updateJobs.incrementAndGet();
       executor.submit(new PendingRangeTask());
   }
{code}

The increment and check need to happen atomically instead of in two separate 
calls.  For example, you could do:

{code}
   if (updateJobs.incrementAndGet() <= 2)
       executor.submit(new PendingRangeTask());
   else
       updateJobs.decrementAndGet();
{code}

Either that, or you could always increment and submit a task regardless of the 
current count and use the rejected execution handler to decrement the count.

> MoveTest fails intermittently
> -----------------------------
>
>                 Key: CASSANDRA-7390
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7390
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Joshua McKenzie
>            Assignee: Joshua McKenzie
>            Priority: Minor
>             Fix For: 3.0
>
>         Attachments: 7390_conservative_v1.txt, 7390_conservative_v2.txt, 
> 7390_lockpendingcalc.txt, 7390_v3_full.txt
>
>
> Reproduce with:
> for i in `seq 1 50`; do runTest MoveTest >> moveTestFailures.txt;done
> Looks to fail roughly once out of every 5 runs or so
> {code:title=failure}
> [junit] Testcase: 
> newTestWriteEndpointsDuringMove(org.apache.cassandra.service.MoveTest):   
> FAILED
> [junit] mismatched number of moved token expected:<0> but was:<1>
> [junit] junit.framework.AssertionFailedError: mismatched number of moved 
> token expected:<0> but was:<1>
> [junit]     at 
> org.apache.cassandra.service.MoveTest.newTestWriteEndpointsDuringMove(MoveTest.java:140)
> {code}
> Edit: had this as Windows-only - turns out it's failing on on *nix as well



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to