com.datastax.driver.core.exceptions.InvalidQueryException: ненастроенная таблица peers_v2 - PullRequest
0 голосов
/ 24 апреля 2020

Я разрабатываю приложение с Spring Boot, которое подключается к cassandra

Это мои настройки соединения

spring.data.cassandra.contact-points=localhost
spring.data.cassandra.keyspace-name=sa_tas_db_cassandra
spring.data.cassandra.schema-action=create_if_not_exists
spring.data.cassandra.username=cassandra

Я просто использую таблицу, которую создаю с помощью модель. Это следующее

import org.springframework.data.cassandra.core.mapping.PrimaryKey
import org.springframework.data.cassandra.core.mapping.Table
import java.time.LocalTime
import java.util.*

@Table
data class CallLog(
    @PrimaryKey
    val callId:UUID,
    val CustomerUsername: String? = null,
    val callDirection: String? = null,
    val callingPartyName:String? = null,
    val callingPartyNumber:String? = null,
    val calledPartyNumber:String? = null,
    val typeOfCall:String? = null,
    val startTime: Date? = null,
    val answerTime: LocalTime? = null,
    val disconnectTime:Date? = null,
    val timeCallForwarded: Date? = null,
    val voicemailSystemAccessNumber:String? = null
)

Это все мои настройки cassandra

Я также отслеживаю свое приложение с новой версией c, и оно вызывает следующую проблему

….netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:377)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
….channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:355)
  io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:377)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
….channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:355)
…etty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:377)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
….channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:355)
…tty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:321)
…o.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:295)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:377)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
….channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:355)
…netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:93)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:377)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
….channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:355)
…channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:377)
…hannel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:363)
…o.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
….channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
   io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:714)
….channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:650)
  io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:576)
                  io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493)
….netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
         io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
   io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)

Эта ошибка не влияет на работу приложения, она влияет только на производительность

Спасибо

1 Ответ

2 голосов
/ 27 апреля 2020

Это часть теста совместимости для поддержки Cassandra 4.0, которая хранит информацию об узлах в кластере в таблице с другим именем, поэтому драйвер сначала предполагает, что он работает с более новой версией, и проверяет эту таблицу, и если он получает ошибка, то он использует старую таблицу peers. Невозможно надежно определить функции узла Cassandra только по номеру версии, поэтому лучше явно проверить таблицу.

Соответствующий код здесь .

...