Я пытаюсь протестировать Cassandra 2.2.12 с YCSB 0.15.0. Я подготовил свою собственную рабочую нагрузку. Когда я запускаю его с командой:
./bin/ycsb load cassandra-cql -P workloads/workload_egeuniversity_writeonly_histogram -p hosts="127.0.0.1"
I get the following output:
loading workload...
Starting test.
[Thread-2] INFO com.datastax.driver.core.NettyUtil - Did not find Netty's native epoll transport in the classpath, defaulting to NIO.
[Thread-2] INFO com.datastax.driver.core.policies.DCAwareRoundRobinPolicy - Using data-center name 'datacenter1' for DCAwareRoundRobinPolicy (if this is incorrect, please provide the correct datacenter name with DCAwareRoundRobinPolicy constructor)
[Thread-2] INFO com.datastax.driver.core.Cluster - New Cassandra host /127.0.0.1:9042 added
[Thread-2] INFO com.yahoo.ycsb.db.CassandraCQLClient - Connected to cluster: Test Cluster
[Thread-2] INFO com.yahoo.ycsb.db.CassandraCQLClient - Datacenter: datacenter1; Host: /127.0.0.1; Rack: rack1
DBWrapper: report latency for each error is false and specific error codes to track for latency are: []
[Thread-2] ERROR com.yahoo.ycsb.db.CassandraCQLClient - Error inserting key: user1
com.datastax.driver.core.exceptions.SyntaxError: line 1:28 no viable alternative at input '0' (INSERT INTO usertable (y_id,[0]...)
at com.datastax.driver.core.exceptions.SyntaxError.copy(SyntaxError.java:58)
at com.datastax.driver.core.exceptions.SyntaxError.copy(SyntaxError.java:24)
at com.datastax.driver.core.DriverThrowables.propagateCause(DriverThrowables.java:37)
at com.datastax.driver.core.AbstractSession.prepare(AbstractSession.java:110)
at com.yahoo.ycsb.db.CassandraCQLClient.insert(CassandraCQLClient.java:547)
at com.yahoo.ycsb.DBWrapper.insert(DBWrapper.java:221)
at com.yahoo.ycsb.workloads.EgeUniversityWorkload.doInsert(EgeUniversityWorkload.java:720)
at com.yahoo.ycsb.ClientThread.run(ClientThread.java:118)
at java.lang.Thread.run(Thread.java:748)
Caused by: com.datastax.driver.core.exceptions.SyntaxError: line 1:28 no viable alternative at input '0' (INSERT INTO usertable (y_id,[0]...)
at com.datastax.driver.core.Responses$Error.asException(Responses.java:132)
at com.datastax.driver.core.SessionManager$4.apply(SessionManager.java:220)
at com.datastax.driver.core.SessionManager$4.apply(SessionManager.java:196)
at com.google.common.util.concurrent.Futures$ChainingListenableFuture.run(Futures.java:861)
at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:297)
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.datastax.driver.core.Connection$Future.onSet(Connection.java:1174)
at com.datastax.driver.core.Connection$Future.onSet(Connection.java:1168)
at com.datastax.driver.core.RequestHandler.setFinalResult(RequestHandler.java:184)
at com.datastax.driver.core.RequestHandler.access$2500(RequestHandler.java:43)
at com.datastax.driver.core.RequestHandler$SpeculativeExecution.setFinalResult(RequestHandler.java:798)
at com.datastax.driver.core.RequestHandler$SpeculativeExecution.onSet(RequestHandler.java:617)
at com.datastax.driver.core.Connection$Dispatcher.channelRead0(Connection.java:1005)
at com.datastax.driver.core.Connection$Dispatcher.channelRead0(Connection.java:928)
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304)
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:266)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304)
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:276)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:263)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:318)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:304)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:112)
... 1 more
В чем может быть причина этого? Структура записи, которую я использую, выглядит следующим образом:
создать таблицу, доступную для пользователя (первичный ключ y_id varchar, дата varchar, высота varchar, широта varchar, долгота varchar, имя varchar, prcp varchar, snwd varchar, station varchar, tavg varchar, tmax varchar, tmin varchar);
Большое спасибо,
Oylum