cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paulo Motta (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-9839) Move crc_check_chance out of compressions options
Date Wed, 02 Sep 2015 23:39:46 GMT

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

Paulo Motta commented on CASSANDRA-9839:
----------------------------------------

Attaching 3.0+ patch for review.

Relevant changes described below:
* Moved {{crc_check_chance}} out of compression options, turning it into a top-level table
option.
* Accepting {{crc_check_chance}} as a compression option on {{CREATE TABLE}} and {{ALTER TABLE}}
statements temporarily, for backwards compatibility.
** If that's the case, a warning is logged and sent to the client explaining the change.
* Performing schema migration of {{crc_check_chance}} property on upgrade from 2.2- clusters
to 3.0+
* Modification of {{crc_check_chance}} via JMX no longer changes {{CFMetadata}} directly on
{{ColumnFamilyStore}}.
  * Similar to the options {{min_compaction_treshold}} and {{max_compaction_treshold}}, the
JMX change will persist during the session, being reset to the value of {{CFMetadata}} on
next restart.
* Introduced interface {{ICheckSummedFiled}}, implemented by {{SegmentedFile}} and extended
by {{ICompressedFiled}}
** This interface allows {{CompressedRandomAccessReader}} to consume the current value of
{{ColumnFamilyStore.crcCheckChance}} by transparently accessing {{ICheckSummedFile.getCrcCheckChanceSupplier()}}.
*** A default supplier of {{ICheckSummedFile.getCrcCheckChanceSupplier()}} with a value of
1.0 is provided by {{SegmentedFile}} for use in offline tools.
*** In live clusters, during {{SStableReader}} initialization it calls {{ICheckSummedFile.setCrcCheckChanceSupplier(ColumnfamilyStore::getCrcCheckChance)}}
to expose the current value of {{crc_check_chance}} in a transparent way.
* Updated/fixed {{CrcCheckChanceTest}} unit tests
* Updated {{NEWS.txt}}
* Fixed dtests and added a new dtest for correctly verifying schema migration of {{crc_check_chance}}
option from 2.2-: [cassandra-dtest PR|https://github.com/riptano/cassandra-dtest/pull/528]

Tests (will be available shortly):
* [3.0 dtests|http://cassci.datastax.com/view/Dev/view/paulomotta/job/pauloricardomg-3.0-9839-dtest/]
* [3.0 testall|http://cassci.datastax.com/view/Dev/view/paulomotta/job/pauloricardomg-3.0-9839-testall/]
* [trunk dtests|http://cassci.datastax.com/view/Dev/view/paulomotta/job/pauloricardomg-trunk-9839-dtest/]
* [trunk testall|http://cassci.datastax.com/view/Dev/view/paulomotta/job/pauloricardomg-trunk-9839-testall/]

> Move crc_check_chance out of compressions options
> -------------------------------------------------
>
>                 Key: CASSANDRA-9839
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9839
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Aleksey Yeschenko
>            Assignee: Paulo Motta
>            Priority: Minor
>              Labels: client-impacting, docs-impacting
>             Fix For: 3.0.0 rc1
>
>
> Follow up to CASSANDRA-8384. The option doesn't belong to compression params - it doesn't
affect compression, itself, and isn't passed to compressors upon initialization.
> While it's true that it is (currently) only being honored when reading compressed sstables,
it still doesn't belong to compression params (and is causing CASSANDRA-7978 -like issues).
> [~tjake] suggested we should make it an option of its own, and I think we should.



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

Mime
View raw message