You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Phil Persad (JIRA)" <ji...@apache.org> on 2013/08/27 23:27:52 UTC
[jira] [Created] (CASSANDRA-5945) CAS transactions permitting
multiple updates
Phil Persad created CASSANDRA-5945:
--------------------------------------
Summary: 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 is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira