You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Caleb Rackliffe (Jira)" <ji...@apache.org> on 2025/02/17 22:28:00 UTC

[jira] [Commented] (CASSANDRA-20338) Another single-node possibly static column-related SAI missing row issue (will update title when root cause is clear)

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

Caleb Rackliffe commented on CASSANDRA-20338:
---------------------------------------------

I have not been able to reproduce this on the history above in a plain, single-node {{CQLTester}} test.

{noformat}
@Test
public void test20338()
{
    createTable("CREATE TABLE %s (pk0 double,  pk1 text, ck0 ascii, s0 time static, s1 boolean static, v0 varint,  v1 bigint,  v2 'org.apache.cassandra.db.marshal.LexicalUUIDType', v3 double, v4 ascii, PRIMARY KEY ((pk0, pk1), ck0))" +
                " WITH CLUSTERING ORDER BY (ck0 ASC)" +
                " AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}\n" +
                " AND compression = {'chunk_length_in_kb': '16', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}");

    createIndex("CREATE INDEX tbl_pk0 ON %s(pk0) USING 'sai'");
    createIndex("CREATE INDEX tbl_pk1 ON %s(pk1) USING 'sai'");
    createIndex("CREATE INDEX tbl_ck0 ON %s(ck0) USING 'sai'");
    createIndex("CREATE INDEX tbl_s0 ON %s(s0) USING 'sai'");
    createIndex("CREATE INDEX tbl_s1 ON %s(s1) USING 'sai'");
    createIndex("CREATE INDEX tbl_v0 ON %s(v0) USING 'sai'");
    createIndex("CREATE INDEX tbl_v1 ON %s(v1) USING 'sai'");
    createIndex("CREATE INDEX tbl_v3 ON %s(v3) USING 'sai'");
    createIndex("CREATE INDEX tbl_v4 ON %s(v4) USING 'sai'");

    execute("INSERT INTO %s (pk0, pk1, ck0, s0, s1, v0, v1, v2, v3, v4) VALUES (1.0844396412062203E195, '蚨㡦Ɱ擳麗㾢鉦鵅', 'Q', '14:59:24.557825178', false, 21 * -126, -3909575580531410414, 0x0000000000001d008e00000000000000, 1.3611534850564156E135 - -1.3619298083760226E-178, '0c\u0011?\u007Fm[' + 'on]50h') USING TIMESTAMP 4");
    execute("DELETE FROM %s USING TIMESTAMP 5 WHERE  pk0 = 1.0844396412062203E195 AND  pk1 = '蚨㡦Ɱ擳麗㾢鉦鵅' AND  ck0 = '\u0006yhs!byx5]'");
    execute("DELETE FROM %s USING TIMESTAMP 6 WHERE  pk0 = 1.0844396412062203E195 AND  pk1 = '蚨㡦Ɱ擳麗㾢鉦鵅' AND  ck0 = 'g3(X' + '\u0014\u000F'");
    execute("INSERT INTO %s (pk0, pk1, ck0, s1) VALUES (1.0844396412062203E195, '蚨㡦Ɱ擳麗㾢鉦鵅', '\u0002`\u0006' + '_7Us\u0016H5\u0005', true) USING TIMESTAMP 8");

    flush();

    ResultSet results = executeNetWithPaging("SELECT pk1, ck0, s1 FROM %s WHERE s1 = true AND v2 = 0x0000000000001d008e00000000000000 AND pk0 = 1.0844396412062203E195 ALLOW FILTERING", 100);
    assertRowsNet(results, row("蚨㡦Ɱ擳麗㾢鉦鵅", "Q", true));

//        pk0                    | pk1        | ck0 | s0                   | s1   | v0    | v1                   | v2                                 | v3                     | v4
//        1.0844396412062203E195 | '蚨㡦Ɱ擳麗㾢鉦鵅' | 'Q' | '14:59:24.557825178' | true | -2646 | -3909575580531410414 | 0x0000000000001d008e00000000000000 | 1.3611534850564156E135 | '0ch?bm[on]50h'
}
{noformat}

> Another single-node possibly static column-related SAI missing row issue (will update title when root cause is clear)
> ---------------------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-20338
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-20338
>             Project: Apache Cassandra
>          Issue Type: Bug
>          Components: Feature/SAI
>            Reporter: Caleb Rackliffe
>            Assignee: Caleb Rackliffe
>            Priority: Normal
>             Fix For: 5.0.x, 5.x
>
>
> Running {{SingleNodeTableWalkTest}}...
> {noformat}
> accord.utils.Property$PropertyError: Property error detected:
> Seed = -4570870071359163365
> Examples = 2147483647
> Pure = true
> Error: Unexpected results for query: SELECT * FROM ks1.tbl WHERE s1 = true AND v2 = 0x0000000000001d008e00000000000000 AND pk0 = 1.0844396412062203E195 ALLOW FILTERING
> {noformat}
> {noformat}
> Steps: 400
> Values:
> 	State:
> 		Setup:
> 		CREATE KEYSPACE IF NOT EXISTS ks1 WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};
> 		CREATE TABLE ks1.tbl (
> 		    pk0 double,
> 		    pk1 text,
> 		    ck0 ascii,
> 		    s0 time static,
> 		    s1 boolean static,
> 		    v0 varint,
> 		    v1 bigint,
> 		    v2 'org.apache.cassandra.db.marshal.LexicalUUIDType',
> 		    v3 double,
> 		    v4 ascii,
> 		    PRIMARY KEY ((pk0, pk1), ck0)
> 		) WITH CLUSTERING ORDER BY (ck0 ASC);
> 		CREATE INDEX tbl_pk0 ON ks1.tbl(pk0) USING 'SAI';
> 		CREATE CUSTOM INDEX tbl_pk1 ON ks1.tbl(pk1) USING 'StorageAttachedIndex';
> 		CREATE CUSTOM INDEX tbl_ck0 ON ks1.tbl(ck0) USING 'StorageAttachedIndex';
> 		CREATE CUSTOM INDEX tbl_s0 ON ks1.tbl(s0) USING 'StorageAttachedIndex';
> 		CREATE CUSTOM INDEX tbl_s1 ON ks1.tbl(s1) USING 'StorageAttachedIndex';
> 		CREATE INDEX tbl_v0 ON ks1.tbl(v0) USING 'SAI';
> 		CREATE INDEX tbl_v1 ON ks1.tbl(v1) USING 'SAI';
> 		CREATE CUSTOM INDEX tbl_v3 ON ks1.tbl(v3) USING 'StorageAttachedIndex';
> 		CREATE INDEX tbl_v4 ON ks1.tbl(v4) USING 'SAI';: org.apache.cassandra.distributed.test.cql3.SingleNodeTableWalkTest.State
> 	
> History:
> 		6: DELETE FROM ks1.tbl USING TIMESTAMP 1 WHERE  pk0 = 1.0844396412062203E195 AND  pk1 = '蚨㡦Ɱ擳麗㾢鉦鵅' AND  ck0 = 'EkOjIqy\u000F4\u007F' -- on node1
> 		9: INSERT INTO ks1.tbl (pk0, pk1, ck0, v3, v4) VALUES (-5.332164051882835E-118, 'ﷻṮ', '\u000DT\u007F}P', 2.1518964658843966E-154, '#)') USING TIMESTAMP 2 -- on node1
> 		91: DELETE FROM ks1.tbl USING TIMESTAMP 3 WHERE  pk0 = -5.332164051882835E-118 AND  pk1 = 'ﷻṮ' AND  ck0 = 'Z' + 'Zl' -- on node1
> 		129: INSERT INTO ks1.tbl (pk0, pk1, ck0, s0, s1, v0, v1, v2, v3, v4) VALUES (1.0844396412062203E195, '蚨㡦Ɱ擳麗㾢鉦鵅', 'Q', '14:59:24.557825178', false, 21 * -126, -3909575580531410414, 0x0000000000001d008e00000000000000, 1.3611534850564156E135 - -1.3619298083760226E-178, '0c\u0011?\u007Fm[' + 'on]50h') USING TIMESTAMP 4 -- on node1
> 		137: DELETE FROM ks1.tbl USING TIMESTAMP 5 WHERE  pk0 = 1.0844396412062203E195 AND  pk1 = '蚨㡦Ɱ擳麗㾢鉦鵅' AND  ck0 = '\u0006yhs!byx5]' -- on node1
> 		146: DELETE FROM ks1.tbl USING TIMESTAMP 6 WHERE  pk0 = 1.0844396412062203E195 AND  pk1 = '蚨㡦Ɱ擳麗㾢鉦鵅' AND  ck0 = 'g3(X' + '\u0014\u000F' -- on node1
> 		152: INSERT INTO ks1.tbl (pk0, pk1, ck0, s0, s1, v0, v1, v3, v4) VALUES (-5.332164051882835E-118, 'ﷻṮ', '\u0010]/d]Qa!w' + 'f\u0013_\u000Bt', '14:48:17.526579773', true, -1590897135, -2573745997185251720 - 960275326299953638, 8.598387157543732E36 - 0.009913671650062445, '@{$\u0011\u007Fv9' + 'YMS') USING TIMESTAMP 7 -- on node1
> 		153: INSERT INTO ks1.tbl (pk0, pk1, ck0, s1) VALUES (1.0844396412062203E195, '蚨㡦Ɱ擳麗㾢鉦鵅', '\u0002`\u0006' + '_7Us\u0016H5\u0005', true) USING TIMESTAMP 8 -- on node1
> 		163: INSERT INTO ks1.tbl (pk0, pk1, ck0, s0, v3, v4) VALUES (-5.332164051882835E-118, 'ﷻṮ', '\u0002U)e' + 'k{\u0007', '19:22:01.238358528', 13461.787488896407 - -8.477600108610068E-237, 'b\u0010^6' + 'n') USING TIMESTAMP 9 -- on node1
> 		178: DELETE FROM ks1.tbl USING TIMESTAMP 10 WHERE  pk0 = -5.332164051882835E-118 AND  pk1 = 'ﷻṮ' AND  ck0 = '(J\u000A$\u001A\u007F\u000D\u001EI' + '\u0016%r}Vn\u001EmQ\u000B' -- on node1
> 		197: DELETE s0 FROM ks1.tbl USING TIMESTAMP 11 WHERE  pk0 = -5.332164051882835E-118 AND  pk1 = 'ﷻṮ' -- on node1
> 		198: nodetool flush ks1 tbl
> 		247: UPDATE ks1.tbl USING TIMESTAMP 12 SET v0=0, v1=6538215846805966033 * -1292336222967630169, s0='16:30:52.410070437', s1=false WHERE  pk0 = -5.332164051882835E-118 AND  pk1 = 'ﷻṮ' AND  ck0 = 'HkA' + 'V\u0008ig\u0003A\u000Et' -- on node1
> 		268: SELECT * FROM ks1.tbl WHERE s1 = true AND v2 = 0x0000000000001d008e00000000000000 AND pk0 = 1.0844396412062203E195 ALLOW FILTERING -- s1 boolean (indexed with SAI), v2 'org.apache.cassandra.db.marshal.LexicalUUIDType', pk0 double (indexed with SAI), on node1, fetch size 100
> {noformat}
> {noformat}
> Caused by: java.lang.AssertionError: Unexpected results for query: SELECT * FROM ks1.tbl WHERE s1 = true AND v2 = 0x0000000000001d008e00000000000000 AND pk0 = 1.0844396412062203E195 ALLOW FILTERING
> Caused by: java.lang.AssertionError: No rows returned
> Expected:
> pk0                    | pk1        | ck0 | s0                   | s1   | v0    | v1                   | v2                                 | v3                     | v4                       
> 1.0844396412062203E195 | '蚨㡦Ɱ擳麗㾢鉦鵅' | 'Q' | '14:59:24.557825178' | true | -2646 | -3909575580531410414 | 0x0000000000001d008e00000000000000 | 1.3611534850564156E135 | '0c\u0011?\u007Fm[on]50h'
> {noformat}
> I've gone through almost 1000 other seeds trying to reproduce this in a couple hours of local testing w/ no luck, but we'll see if the history above repros in a {{CQLTester}} test...



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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