2017-10-15 10 views
0

J'ai un cluster Cassandra (2 nœuds) et j'essaie de modifier le type de colonne value en Map.Cassandra - La modification des types n'est pas autorisée

Après l'exécution de ALTER TABLE "keyspace"."table" ALTER value TYPE Map; dans cqlsh j'ai eu une erreur que la modification n'est pas autorisée. (Le tableau est vide)

CREATE TABLE "keyspace"."table" (
    key text, 
    column1 bigint, 
    column2 bigint, 
    value text, 
    PRIMARY KEY (key, column1, column2) 
) WITH COMPACT STORAGE 
    AND CLUSTERING ORDER BY (column1 ASC, column2 ASC) 
    AND bloom_filter_fp_chance = 0.1 
    AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'} 
    AND comment = '' 
    AND compaction = {'class': 'org.apache.cassandra.db.compaction.LeveledCompactionStrategy'} 
    AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.SnappyCompressor'} 
    AND crc_check_chance = 1.0 
    AND dclocal_read_repair_chance = 0.05 
    AND default_time_to_live = 0 
    AND gc_grace_seconds = 5 
    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 = '99PERCENTILE'; 

[cqlsh 5.0.1 | Cassandra 3.11.0 | Spécification CQL 3.4.4 | Protocole natif v4]

Est-il possible de modifier la table pour cette structure de table? Qu'est-ce qui peut causer ce problème?

Merci

Répondre

0

Ce genre de modification est malheureusement pas pris en charge par Cassandra. Pour une référence concernant les types de données CQL et les conversions prises en charge, consultez le Datastax documentation.

Je ne sais pas si cela va fonctionner, mais vous pourriez essayer de supprimer la colonne et de la créer à nouveau?