问题是,将数据加载到实时集群后BulkLoader开始迁移不存在的本地模式并抛出 java.lang.IllegalArgumentException:Unknown CF {ID}
见下面的系统日志输出:
DEBUG [main] 2012-06-23 18:40:50,743 StreamOutSession.java (line 204) Files are /tmp/data/Keyspace1/ColumnFamily1-hd-1-Data.db sections=1 progress=0/620 - 0%
DEBUG [Streaming:1] 2012-06-23 18:40:50,771 Throttle.java (line 65) Throttle(for=FileStreamTask(session=265847486776203, to=/192.168.0.102)) target throughput now 52428 bytes/ms.
DEBUG [Streaming:1] 2012-06-23 18:40:50,771 FileStreamTask.java (line 155) Bytes transferred 620/620
DEBUG [Streaming:1] 2012-06-23 18:40:50,779 FileStreamTask.java (line 106) Done streaming /tmp/data/Keyspace1/ColumnFamily1-hd-1-Data.db sections=1 progress=620/620 - 100%
DEBUG [Thread-4] 2012-06-23 18:40:50,915 Gossiper.java (line 216) Setting version 3 for /192.168.0.102
DEBUG [Thread-4] 2012-06-23 18:40:50,915 IncomingTcpConnection.java (line 104) set version for /192.168.0.102 to 3
DEBUG [MiscStage:1] 2012-06-23 18:40:50,915 StreamReplyVerbHandler.java (line 47) Received StreamReply StreamReply(sessionId=265847486776203, file='/tmp/data/Keyspace1/ColumnFamily1-hd-1-Data.db', action=FILE_FINISHED)
DEBUG [MiscStage:1] 2012-06-23 18:40:50,919 StreamReplyVerbHandler.java (line 47) Received StreamReply StreamReply(sessionId=265847486776203, file='', action=SESSION_FINISHED)
INFO [MiscStage:1] 2012-06-23 18:40:50,919 MessagingService.java (line 483) Waiting for messaging service to quiesce
INFO [ACCEPT-/192.168.0.101] 2012-06-23 18:40:50,919 MessagingService.java (line 639) MessagingService shutting down server thread.
DEBUG [MigrationStage:1] 2012-06-23 18:40:51,191 DefinitionsUpdateVerbHandler.java (line 70) Applying AddKeyspace from /192.168.0.102
然后它加载列族元数据,最后
DEBUG [MigrationStage:1] 2012-06-23 18:40:51,615 MigrationManager.java (line 157) Gossiping my schema version bbad3230-a8c1-11e1-0000-56b6291774f9
DEBUG [MigrationStage:1] 2012-06-23 18:40:51,619 DefinitionsUpdateVerbHandler.java (line 70) Applying DropKeyspace from /192.168.0.102
DEBUG [GossipTasks:1] 2012-06-23 18:40:51,711 DebuggableThreadPoolExecutor.java (line 136) Task cancelled
java.util.concurrent.CancellationException
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:250)
at java.util.concurrent.FutureTask.get(FutureTask.java:111)
at org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor.logExceptionsAfterExecute(DebuggableThreadPoolExecutor.java:128)
at org.apache.cassandra.concurrent.DebuggableScheduledThreadPoolExecutor.afterExecute(DebuggableScheduledThreadPoolExecutor.java:47)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1118)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:636)
ERROR [MigrationStage:1] 2012-06-23 18:40:51,711 DebuggableThreadPoolExecutor.java (line 141) Error in ThreadPoolExecutor
java.lang.IllegalArgumentException: Unknown CF 1020
at org.apache.cassandra.db.Table.getColumnFamilyStore(Table.java:167)
at org.apache.cassandra.db.Table.getColumnFamilyStore(Table.java:160)
at org.apache.cassandra.db.migration.DropKeyspace.applyModels(DropKeyspace.java:59)
at org.apache.cassandra.db.migration.Migration.apply(Migration.java:156)
at org.apache.cassandra.db.DefinitionsUpdateVerbHandler$1.runMayThrow(DefinitionsUpdateVerbHandler.java:73)
at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:636)
DEBUG [MigrationStage:1] 2012-06-23 18:40:51,715 DefinitionsUpdateVerbHandler.java (line 70) Applying AddKeyspace from /192.168.0.102
DEBUG [MigrationStage:1] 2012-06-23 18:40:51,715 DefinitionsUpdateVerbHandler.java (line 80) Migration not applied Previous version mismatch. cannot apply.
是否有可能以某种方式禁用此迁移?