使用ruby连接Cassandra报错(Timed out)解决方法
Aug 15, 2017
- 公司es搜索使用源数据存储在Cassandra数据库,今天接到需求,需要查询每个id总数量
- 有个ruby在跑Cassandra数据,懒得改成python,直接用ruby写,结果查询报错:
1
2
3
4/home/ops/.rvm/gems/ruby-1.9.3-p551/gems/cassandra-driver-3.1.0/lib/cassandra/future.rb:631:in `get': Timed out (Cassandra::Errors::TimeoutError)
from cassandra-driver-3.1.0/lib/cassandra/future.rb:396:in `get'
from /home/ops/.rvm/gems/ruby-1.9.3-p551/gems/cassandra-driver-3.1.0/lib/cassandra/session.rb:123:in `execute'
from ./validate.rb:30:in `<main>' - 解决方法如下:
1
session.execute("select count(*) FROM keyspacename.tabname WHERE source='keyword'", timeout:100)
- 如果是在cqlsh里面报错timeout,可使用:
1
cqlsh --request-timeout 120 host
- 参考链接:
- Ruby Driver for Apache Cassandra
- Operation Time Out Error in cqlsh console of cassandra