在我们的测试环境(几乎所有的uat、staging等)中,我们面临着一个奇怪的问题,在这个环境中,插入程序会间歇性地失败,并出现下面提到的错误
)]; 没有可用于执行查询的节点;嵌套异常为com.datastax.oss.driver.api.core.nonodeavailableexception:没有节点可用于执行查询
大多数情况下,应用程序工作正常,数据插入到表中,但会间歇性地观察到此错误。我们已经验证了Cassandra的状态,网络状态似乎一切正常。
以下是版本应用程序驱动程序的详细信息:
spring-data-cassandra = 3.0.3
cassandra driver = 4.6.1
DSE cassandra database = 6.7.0
错误
2020-11-03 13:17:15.698[hystrix integration.preclearance-1][user=][request_id=e6daa8:90f87a][traveller_identifier=][org.springframework.data.cassandra.core.convert.mappingcassandraconverter]debug-adding map.entry[transaction_code]-[e6daa8]2020-11-03 13:17:15.698[hystrix integration.preclearance-1][user=][request_id=e6daa8:90f87a][traveller_identifier=][org.springframework.data.cassandra.core.convert.mappingcassandraconverter]调试-dowithproperties.type java.lang.string,property.value e6daa8a6-39a0-4078-9aa8-a639a0f07896 2020-11-03 13:17:15.698[hystrix integration.preclearance-1][user=][request_id=e6daa8:90f87a][traveller_identifier=][org.springframework.data.cassandra.core.converter.mappingcassandraconverter]debug-adding map.entry[transaction_id]-[e6daa8a6-39a0-4078-9aa8-a639a0f07896]2020-11-0313:17:15.698[hystrix integration.preclearance-1][user=][request_id=e6daa8:90f87a][traveller_identifier=][org.springframework.data.cassandra.core.convert.mappingcassandraconverter]debug-dowithproperties property.type ae.emaratech.nga.core.logging.actiontype,property.value response 2020-11-03 13:17:15.698[hystrix integration.preclearance-1][user=][request_id=e6daa8:90f87a][traveller_identifier=][org.springframework.data.cassandra.core.convert.mappingcassandraconverter]debug-adding map.entry[type]-[response]2020-11-03 13:17:15.701[hystrix integration.preclearance-1][user=][请求\u id=e6daa8:90f87a][traveller \u identifier=][ae.emaratech.nga.integration.handler.integrationloghandler]错误-记录响应{}org.springframework.data.cassandra.cassandra.cassandraconnectionfailureexception:sessioncallback时发生异常;cql[插入日志(sno)值(1)];没有可用于执行查询的节点;嵌套的异常是com.datastax.oss.driver.api.core.nonodeavailableexception:org.springframework.data.cassandra.core.cql.cassandraexceptiontranslator.translate(cassandraexceptiontranslator)中没有节点可用于执行查询。java:137)在org.springframework.data.cassandra.core.cql.cassandraaccessor.translate(cassandraaccessor。java:379) 在org.springframework.data.cassandra.core.cql.cqltemplate.translateexception(cqltemplate。java:718)在org.springframework.data.cassandra.core.cql.cqltemplate.execute(cqltemplate。java:131)在org.springframework.data.cassandra.core.cassandratemplate.executesave(cassandratemplate。java:863)在org.springframework.data.cassandra.core.cassandratemplate.executesave(cassandratemplate。java:854)在org.springframework.data.cassandra.core.cassandratemplate.doinsert(cassandratemplate。java:665)在org.springframework.data.cassandra.core.cassandratemplate.doinsert(cassandratemplate。java:648)在org.springframework.data.cassandra.core.cassandratemplate.insert(cassandratemplate。java:629)在org.springframework.data.cassandra.core.cassandratemplate.insert(cassandratemplate。java:617)在org.springframework.data.cassandra.repository.support.simplecassandrarepository.insert(simplecassandrarepository。java:121)在sun.reflect.generatedmethodaccessor339.invoke(未知源)位于sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl)。java:55)在java.lang.reflect.method.invoke(方法。java:508)位于org.springframework.data.repository.core.support.implementationinvocationmetadata.invoke(implementationinvocationmetadata)。java:72)在org.springframework.data.repository.core.support.repositorycomposition$repositoryfragments.invoke(repositorycomposition。java:382)位于org.springframework.data.repository.core.support.repositorycomposition.invoke(repositorycomposition)。java:205)在org.springframework.data.repository.core.support.repositoryfactorysupport$implementationmethodexecutioninterceptor.invoke(repositoryfactorysupport)。java:549)在org.springframework.aop.framework.reflectivemethodinvocation.procedue(reflectivemethodinvocation。java:186)在org.springframework.data.repository.core.support.queryexecutormethodinterceptor.doinvoke(queryexecutormethodinterceptor。java:155)位于org.springframework.data.repository.core.support.queryexecutormethodinterceptor.invoke(queryexecutormethodinterceptor。java:130)在org.springframework.aop.framework.reflectivemethodinvocation.procedue(reflectivemethodinvocation。java:186)位于org.springframework.data.projection.defaultmethodinvokingmethodinterceptor.invoke(defaultmethodinvokingmethodinterceptor)。java:80)在org.springframework.aop.framework.reflectivemethodinvocation.procedue(reflectivemethodinvocation。java:186) 在org.springframework.aop.interceptor.exposeinvocationinterceptor.invoke(exposeinvocationinterceptor。java:95)在org.springframework.aop.framework.reflectivemethodinvocation.procedue(reflectivemethodinvocation。java:186)在org.springframework.aop.framework.jdkdynamicaopproxy.invoke(jdkdynamicaopproxy。java:212)在com.sun.proxy.$proxy317.insert(未知源)at sun.reflect.generatedmethodaccessor338.invoke(未知源)at sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl)。java:55)在java.lang.reflect.method.invoke(方法。java:508)在org.springframework.aop.support.aoputils.invokejoinpointusingreflection(aoputils。java:344)在org.springframework.aop.framework.reflectivemethodinvocation.invokejoinpoint(reflectivemethodinvocation)。java:198)
暂无答案!
目前还没有任何答案,快来回答吧!