[
https://issues.apache.org/jira/browse/CASSANDRA-4857?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13867061#comment-13867061
]
Christopher J. Bottaro commented on CASSANDRA-4857:
---------------------------------------------------
Is this still an issue as of 1.2.10?
We have a multitenant application where each client has their own keyspace.
One of our most used features is cloning one client to another client (for the
purposes of testing). This cloning involves dropping the keyspace on the
destination client and recreating it before copying the data from the source
client..
It gets hairy in that different clients can have tables that share a similar
name, but the schemas are different, hence truncating doesn't really work for
us.
Is there a way we can ensure dropping a keyspace and recreating it will be
safe? Is there a nodetool or cql command we can send to the cluster to say
"Hey, lady... is this keyspace done being deleted?" Or better, block until
it's really deleted and ready to be recreated... :)
Or is it any safer to simply drop all the tables in a keyspace and recreate
them, rather than drop/recreate the keyspace itself?
> FileNotFoundException after create-drop-create keyspace
> -------------------------------------------------------
>
> Key: CASSANDRA-4857
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4857
> Project: Cassandra
> Issue Type: Bug
> Environment: Cassandra trunk (565c576)
> Reporter: Tyler Patterson
> Assignee: Pavel Yaskevich
> Attachments: system.log
>
>
> {code}
> INFO [CompactionExecutor:28] 2012-10-24 14:32:22,756 CompactionTask.java
> (line 116) Compacting
> [SSTableReader(path='/var/lib/cassandra/data/Twissandra/Tweet/Twissandra-Tweet-ia-1-Data.db'),
>
> SSTableReader(path='/var/lib/cassandra/data/Twissandra/Tweet/Twissandra-Tweet-ia-6-Data.db'),
>
> SSTableReader(path='/var/lib/cassandra/data/Twissandra/Tweet/Twissandra-Tweet-ia-4-Data.db'),
>
> SSTableReader(path='/var/lib/cassandra/data/Twissandra/Tweet/Twissandra-Tweet-ia-3-Data.db'),
>
> SSTableReader(path='/var/lib/cassandra/data/Twissandra/Tweet/Twissandra-Tweet-ia-2-Data.db')]
> ERROR [CompactionExecutor:28] 2012-10-24 14:32:22,758 CassandraDaemon.java
> (line 132) Exception in thread Thread[CompactionExecutor:28,1,main]
> java.lang.RuntimeException: java.io.FileNotFoundException:
> /var/lib/cassandra/data/Twissandra/Tweet/Twissandra-Tweet-ia-1-Data.db (No
> such file or directory)
> at
> org.apache.cassandra.io.compress.CompressedRandomAccessReader.open(CompressedRandomAccessReader.java:51)
> at
> org.apache.cassandra.io.sstable.SSTableReader.openDataReader(SSTableReader.java:1094)
> at
> org.apache.cassandra.io.sstable.SSTableScanner.<init>(SSTableScanner.java:51)
> at
> org.apache.cassandra.io.sstable.SSTableReader.getDirectScanner(SSTableReader.java:937)
> at
> org.apache.cassandra.io.sstable.SSTableReader.getDirectScanner(SSTableReader.java:949)
> at
> org.apache.cassandra.db.compaction.AbstractCompactionStrategy.getScanners(AbstractCompactionStrategy.java:127)
> at
> org.apache.cassandra.db.compaction.AbstractCompactionStrategy.getScanners(AbstractCompactionStrategy.java:133)
> at
> org.apache.cassandra.db.compaction.CompactionTask.runWith(CompactionTask.java:128)
> at
> org.apache.cassandra.io.util.DiskAwareRunnable.runMayThrow(DiskAwareRunnable.java:48)
> at
> org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28)
> at
> org.apache.cassandra.db.compaction.CompactionTask.execute(CompactionTask.java:69)
> at
> org.apache.cassandra.db.compaction.CompactionManager$BackgroundCompactionTask.run(CompactionManager.java:179)
> at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:680)
> Caused by: java.io.FileNotFoundException:
> /var/lib/cassandra/data/Twissandra/Tweet/Twissandra-Tweet-ia-1-Data.db (No
> such file or directory)
> at java.io.RandomAccessFile.open(Native Method)
> at java.io.RandomAccessFile.<init>(RandomAccessFile.java:216)
> at
> org.apache.cassandra.io.util.RandomAccessReader.<init>(RandomAccessReader.java:64)
> at
> org.apache.cassandra.io.compress.CompressedRandomAccessReader.<init>(CompressedRandomAccessReader.java:70)
> at
> org.apache.cassandra.io.compress.CompressedRandomAccessReader.open(CompressedRandomAccessReader.java:47)
> ... 17 more
> {code}
> This error has been happening consistently using a modified version of the
> twissandra project. We have a script that loads in a bunch of tweet data. The
> error happens when I drop the keyspace, then recreate it and the
> columnfamilies, and rerun the script to load the data again.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)