in cassandra-cli, i did something like: update column family xyz with compaction_strategy='LeveledCompactionStrategy'
On Thu, Aug 30, 2012 at 5:20 AM, Jean-Armel Luce <jaluc...@gmail.com> wrote: > > Hello, > > I am using Cassandra 1.1.1 and CQL3. > I have a cluster with 1 node (test environment) > Could you tell how to set the compaction strategy to Leveled Strategy for > an existing table ? > > I have a table pns_credentials > > jal@jal-VirtualBox:~/cassandra/apache-cassandra-1.1.1/bin$ ./cqlsh -3 > Connected to Test Cluster at localhost:9160. > [cqlsh 2.2.0 | Cassandra 1.1.1 | CQL spec 3.0.0 | Thrift protocol 19.32.0] > Use HELP for help. > cqlsh> use test1; > cqlsh:test1> describe table pns_credentials; > > CREATE TABLE pns_credentials ( > ise text PRIMARY KEY, > isnew int, > ts timestamp, > mergestatus int, > infranetaccount text, > user_level int, > msisdn bigint, > mergeusertype int > ) WITH > comment='' AND > comparator=text AND > read_repair_chance=0.100000 AND > gc_grace_seconds=864000 AND > default_validation=text AND > min_compaction_threshold=4 AND > max_compaction_threshold=32 AND > replicate_on_write='true' AND > compaction_strategy_class='SizeTieredCompactionStrategy' AND > compression_parameters:sstable_compression='SnappyCompressor'; > > I want to set the LeveledCompaction strategy for this table, so I execute > the following ALTER TABLE : > > cqlsh:test1> alter table pns_credentials > ... WITH compaction_strategy_class='LeveledCompactionStrategy' > ... AND compaction_strategy_options:sstable_size_in_mb=10; > > In Cassandra logs, I see some informations : > INFO 10:23:52,532 Enqueuing flush of > Memtable-schema_columnfamilies@965212657(1391/1738 serialized/live bytes, > 20 ops) > INFO 10:23:52,533 Writing Memtable-schema_columnfamilies@965212657(1391/1738 > serialized/live bytes, 20 ops) > INFO 10:23:52,629 Completed flushing > /var/lib/cassandra/data/system/schema_columnfamilies/system-schema_columnfamilies-hd-94-Data.db > (1442 bytes) for commitlog position ReplayPosition(segmentId=3556583843054, > position=1987) > > > However, when I look at the description of the table, the table is still > with the SizeTieredCompactionStrategy > cqlsh:test1> describe table pns_credentials ; > > CREATE TABLE pns_credentials ( > ise text PRIMARY KEY, > isnew int, > ts timestamp, > mergestatus int, > infranetaccount text, > user_level int, > msisdn bigint, > mergeusertype int > ) WITH > comment='' AND > comparator=text AND > read_repair_chance=0.100000 AND > gc_grace_seconds=864000 AND > default_validation=text AND > min_compaction_threshold=4 AND > max_compaction_threshold=32 AND > replicate_on_write='true' AND > compaction_strategy_class='SizeTieredCompactionStrategy' AND > compression_parameters:sstable_compression='SnappyCompressor'; > > In the schema_columnfamilies table (in system keyspace), the table > pns_credentials is still using the SizeTieredCompactionStrategy > cqlsh:test1> use system; > cqlsh:system> select * from schema_columnfamilies ; > ... > test1 | pns_credentials | null | KEYS_ONLY > | [] | | > org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy > | {} > | > org.apache.cassandra.db.marshal.UTF8Type | > {"sstable_compression":"org.apache.cassandra.io.compress.SnappyCompressor"} > | org.apache.cassandra.db.marshal.UTF8Type | 864000 | > 1029 | ise | org.apache.cassandra.db.marshal.UTF8Type > | 0 | 32 > | 4 | 0.1 | True > | null | Standard | null > ... > > > I stopped/started the Cassandra node, but the table is still with > SizeTieredCompactionStrategy > > I tried using cassandra-cli, but the alter is still unsuccessfull. > > Is there anything I am missing ? > > > Thanks. > > Jean-Armel >