[
https://issues.apache.org/jira/browse/CASSANDRA-5799?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13721745#comment-13721745
]
Eric Falcao commented on CASSANDRA-5799:
----------------------------------------
I was excited to see this fix in 1.2.7 but I fear it's still an issue. Here is
a stack I just saw in my freshly upgraded 1.2.7 cluster:
{code}
ERROR [CompactionExecutor:17] 2013-07-27 17:24:31,132 CassandraDaemon.java
(line 192) Exception in thread Thread[CompactionExecutor:17,1,RMI Runtime]
java.lang.AssertionError: originally calculated column size of 516898177 but
now it is 516898234
at
org.apache.cassandra.db.compaction.LazilyCompactedRow.write(LazilyCompactedRow.java:135)
at
org.apache.cassandra.io.sstable.SSTableWriter.append(SSTableWriter.java:160)
at
org.apache.cassandra.db.compaction.CompactionTask.runWith(CompactionTask.java:162)
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.executeInternal(CompactionTask.java:58)
at
org.apache.cassandra.db.compaction.AbstractCompactionTask.execute(AbstractCompactionTask.java:60)
at
org.apache.cassandra.db.compaction.CompactionManager$6.runMayThrow(CompactionManager.java:355)
at
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28)
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:722)
{code}
Does it matter that my SSTables are mostly on version ic?
FWIW, I've been unable to compact this CF since we went to C* 1.2. I'll attach
other JIRAs that may be related.
> Column can expire while lazy compacting it...
> ---------------------------------------------
>
> Key: CASSANDRA-5799
> URL: https://issues.apache.org/jira/browse/CASSANDRA-5799
> Project: Cassandra
> Issue Type: Bug
> Affects Versions: 1.2.6
> Reporter: Fabien Rousseau
> Assignee: Sylvain Lebresne
> Fix For: 1.2.7
>
> Attachments: 5799.txt
>
>
> Using TTL + range tombstones can lead to failure while lazy compacting rows.
> Scenario to reproduce :
> - create an SSTable with one row and some columns and a TTL of 8 seconds
> - wait one second
> - create a second SSTable with the same rowkey as above, and add a range
> tombstone
> - start the first pass of the lazy compaction before the columns with TTL
> are expired
> - wait 10 seconds (enough for columns with TTL to expire)
> - continue lazy expiration
> - the following assertion will fail :
> [junit] junit.framework.AssertionFailedError: originally calculated
> column size of 1379 but now it is 1082
> [junit] at
> org.apache.cassandra.db.compaction.LazilyCompactedRow.write(LazilyCompactedRow.java:150)
--
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