On Mon, Jun 3, 2013 at 11:57 AM, John R. Frank <j...@mit.edu> wrote:
> Is it considered normal for cassandra to experience this error:
>
> ERROR [NonPeriodicTasks:1] 2013-06-03 18:17:05,374 SSTableDeletingTask.java
> (line 72) Unable to delete
> /raid0/cassandra/data/<KEYSPACE>/<CF>/<KEYSPACE>-<CF>-ic-19-Data.db (it will
> be removed on server restart; we'll also retry after GC)

cassandra//src/java/org/apache/cassandra/io/sstable/SSTableDeletingTask.java
"
       File datafile = new File(desc.filenameFor(Component.DATA));
        if (!datafile.delete())
        {
            logger.error("Unable to delete " + datafile + " (it will
be removed on server restart; we'll also retry after GC)");
            failedTasks.add(this);
            return;
        }
"

There are contexts where it is appropriate for Cassandra to be unable
to delete a file using io.File.delete.

"
// Deleting sstables is tricky because the mmapping might not have
been finalized yet,
// and delete will fail (on Windows) until it is (we only force the
unmapping on SUN VMs).
// Additionally, we need to make sure to delete the data file first,
so on restart the others
// will be recognized as GCable.
"

Do the files get deleted on GC/server restart?

> This is on the DataStax EC2 AMI in a two-node cluster.  After deleting 1,000
> rows from a CF with 20,000 rows, the DB becomes slow, and I'm trying to
> figure out why.  Could this error message be pointing at a proximate cause?

Almost certainly not. By the time that a sstable file is subject to
deletion, it should no longer be "live". When it is no longer "live"
it is not in the read path.

You can verify this by using nodetool getsstables on a given key.

What operation are you trying to do when the "DB becomes slow"?

=Rob

Reply via email to