Julien created CASSANDRA-14304:
----------------------------------
Summary: DELETE after INSERT IF NOT EXISTS does not work
Key: CASSANDRA-14304
URL: https://issues.apache.org/jira/browse/CASSANDRA-14304
Project: Cassandra
Issue Type: Bug
Components: Core
Reporter: Julien
Attachments: debug.log, system.log
DELETE a row immediately after INSERT IF NOT EXISTS does not work.
Can be reproduced with this CQL script:
{code:java}
CREATE KEYSPACE ks WITH REPLICATION = { 'class' : 'SimpleStrategy',
'replication_factor' : 1 };
CREATE TABLE ks.ta ( id text PRIMARY KEY, col text );
INSERT INTO ks.ta (id, col) VALUES ('myId', 'myCol') IF NOT EXISTS;
DELETE FROM ks.ta WHERE id = 'myId';
SELECT * FROM ks.ta WHERE id='myId';
{code}
{code:java}
[cqlsh 5.0.1 | Cassandra 3.11.2 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
WARNING: pyreadline dependency missing. Install to enable tab completion.
cqlsh> CREATE KEYSPACE ks WITH REPLICATION = { 'class' : 'SimpleStrategy',
'replication_factor' : 1 };
cqlsh> CREATE TABLE ks.ta ( id text PRIMARY KEY, col text );
cqlsh> INSERT INTO ks.ta (id, col) VALUES ('myId', 'myCol') IF NOT EXISTS;
[applied]
-----------
True
cqlsh> DELETE FROM ks.ta WHERE id = 'myId';
cqlsh> SELECT * FROM ks.ta WHERE id='myId';
id | col
------+-------
myId | myCol
{code}
* Only happens if the client is on a different host (works as expected on the
same host)
* Works as expected without IF NOT EXISTS
* A ~500 ms delay between INSERT and DELETE fixes the issue.
Logs attached.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]