Laxmikant Upadhyay created CASSANDRA-14881:
----------------------------------------------

             Summary: Inconsistent behaviour of counter update during cassandra 
upgrade 2.1.16 -> 3.11.2
                 Key: CASSANDRA-14881
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14881
             Project: Cassandra
          Issue Type: Bug
          Components: Core
         Environment: {code:java}
// code placeholder
{code}
            Reporter: Laxmikant Upadhyay
         Attachments: CorrectCounterUpdateTrace.txt, 
IncorrectCounterUpdateTrace.txt

I have 3 node (A,B,C) 2.1.16 cassandra cluster which i am upgrading to 
cassandra 3.11.2.
My current cluster status is node a has been upgrade to 3.11.2, B is down, and 
C is on cassandra 2.1.16

when i run counter update using cqlsh it is behaving strange inconsistent way , 
sometimes the update actually applied and sometimes it does not apply at all.


See the below example of cqlsh logged in to node A:
===============Incorrect update : update not applied ========
{code:java}
user@cqlsh:ks> select * from "counterTable";

 key              | column1        | value
------------------+----------------+-------
 key1 | count |     0
 
user@cqlsh:ks> UPDATE "counterTable" SET value = value + 100 WHERE key = 'key1' 
AND column1 = 'count';

user@cqlsh:ks> select * from "counterTable";

 key              | column1        | value
------------------+----------------+-------
 key1 | count |     0{code}



 ===============Correct update : update applied successfully ========
{code:java}
user@cqlsh> USE ks ;
user@cqlsh:ks> select * from "counterTable";

 key              | column1        | value
------------------+----------------+-------
 key1 | count |  -100
 
user@cqlsh:ks> UPDATE "counterTable" SET value = value + 100 WHERE key = 'key1' 
AND column1 = 'count';

user@cqlsh:ks> select * from "counterTable";

 key              | column1        | value
------------------+----------------+-------
 key1 | count |     0{code}



I have attached the output with trace enabled (with actual timestamp) for both 
correct and incorrect counter update . 

What is the reason of this weird behavior ?



*Note :* When all nodes are successfully upgraded OR when 2 nodes gets upgraded 
to 3.11.2 and 3rd non-upgraded node is down then we don't see such issue . 
couner update works as expected



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to