You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Joey Lynch (Jira)" <ji...@apache.org> on 2021/03/30 18:47:00 UTC

[jira] [Commented] (CASSANDRA-14822) Cassandra 4.0 doesn't output DESCRIBE TABLE representations that are valid

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

Joey Lynch commented on CASSANDRA-14822:
----------------------------------------

Testing 4.0-rc1 seems to indicate it is safe to describe tables and create based on the description
{noformat}
Connected to cass_perf_jl_40_kv at 100.67.123.105:7104
[cqlsh 6.0.0 | Cassandra 4.0-rc1.1 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cqlsh> DESCRIBE TABLE acceptance_josephl.acceptance_josephl_cass4

CREATE TABLE acceptance_josephl.acceptance_josephl_cass4 (
    id text,
    key blob,
    value blob,
    PRIMARY KEY (id, key)
) WITH CLUSTERING ORDER BY (key ASC)
    AND additional_write_policy = '99p'
    AND bloom_filter_fp_chance = 0.1
    AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
    AND cdc = false
    AND comment = '[unknown]: Testing Cassandara 4.0'
    AND compaction = {'class': 'org.apache.cassandra.db.compaction.LeveledCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4', 'sstable_size_in_mb': '256'}
    AND compression = {'chunk_length_in_kb': '16', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
    AND crc_check_chance = 1.0
    AND default_time_to_live = 0
    AND extensions = {}
    AND gc_grace_seconds = 864000
    AND max_index_interval = 2048
    AND memtable_flush_period_in_ms = 0
    AND min_index_interval = 128
    AND read_repair = 'BLOCKING'
    AND speculative_retry = '99p';

cqlsh> CREATE TABLE acceptance_josephl.acceptance_josephl_cass4_test2 (     id text,     key blob,     value blob,     PRIMARY KEY (id, key) ) WITH CLUSTERING ORDER BY (key ASC)     AND additional_write_policy = '99p'     AND bloom_filter_fp_chance = 0.1     AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}     AND cdc = false     AND comment = '[unknown]: Testing Cassandara 4.0'     AND compaction = {'class': 'org.apache.cassandra.db.compaction.LeveledCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4', 'sstable_size_in_mb': '256'}     AND compression = {'chunk_length_in_kb': '16', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}     AND crc_check_chance = 1.0     AND default_time_to_live = 0     AND extensions = {}     AND gc_grace_seconds = 864000     AND max_index_interval = 2048     AND memtable_flush_period_in_ms = 0     AND min_index_interval = 128     AND read_repair = 'BLOCKING'     AND speculative_retry = '99p';
cqlsh> DESCRIBE TABLE acceptance_josephl.acceptance_josephl_cass4_test2

CREATE TABLE acceptance_josephl.acceptance_josephl_cass4_test2 (
    id text,
    key blob,
    value blob,
    PRIMARY KEY (id, key)
) WITH CLUSTERING ORDER BY (key ASC)
    AND additional_write_policy = '99p'
    AND bloom_filter_fp_chance = 0.1
    AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
    AND cdc = false
    AND comment = '[unknown]: Testing Cassandara 4.0'
    AND compaction = {'class': 'org.apache.cassandra.db.compaction.LeveledCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4', 'sstable_size_in_mb': '256'}
    AND compression = {'chunk_length_in_kb': '16', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
    AND crc_check_chance = 1.0
    AND default_time_to_live = 0
    AND extensions = {}
    AND gc_grace_seconds = 864000
    AND max_index_interval = 2048
    AND memtable_flush_period_in_ms = 0
    AND min_index_interval = 128
    AND read_repair = 'BLOCKING'
    AND speculative_retry = '99p';
 {noformat}
I agree it's fine to deprecate parameters in 4.0, so I think let's close this and we can re-open if there is a big todo about dclocal_read_repair_chance being removed (I know that at least our automation was adding it automatically set to 0, so that'll break, but that seems fine with majors).

Closing for now, we can re-open if dclocal_read_repair_chance becomes a bigger problem.

> Cassandra 4.0 doesn't output DESCRIBE TABLE representations that are valid 
> ---------------------------------------------------------------------------
>
>                 Key: CASSANDRA-14822
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14822
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Legacy/Tools
>            Reporter: Joey Lynch
>            Assignee: Joey Lynch
>            Priority: Low
>              Labels: cqlsh
>
> Looks like right now on 4.0 the {{DESCRIBE}} output of a table is no longer valid since {{dclocal_read_repair_chance}} was removed:
> {noformat}
> cqlsh> CREATE KEYSPACE test WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};
> cqlsh> CREATE TABLE test.test (key text, value text, PRIMARY KEY(key));
> cqlsh> DESCRIBE TABLE test.test 
> CREATE TABLE test.test (
>     key text PRIMARY KEY,
>     value text
> ) WITH bloom_filter_fp_chance = 0.01
>     AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
>     AND comment = ''
>     AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
>     AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
>     AND crc_check_chance = 1.0
>     AND dclocal_read_repair_chance = 0.0
>     AND default_time_to_live = 0
>     AND gc_grace_seconds = 864000
>     AND max_index_interval = 2048
>     AND memtable_flush_period_in_ms = 0
>     AND min_index_interval = 128
>     AND read_repair_chance = 0.0
>     AND speculative_retry = '99p';
> {noformat}
> If you then try to copy and past that output it fails:
> {noformat}
> cqlsh> CREATE TABLE test.test2 (
>    ...     key text PRIMARY KEY,
>    ...     value text
>    ... ) WITH bloom_filter_fp_chance = 0.01
>    ...     AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
>    ...     AND comment = ''
>    ...     AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
>    ...     AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
>    ...     AND crc_check_chance = 1.0
>    ...     AND dclocal_read_repair_chance = 0.0
>    ...     AND default_time_to_live = 0
>    ...     AND gc_grace_seconds = 864000
>    ...     AND max_index_interval = 2048
>    ...     AND memtable_flush_period_in_ms = 0
>    ...     AND min_index_interval = 128
>    ...     AND read_repair_chance = 0.0
>    ...     AND speculative_retry = '99p';
> SyntaxException: Unknown property 'dclocal_read_repair_chance'
> {noformat}
> Currently we leave in {{dclocal_read_repair_chance}} and {{read_repair_chance}} for the drivers per the comments left during CASSANDRA-13910.
> I think we can just ignore those parameters in the validation/creation.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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