java - 运行 cassandra 和 netflix.astyanax 库时出现 Apache TransportException 而没有任何特定的错误消息
问题描述
我正在尝试对 Cassandra 执行查询。使用的端口是 9160。Thrift 服务器正在运行。通过使用以下命令。./nodetool enablethrift 使用 Cassandra 3.0.9
Caused by: ! com.netflix.astyanax.connectionpool.exceptions.TransportException: TransportException: [host=127.0.0.1(127.0.0.1):9160, latency=23(23), attempts=1]org.apache.thrift.transport.TTransportException
! at com.netflix.astyanax.thrift.ThriftConverter.ToConnectionPoolException(ThriftConverter.java:197)
! at com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:65)
! at com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:28)
! at com.netflix.astyanax.thrift.ThriftSyncConnectionFactoryImpl$ThriftConnection.execute(ThriftSyncConnectionFactoryImpl.java:151)
! at com.netflix.astyanax.connectionpool.impl.AbstractExecuteWithFailoverImpl.tryOperation(AbstractExecuteWithFailoverImpl.java:69)
! at com.netflix.astyanax.connectionpool.impl.AbstractHostPartitionConnectionPool.executeWithFailover(AbstractHostPartitionConnectionPool.java:256)
! at com.netflix.astyanax.thrift.AbstractThriftCqlQuery$3.execute(AbstractThriftCqlQuery.java:80)
! at lithium.cassandra.dao.AbstractCassandraDao.executeQuery(AbstractCassandraDao.java:84)
!... 60 common frames omitted
Caused by: ! org.apache.thrift.transport.TTransportException: null
! at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:132)
! at org.apache.thrift.transport.TTransport.readAll(TTransport.java:84)
! at org.apache.thrift.transport.TFramedTransport.readFrame(TFramedTransport.java:129)
! at org.apache.thrift.transport.TFramedTransport.read(TFramedTransport.java:101)
! at org.apache.thrift.transport.TTransport.readAll(TTransport.java:84)
! at org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:378)
! at org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:297)
! at org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:204)
! at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:69)
! at org.apache.cassandra.thrift.Cassandra$Client.recv_execute_prepared_cql3_query(Cassandra.java:1689)
! at org.apache.cassandra.thrift.Cassandra$Client.execute_prepared_cql3_query(Cassandra.java:1674)
! at com.netflix.astyanax.thrift.ThriftCql3Query.execute_prepared_cql_query(ThriftCql3Query.java:29)
! at com.netflix.astyanax.thrift.AbstractThriftCqlQuery$3$1.internalExecute(AbstractThriftCqlQuery.java:92)
! at com.netflix.astyanax.thrift.AbstractThriftCqlQuery$3$1.internalExecute(AbstractThriftCqlQuery.java:82)
! at com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:60)
!... 66 common frames omitted```
解决方案
我遇到了这个问题,因为我有几个线程,但是每个请求我必须处理的数据是巨大的。(作为一个请求的一部分需要处理 200000 个对象。每个对象都在排队。)一旦我减少了接收到的对象的数量,问题就解决了。
推荐阅读
- swift - 如何从 spritekit 中的节点中删除颜色
- c# - C# Cast / Unbox 使用变量类型
- python - PyTorch 将总和查找数量矢量化到存储桶中
- java - 如何使用 Java 将字符串 21/01/2019 (dd/MM/yyyy) 转换为相同格式的 Date 对象
- vector - 关于如何从一个向量复制到另一个向量的问题
- amazon-web-services - 通过 Route 53 的 S3 静态网站。如果路径不存在,则重定向到页面
- python - 如何将 pd.cut 与大量垃圾箱一起使用?
- c# - 实体框架在实例化新实体时生成索引错误
- javascript - truepush 回调读取
- ios - 允许任意负载设置为 YES,但请求仍然失败?