cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Ellis (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (CASSANDRA-5945) CAS transactions permitting multiple updates
Date Wed, 20 Nov 2013 00:59:21 GMT

     [ https://issues.apache.org/jira/browse/CASSANDRA-5945?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Jonathan Ellis resolved CASSANDRA-5945.
---------------------------------------

    Resolution: Fixed

fixed in 2.0.1

> CAS transactions permitting multiple updates
> --------------------------------------------
>
>                 Key: CASSANDRA-5945
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5945
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>         Environment: 3 node Cassandra 2.0.0-rc2 cluster
> Java driver 1.0.2
> Replication factor 3
> Quorum consistency
>            Reporter: Phil Persad
>         Attachments: TokenConsumptionTest.java
>
>
> This bug is spawned off CASSANDRA-5925 to track an underlying issue not related to TTLs.
 To reproduce:
> Step 1:
> CREATE TABLE IF NOT EXISTS tkns (tkn blob, consumed boolean, PRIMARY KEY (tkn));
> Step 2:
> INSERT INTO tkns (tkn, consumed) VALUES (?,FALSE);
> Step 3:
> UPDATE tkns SET consumed = TRUE WHERE tkn = ? IF consumed = FALSE;
> Step 4:
> UPDATE tkns SET consumed = TRUE WHERE tkn = ? IF consumed = FALSE;
> Repeat steps 2-4 about 100,000 times.
> Expectation:
> For the '[applied]' column in the result sets for steps 3 and 4, exactly one should be
true and one should be false.
> Bug:
> In a small number of cases (varying from 0.002% to 1%) both updates will report success.
 See attached unit test.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Mime
View raw message