cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Joshua McKenzie (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-7390) MoveTest fails intermittently
Date Thu, 12 Jun 2014 22:54:01 GMT

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

Joshua McKenzie commented on CASSANDRA-7390:
--------------------------------------------

PendingRangeCalculatorService.instance.blockUntilFinished() doesn't actually block until all
operations are complete as we can have a race between the pendingRangeTask and of whomever
was blocking on the prior function.  A simple 100ms sleep on the unit test resolves the problem,
however we have 3 places in StorageService that are relying on completion of blockUntilFinished()
that now seem like prime targets for this race.

I'm thinking a refcount between update() and PendingRangeTask() w/an atomic inside PendingRangeCalculatorService
to have blockUntilFinished() actually do what it claims to do should resolve this but I'm
not too keen on adding that in there unless absolutely necessary.

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

Mime
View raw message