You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Andrey Konstantinov (JIRA)" <ji...@apache.org> on 2015/07/14 03:24:04 UTC

[jira] [Created] (CASSANDRA-9794) Linearizable consistency for lightweight transactions is not achieved

Andrey Konstantinov created CASSANDRA-9794:
----------------------------------------------

             Summary: Linearizable consistency for lightweight transactions is not achieved
                 Key: CASSANDRA-9794
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9794
             Project: Cassandra
          Issue Type: Bug
          Components: Core
         Environment: Client: windows, datastax C# driver, application attached
Server: single node, datastax community edition 2.1.7, ubuntu (but same happens with datastax community windows)
            Reporter: Andrey Konstantinov
         Attachments: Cassandra.LocksTest.7z

I run into an issue with unexpected behavior of lightweight transactions. I am not sure whether it is a Cassandra bug, C# driver bug or I am doing something wrong. Please, help me to find the right direction.

I am attaching windows application and sources reproducing the following issues. 
1) INSERT IF NOT EXISTS returns TRUE, when a record has not been applied (run a client in mode "local" or "persisted" and observe an exception)
2) INSERT IF NOT EXISTS returns FALSE, when a record has been applied (run a client in mode "local" or "persisted" and observe hanged application)
3) The same issues with conditional UPDATE (run a client in mode "embedded" and observe either an exception or hanged application)
4) SELECT with SERIAL consistency level does not return the latest record (run a client in mode "persisted" or "embedded" and observe an exception about mismatched counters)

The client sources have got comments pointing out to 4 problems, where, I think, an error happens. The application can be run with 3 different modes ("local", "persisted", "embedded") trying the same thing from different perspectives.

Note: I run into a problem with setting SERIAL consistency level for SELECT queries using C# datastax driver. So, I patched it temporary. Diff file as well as the compiled driver are placed within the application packages folder. It would be great, if you could point me out if I am doing something wrong with the driver API or if this issue should be reported to datastax.

Note: I am not sure if I followed all the rules submitting an issue, so, please, adjust necessary fields. I am happy to submit more information, please, let me know what I should check/do...

Thanks,
Andrew



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)