2015-05-07 16 views
2

我跑在cqlsh此命令(在10節點生產羣集運行卡桑德拉2.1.2):如何解決在ALTER TABLE之後的模式不匹配?

cqlsh:aisdata> alter table packets_area_cell10 with compression = { 'sstable_compression' : 'DeflateCompressor', 'chunk_length_kb' : 1024 }; 
errors={}, last_host=127.0.0.1 

的「改變表」命令似乎儘管超時已運行。

但是隨後cqlsh進入(https://issues.apache.org/jira/browse/CASSANDRA-8512) - 並且被渲染成幾乎不可用,直到應用了CASSANDRA-8512中提到的補丁。

那麼,它們在Cassandra中的底層模式不匹配如何解決;所以例如cqlsh可以再次運行?

UPDATE 1

cqlsh> select release_version, host_id, schema_version from system.local; 

release_version | host_id        | schema_version 
-----------------+--------------------------------------+-------------------------------------- 
      2.1.2 | 15bb29cd-1c3c-43c9-ac82-e27d0b236066 | 489c8f81-4346-3bbe-afb9-bd998302d3a3 

(1 rows) 
cqlsh> select peer, release_version, host_id, schema_version from system.peers; 

peer  | release_version | host_id        | schema_version 
-------------+-----------------+--------------------------------------+-------------------------------------- 
10.51.78.29 |   2.1.2 | de10ceb6-3fc1-4739-9d40-66a5ac510eeb | 22e8d11f-4c62-362f-8706-bf694c1a95dd 
10.51.78.27 |   2.1.2 | 6b165d96-5425-4e24-9e9d-d59bfab729fd | 489c8f81-4346-3bbe-afb9-bd998302d3a3 
10.51.78.20 |   2.1.2 | 6114a6bf-e3cf-4bce-b423-5d2c3976afc8 | 489c8f81-4346-3bbe-afb9-bd998302d3a3 
10.51.78.57 |   2.1.2 | 59ed0b67-6c45-48de-8755-ad8c7770f0ff | 489c8f81-4346-3bbe-afb9-bd998302d3a3 
10.51.78.59 |   2.1.2 | 00254eef-7b21-4f3a-9c18-159d4c1d4d73 | 489c8f81-4346-3bbe-afb9-bd998302d3a3 
10.51.78.58 |   2.1.2 | 90ccccdf-22b5-4eb3-99a6-5b880c5f5ebf | 489c8f81-4346-3bbe-afb9-bd998302d3a3 
10.51.78.14 |   2.1.2 | 60393d6d-fcb8-42ec-ba40-e34ec8d4ec69 | 489c8f81-4346-3bbe-afb9-bd998302d3a3 
10.51.78.56 |   2.1.2 | 5b82e847-7c8c-4b22-bc54-2fece674c8fa | 489c8f81-4346-3bbe-afb9-bd998302d3a3 
10.51.78.26 |   2.1.2 | a4d2d02b-74e6-4ab1-b610-efdf58f7c918 | 489c8f81-4346-3bbe-afb9-bd998302d3a3 

回答

3

通過刪除從system.peers鬼節點解決,通過運行:

delete from system.peers where peer='10.51.78.29'; 

所有節點上。