[
https://issues.apache.org/jira/browse/CASSANDRA-1458?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12905770#action_12905770
]
Christopher Gist commented on CASSANDRA-1458:
---------------------------------------------
The cause of the failed delete is unknown. I was running Linux as in the
updated environment.
> SSTable cleanup killed by IllegalStateException
> -----------------------------------------------
>
> Key: CASSANDRA-1458
> URL: https://issues.apache.org/jira/browse/CASSANDRA-1458
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Affects Versions: 0.7 beta 1
> Environment: trunk from 2010-08-31
> Linux 2.6.18-164.2.1.el5.plus #1 SMP x86_64
> OpenJDK 64-Bit Server VM (build 1.6.0-b09)
> Reporter: Christopher Gist
> Priority: Minor
> Fix For: 0.7 beta 2
>
>
> Compacted SSTables were not being deleted even after a forced GC. The
> following stack traces were observed:
> ERROR [SSTABLE-CLEANUP-TIMER] 2010-09-01 15:54:07,254 CassandraDaemon.java
> (line 85) Uncaught exception in thread Thread[SSTABLE-CLEANUP-TIMER,5,main]
> java.lang.IllegalStateException: Task already scheduled or cancelled
> at java.util.Timer.sched(Timer.java:380)
> at java.util.Timer.schedule(Timer.java:192)
> at
> org.apache.cassandra.io.sstable.SSTableDeletingReference$CleanupTask.run(SSTableDeletingReference.java:86)
> at java.util.TimerThread.mainLoop(Timer.java:534)
> at java.util.TimerThread.run(Timer.java:484)
> ERROR [SSTABLE-DELETER] 2010-09-01 16:20:22,587 CassandraDaemon.java (line
> 85) Uncaught exception in thread Thread[SSTABLE-DELETER,5,main]
> java.lang.IllegalStateException: Timer already cancelled.
> at java.util.Timer.sched(Timer.java:376)
> at java.util.Timer.schedule(Timer.java:192)
> at
> org.apache.cassandra.io.sstable.SSTableDeletingReference.cleanup(SSTableDeletingReference.java:70)
> at
> org.apache.cassandra.io.sstable.SSTableReader$1$1.run(SSTableReader.java:85)
> at java.lang.Thread.run(Thread.java:636)
> If the SSTableDeletingReference$CleanupTask cannot delete a file, it
> reschedules itself for later. TimerTasks (which CleanupTask subclasses) are
> intended to be scheduled only once and will cause an IllegalStateException in
> the timer when it tries to schedule itself again. The exception causes timer
> to effectively cancel itself and the next attempt to schedule a task will
> cause an IllegalStateException in the SSTABLE-DELETER.
> It appears this could be fixed by scheduling a new CleanupTask instead of the
> same one that failed (SSTableDeletingReference.java:86).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.