[ 
https://issues.apache.org/jira/browse/CASSANDRA-5151?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13575041#comment-13575041
 ] 

Michael Kjellman edited comment on CASSANDRA-5151 at 2/9/13 2:06 AM:
---------------------------------------------------------------------

[~yukim] looks like there might still be an unexpected condition here

{code}
java.lang.IllegalStateException: Unfinished compactions reference missing 
sstables. This should never happen since compactions are marked finished before 
we start removing the old sstables.
        at 
org.apache.cassandra.db.ColumnFamilyStore.removeUnfinishedCompactionLeftovers(ColumnFamilyStore.java:444)
        at 
org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:213)
        at 
org.apache.cassandra.service.CassandraDaemon.init(CassandraDaemon.java:324)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:601)
        at 
org.apache.commons.daemon.support.DaemonLoader.load(DaemonLoader.java:188)
Cannot load daemon
Service exit with a return value of 3
{code}
                
      was (Author: mkjellman):
    [~yukim]

looks like this isn't fool proof.

{code}
java.lang.IllegalStateException: Unfinished compactions reference missing 
sstables. This should never happen since compactions are marked finished before 
we start removing the old sstables.
        at 
org.apache.cassandra.db.ColumnFamilyStore.removeUnfinishedCompactionLeftovers(ColumnFamilyStore.java:444)
        at 
org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:213)
        at 
org.apache.cassandra.service.CassandraDaemon.init(CassandraDaemon.java:324)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:601)
        at 
org.apache.commons.daemon.support.DaemonLoader.load(DaemonLoader.java:188)
Cannot load daemon
Service exit with a return value of 3
{code}
                  
> Implement better way of eliminating compaction left overs.
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-5151
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5151
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.1.3
>            Reporter: Yuki Morishita
>            Assignee: Yuki Morishita
>             Fix For: 1.2.2
>
>         Attachments: 5151-1.2.txt, 5151-v2.txt
>
>
> This is from discussion in CASSANDRA-5137. Currently we skip loading SSTables 
> that are left over from incomplete compaction to not over-count counter, but 
> the way we track compaction completion is not secure.
> One possible solution is to create system CF like:
> {code}
> create table compaction_log (
>   id uuid primary key,
>   inputs set<int>,
>   outputs set<int>
> );
> {code}
> to track incomplete compaction.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to