2016-09-01 15 views
0

を満たしていないマテリアライズド・ビューをする場合:カサンドラWriteTimeoutの「NULLされていない」状態は、私は、このテーブルを持っており、マテリアライズド・ビューを

CREATE TABLE bubu (
    a text, 
    b text, 
    c text, 
    d text, 
    PRIMARY KEY (a, b)); 


CREATE MATERIALIZED VIEW bubu_mv AS 
    SELECT * 
    FROM bubu 
    WHERE a IS NOT NULL AND b IS NOT NULL AND c IS NOT NULL 
    PRIMARY KEY (a, c, b) 

私は、この挿入してから、このアップデートを行うと、挿入が成功して、更新がを返します。書き込みタイムアウト

insert into bubu (a,b,c,d) values ('1','2',null,'3'); 
update bubu set d = '5' where a = '1' and b = '2'; 
WriteTimeout: Error from server: code=1100 [Coordinator node timed out waiting for replica nodes' responses] message="Operation timed out - received only 0 responses." info={'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} 

これはカサンドラ3.7で発生し、(私が試しただけの2バージョン)カサンドラ3.2.1には発生しません。インサートは、このようなものである場合

も、それは起こりません。

insert into bubu (a,b) values ('1','2'); 

私は20000へのconf/cassandra.yamlでwrite_request_timeout_in_msを増やした場合、私は〜10秒後にタイムアウトを取得:

update bubu set d = '5' where a = '1' and b = '2'; 
OperationTimedOut: errors={}, last_host=127.0.0.1 

これはcassandraのバグですか、何か間違っていますか?

答えて

0

設定ファイルconf/cassandra.yamlでタイムアウト値を大きくして確認できますか。必要に応じてサーバーを再起動します。

write_request_timeout_in_ms: 20000 
+0

でしたか。今私は10秒後にOperationTimedOutを取得する – asafd

関連する問題