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

Artur Siekielski commented on CASSANDRA-12862:
----------------------------------------------

{quote}
But I see that sometimes "INSERT ... IF NOT EXISTS" returns applied=False even 
when the PK doesn't exist. I assume it's normal and I should retry the insert?
{quote}

Correction, I don't actually see this. IF the LWT query returns "applied" row, 
then it corresponds to the existence of the given PK. However, WriteTimeout can 
be raised even when only  a single thread does insert for the given PK.

> LWT leaves corrupted state
> --------------------------
>
>                 Key: CASSANDRA-12862
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12862
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>         Environment: Cassandra 2.1.16, 3-node cluster with RF=3, 
> NetworkTopology with 1 DC
>            Reporter: Artur Siekielski
>
> When executing "INSERT ... IF NOT EXISTS" (with consistency LOCAL_QUORUM) 
> while the concurrency level is high (about 50 simultaneous threads doing 
> inserts, for the same partition key but different clustering keys) sometimes 
> the INSERT returns applied=False, but the subsequent SELECTs return no data. 
> The corrupted state is permanent - neither the INSERT or SELECTs succeed, 
> making the PK "locked".
> I can easily reproduce this - for 100 simultaneous threads doing a single 
> insert I get 1-2 corruptions.



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

Reply via email to