키 공간을 삭제하는 데 문제가 있습니다.키 공간 삭제 중 연결 시간이 초과되었습니다.
문제의 키 스페이스는 이것과 같은 4 개 테이블이있다 : 나는 명령을 사용하여 키 스페이스를 삭제할 때
CREATE KEYSPACE demo WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '1'} AND durable_writes = false;
CREATE TABLE demo.t1 (
t11 int,
t12 timeuuid,
t13 int,
t14 text,
t15 text,
t16 boolean,
t17 boolean,
t18 int,
t19 timeuuid,
t110 text,
PRIMARY KEY (t11, t12)
) WITH CLUSTERING ORDER BY (t13 DESC)
AND bloom_filter_fp_chance = 0.01
AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
AND comment = ''
AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
AND crc_check_chance = 1.0
AND dclocal_read_repair_chance = 0.1
AND default_time_to_live = 0
AND gc_grace_seconds = 864000
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';
CREATE INDEX t1_idx ON demo.t1 (t14);
CREATE INDEX t1_deleted_idx ON demo.t2 (t15);
을 : 다음 쿼리 시간이 초과됩니다
Session session = cluster.connect();
PreparedStatement prepared = session.prepare("drop keyspace if exists " + schemaName);
BoundStatement bound = prepared.bind();
session.execute(bound);
을 (또는 소요 테이블이 비어있는 경우에도 10 초 이상 실행 됨) :
com.datastax.driver.core.exceptions.OperationTimedOutException: [/192.168.0.1:9042] Timed out waiting for server response at com.datastax.driver.core.exceptions.OperationTimedOutException.copy(OperationTimedOutException.java:44) at com.datastax.driver.core.exceptions.OperationTimedOutException.copy(OperationTimedOutException.java:26) at com.datastax.driver.core.DriverThrowables.propagateCause(DriverThrowables.java:37) at com.datastax.driver.core.DefaultResultSetFuture.getUninterruptibly(DefaultResultSetFuture.java:245) at com.datastax.driver.core.AbstractSession.execute(AbstractSession.java:64) at com.datastax.driver.core.AbstractSession.execute(AbstractSession.java:39)
여러 대의 컴퓨터에서이 작업을 시도했지만 그 결과는 동일했습니다. 나는 카산드라 3.9를 사용하고 있습니다. cqlsh를 사용하면 비슷한 결과가 발생합니다. 나는 cassandra.yaml 파일에서 읽기 타임 아웃을 늘릴 수 있다는 것을 알고 있지만 어떻게하면 더 빨리이 파일을 삭제할 수 있습니까? 또 다른 한가지는 두 번의 연속 요청을하면 첫 번째 요청이 시간 초과되고 두 번째 요청이 빠르다는 것입니다.
시간 제한을 늘리면 문제가 숨겨지고 대개는 나쁜 생각입니다. 이 대답을 살펴보십시오. http://stackoverflow.com/a/16618888/7413631 –