Cassandra报错: com.datastax.driver.core.ConnectionException:Pool was closed during initialization

当遇到com.datastax.driver.core.ConnectionException: Pool was closed during initialization的警告时,虽然这是一个Exception,但实际上它属于WARN级别,不会影响Cassandra的正常运行。此问题可能与节点配置或重复因子设置不当有关,但实践中表明可以忽略此警告。

 

Cassandra报错: com.datastax.driver.core.ConnectionException:Pool was closed during initialization

2019-01-26 16:19:46,223|WARN|cluster1-nio-worker-3|com.google.common.util.concurrent.Futures$6.run(Futures.java:1310)
poc-216|-1|32301|OcgAux-1-0|Error creating pool to /192.168.14.212:9042
com.datastax.driver.core.ConnectionException: [/192.168.14.212:9042] Pool was closed during initialization
        at com.datastax.driver.core.HostConnectionPool$2.onSuccess(HostConnectionPool.java:147)
        at com.datastax.driver.core.HostConnectionPool$2.onSuccess(HostConnectionPool.java:133)
        at com.google.common.util.concurrent.Futures$6.run(Futures.java:1319)
        at com.google.common.util.concurrent.MoreExecutors$DirectExecutorService.execute(MoreExecutors.java:299)
        at com.google.common.util.concurrent.ExecutionList.executeListener(ExecutionList.java:156)
        at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:145)
        at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:185)
        at com.google.common.util.concurrent.Futures$CombinedFuture.setOneValue(Futures.java:1764)
        at com.google.common.util.concurrent.Futures$CombinedFuture.access$400(Futures.java:1608)
        at com.google.common.util.concurrent.Futures$CombinedFuture$2.run(Futures.java:1686)
        at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:457)
        at com.google.common.util.concurrent.ExecutionList.executeListener(ExecutionList.java:156)
        at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:145)
        at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:185)
        at com.google.common.util.concurrent.Futures$FallbackFuture$1$1.onSuccess(Futures.java:479)
        at com.google.common.util.concurrent.Futures$6.run(Futures.java:1319)
        at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:457)
        at com.google.common.util.concurrent.Futures$ImmediateFuture.addListener(Futures.java:106)
        at com.google.common.util.concurrent.Futures.addCallback(Futures.java:1322)
        at com.google.common.util.concurrent.Futures$FallbackFuture$1.onFailure(Futures.java:476)
        at com.google.common.util.concurrent.Futures$6.run(Futures.java:1310)
        at com.google.common.util.concurrent.MoreExecutors$DirectExecutorService.execute(MoreExecutors.java:299)
        at com.google.common.util.concurrent.ExecutionList.executeListener(ExecutionList.java:156)
        at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:145)
        at com.google.common.util.concurrent.AbstractFuture.setException(AbstractFuture.java:202)
        at com.google.common.util.concurrent.Futures$FallbackFuture$1$1.onFailure(Futures.java:487)
        at com.google.common.util.concurrent.Futures$6.run(Futures.java:1310)
        at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:457)
        at com.google.common.util.concurrent.ExecutionList.executeListener(ExecutionList.java:156)
        at com.google.common.util.concurrent.ExecutionList.add(ExecutionList.java:101)
        at com.google.common.util.concurrent.AbstractFuture.addListener(AbstractFuture.java:170)
        at com.google.common.util.concurrent.Futures.addCallback(Futures.java:1322)
        at com.google.common.util.concurrent.Futures$FallbackFuture$1.onFailure(Futures.java:476)
        at com.google.common.util.concurrent.Futures$6.run(Futures.java:1310)
        at com.google.common.util.concurrent.MoreExecutors$DirectExecutorService.execute(MoreExecutors.java:299)
        at com.google.common.util.concurrent.ExecutionList.executeListener(ExecutionList.java:156)
        at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:145)
        at com.google.common.util.concurrent.AbstractFuture.setException(AbstractFuture.java:202)
        at com.google.common.util.concurrent.Futures$ChainingListenableFuture.run(Futures.java:902)
        at com.google.common.util.concurrent.Futures$1$1.run(Futures.java:635)
        at com.google.common.util.concurrent.MoreExecutors$DirectExecutorService.execute(MoreExecutors.java:299)
        at com.google.common.util.concurrent.Futures$1.run(Futures.java:632)
        at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:457)
        at com.google.common.util.concurrent.ExecutionList.executeListener(ExecutionList.java:156)
        at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:145)
        at com.google.common.util.concurrent.AbstractFuture.setException(AbstractFuture.java:202)
        at com.google.common.util.concurrent.SettableFuture.setException(SettableFuture.java:68)
        at com.datastax.driver.core.Connection$1.operationComplete(Connection.java:161)
        at com.datastax.driver.core.Connection$1.operationComplete(Connection.java:144)
        at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:514)
        at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:507)
        at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:486)
        at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:427)
        at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:129)
        at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.fulfillConnectPromise(AbstractEpollStreamChannel.java:864)
        at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.finishConnect(AbstractEpollStreamChannel.java:883)
        at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollOutReady(AbstractEpollStreamChannel.java:900)
        at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:376)
        at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:302)
        at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:873)
        at java.lang.Thread.run(Thread.java:745)

首先不要被这个错误吓到,这虽然是一个Excepiton,但它的提示是WARN级别,经过博主实际使用证明,并不影响cassandra的正常使用。

估计可能是节点和重复因子的配置不合理引起的。既然完全不影响使用,就可以不理会。End.

 

在这个Cassandra表插入数据时,idea报错如下,如何解决: com.datastax.oss.driver.api.core.servererrors.InvalidQueryException: Cannot execute this query as it might involve data filtering and thus may have unpredictable performance. If you want to execute this query despite the performance unpredictability, use ALLOW FILTERING at com.datastax.oss.driver.api.core.servererrors.InvalidQueryException.copy(InvalidQueryException.java:48) ~[java-driver-core-4.14.1.jar:na] at com.datastax.oss.driver.internal.core.util.concurrent.CompletableFutures.getUninterruptibly(CompletableFutures.java:149) ~[java-driver-core-4.14.1.jar:na] at com.datastax.oss.driver.internal.core.cql.CqlPrepareSyncProcessor.process(CqlPrepareSyncProcessor.java:59) ~[java-driver-core-4.14.1.jar:na] at com.datastax.oss.driver.internal.core.cql.CqlPrepareSyncProcessor.process(CqlPrepareSyncProcessor.java:31) ~[java-driver-core-4.14.1.jar:na] at com.datastax.oss.driver.internal.core.session.DefaultSession.execute(DefaultSession.java:230) ~[java-driver-core-4.14.1.jar:na] at com.datastax.oss.driver.api.core.cql.SyncCqlSession.prepare(SyncCqlSession.java:224) ~[java-driver-core-4.14.1.jar:na] 对应的代码如下所示: @Override public UserRegistryResultDTO registry(UserRegistryDTO registryDTO) { UserRegistryResultDTO result = new UserRegistryResultDTO(); // Cassandra 验证逻辑 validateRegistryInfo(registryDTO, result); if (result.getStatus() != RegistryStatusEnum.FAILED) { try { CassandraUser newUser = dtoToUser(registryDTO); // 使用 insert 而是 save 避免更新操作 cassandraOperations.insert(newUser); result.setStatus(RegistryStatusEnum.SUCCESS); result.setMessage("Registration successful in Cassandra"); } catch (Exception e) { log.error("Cassandra insert error", e); result.setStatus(RegistryStatusEnum.FAILED); result.setMessage("Database error"); } } return result; }
08-30
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值