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

Benedict commented on CASSANDRA-7593:
-------------------------------------

This fix doesn't address the situation where we legitimately get an sstable 
with only range tombstones where the lowerbound has fewer components to the 
upper bounds (let's say we have a flood of DELETE from T where pk=K and a > X 
and (a,b) < (Y, Z))

Also, whilst we _may_ separately want to insert an EOC.START (since we now 
populate it, so presumably it should be populated, though it would be good to 
understand why this is now the case to document here for posterity), according 
to the commenting in the grabbing of min/max column names, we only care about 
clustering columns, so with or without the extra EOC we should not be fetching 
the whole of this BoundedComposite into min/max - we should only be fetching up 
to the number of clustering columns (0). Or we should be fetching the column 
name (and potentially any further components for sets/maps/etc.) from CellName 
as well.

> Errors when upgrading through several versions to 2.1
> -----------------------------------------------------
>
>                 Key: CASSANDRA-7593
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7593
>             Project: Cassandra
>          Issue Type: Bug
>         Environment: java 1.7
>            Reporter: Russ Hatch
>            Assignee: Marcus Eriksson
>            Priority: Critical
>             Fix For: 2.1.0
>
>
> I'm seeing two different errors cropping up in the dtest which upgrades a 
> cluster through several versions.
> This is the more common error:
> {noformat}
> ERROR [GossipStage:10] 2014-07-22 13:14:30,028 CassandraDaemon.java:168 - 
> Exception in thread Thread[GossipStage:10,5,main]
> java.lang.AssertionError: null
>         at 
> org.apache.cassandra.db.filter.SliceQueryFilter.shouldInclude(SliceQueryFilter.java:347)
>  ~[main/:na]
>         at 
> org.apache.cassandra.db.filter.QueryFilter.shouldInclude(QueryFilter.java:249)
>  ~[main/:na]
>         at 
> org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:249)
>  ~[main/:na]
>         at 
> org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:60)
>  ~[main/:na]
>         at 
> org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1873)
>  ~[main/:na]
>         at 
> org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1681)
>  ~[main/:na]
>         at org.apache.cassandra.db.Keyspace.getRow(Keyspace.java:345) 
> ~[main/:na]
>         at 
> org.apache.cassandra.db.SliceFromReadCommand.getRow(SliceFromReadCommand.java:59)
>  ~[main/:na]
>         at 
> org.apache.cassandra.cql3.statements.SelectStatement.readLocally(SelectStatement.java:293)
>  ~[main/:na]
>         at 
> org.apache.cassandra.cql3.statements.SelectStatement.executeInternal(SelectStatement.java:302)
>  ~[main/:na]
>         at 
> org.apache.cassandra.cql3.statements.SelectStatement.executeInternal(SelectStatement.java:60)
>  ~[main/:na]
>         at 
> org.apache.cassandra.cql3.QueryProcessor.executeInternal(QueryProcessor.java:263)
>  ~[main/:na]
>         at 
> org.apache.cassandra.db.SystemKeyspace.getPreferredIP(SystemKeyspace.java:514)
>  ~[main/:na]
>         at 
> org.apache.cassandra.net.OutboundTcpConnectionPool.<init>(OutboundTcpConnectionPool.java:51)
>  ~[main/:na]
>         at 
> org.apache.cassandra.net.MessagingService.getConnectionPool(MessagingService.java:522)
>  ~[main/:na]
>         at 
> org.apache.cassandra.net.MessagingService.getConnection(MessagingService.java:536)
>  ~[main/:na]
>         at 
> org.apache.cassandra.net.MessagingService.sendOneWay(MessagingService.java:689)
>  ~[main/:na]
>         at 
> org.apache.cassandra.net.MessagingService.sendReply(MessagingService.java:663)
>  ~[main/:na]
>         at 
> org.apache.cassandra.service.EchoVerbHandler.doVerb(EchoVerbHandler.java:40) 
> ~[main/:na]
>         at 
> org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:62) 
> ~[main/:na]
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>  ~[na:1.7.0_60]
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>  ~[na:1.7.0_60]
>         at java.lang.Thread.run(Thread.java:745) ~[na:1.7.0_60]
> {noformat}
> The same test sometimes fails with this exception instead:
> {noformat}
> ERROR [CompactionExecutor:4] 2014-07-22 16:18:21,008 CassandraDaemon.java:168 
> - Exception in thread Thread[CompactionExecutor:4,1,RMI Runtime]
> java.util.concurrent.RejectedExecutionException: Task 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask@7059d3e9 
> rejected from 
> org.apache.cassandra.concurrent.DebuggableScheduledThreadPoolExecutor@108f1504[Terminated,
>  pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 95]
>         at 
> java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:2048)
>  ~[na:1.7.0_60]
>         at 
> java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:821) 
> ~[na:1.7.0_60]
>         at 
> java.util.concurrent.ScheduledThreadPoolExecutor.delayedExecute(ScheduledThreadPoolExecutor.java:325)
>  ~[na:1.7.0_60]
>         at 
> java.util.concurrent.ScheduledThreadPoolExecutor.schedule(ScheduledThreadPoolExecutor.java:530)
>  ~[na:1.7.0_60]
>         at 
> java.util.concurrent.ScheduledThreadPoolExecutor.execute(ScheduledThreadPoolExecutor.java:619)
>  ~[na:1.7.0_60]
>         at 
> org.apache.cassandra.io.sstable.SSTableReader.scheduleTidy(SSTableReader.java:628)
>  ~[main/:na]
>         at 
> org.apache.cassandra.io.sstable.SSTableReader.tidy(SSTableReader.java:609) 
> ~[main/:na]
>         at 
> org.apache.cassandra.io.sstable.SSTableReader.releaseReference(SSTableReader.java:1596)
>  ~[main/:na]
>         at 
> org.apache.cassandra.db.DataTracker.replaceReaders(DataTracker.java:354) 
> ~[main/:na]
>         at 
> org.apache.cassandra.io.sstable.SSTableRewriter.abort(SSTableRewriter.java:200)
>  ~[main/:na]
>         at 
> org.apache.cassandra.db.compaction.CompactionTask.runWith(CompactionTask.java:192)
>  ~[main/:na]
>         at 
> org.apache.cassandra.io.util.DiskAwareRunnable.runMayThrow(DiskAwareRunnable.java:48)
>  ~[main/:na]
>         at 
> org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28) 
> ~[main/:na]
>         at 
> org.apache.cassandra.db.compaction.CompactionTask.executeInternal(CompactionTask.java:74)
>  ~[main/:na]
>         at 
> org.apache.cassandra.db.compaction.AbstractCompactionTask.execute(AbstractCompactionTask.java:59)
>  ~[main/:na]
>         at 
> org.apache.cassandra.db.compaction.CompactionManager$BackgroundCompactionTask.run(CompactionManager.java:236)
>  ~[main/:na]
>         at 
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) 
> ~[na:1.7.0_60]
>         at java.util.concurrent.FutureTask.run(FutureTask.java:262) 
> ~[na:1.7.0_60]
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>  ~[na:1.7.0_60]
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>  [na:1.7.0_60]
>         at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60]
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to