You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Andriy Denysenko (JIRA)" <ji...@apache.org> on 2011/07/30 15:23:10 UTC

[jira] [Issue Comment Edited] (CASSANDRA-2968) AssertionError during compaction of CF with counter columns

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

Andriy Denysenko edited comment on CASSANDRA-2968 at 7/30/11 1:21 PM:
----------------------------------------------------------------------

Reproducible test case for this bug:

create column family AffiliateActivity with default_validation_class=CounterColumnType
   and key_validation_class=LongType and comparator=AsciiType
   and memtable_throughput=30
   and memtable_operations=0.5
   and replicate_on_write=true;

put AffiliateActivity-g-195-Data.db and AffiliateActivity-g-195-Index.db(attached) into cassandra data directory for some keyspace and run nodetool scrub

Those AffiliateActivity-g-195 data files were originally created with cassandra 0.8

java.io.IOError: java.lang.AssertionError
	at org.apache.cassandra.db.compaction.CompactionManager.scrubOne(CompactionManager.java:775)
	at org.apache.cassandra.db.compaction.CompactionManager.doScrub(CompactionManager.java:631)
	at org.apache.cassandra.db.compaction.CompactionManager.access$600(CompactionManager.java:65)
	at org.apache.cassandra.db.compaction.CompactionManager$3.call(CompactionManager.java:251)
	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:679)
Caused by: java.lang.AssertionError
	at org.apache.cassandra.db.context.CounterContext.removeOldShards(CounterContext.java:593)
	at org.apache.cassandra.db.CounterColumn.removeOldShards(CounterColumn.java:237)
	at org.apache.cassandra.db.CounterColumn.removeOldShards(CounterColumn.java:256)
	at org.apache.cassandra.db.compaction.PrecompactedRow.<init>(PrecompactedRow.java:88)
	at org.apache.cassandra.db.compaction.CompactionController.getCompactedRow(CompactionController.java:140)
	at org.apache.cassandra.db.compaction.CompactionController.getCompactedRow(CompactionController.java:146)
	at org.apache.cassandra.db.compaction.CompactionManager.scrubOne(CompactionManager.java:719)
	... 8 more




      was (Author: andrden):
    Reproducible test case for this bug:

create column family AffiliateActivity with default_validation_class=CounterColumnType
   and key_validation_class=LongType and comparator=AsciiType
   and memtable_throughput=30
   and memtable_operations=0.5
   and replicate_on_write=true;

put AffiliateActivity-g-195-Data.db and AffiliateActivity-g-195-Index.db into cassandra data directory for some keyspace and run nodetool scrub

Those AffiliateActivity-g-195 data files were originally created with cassandra 0.8

java.io.IOError: java.lang.AssertionError
	at org.apache.cassandra.db.compaction.CompactionManager.scrubOne(CompactionManager.java:775)
	at org.apache.cassandra.db.compaction.CompactionManager.doScrub(CompactionManager.java:631)
	at org.apache.cassandra.db.compaction.CompactionManager.access$600(CompactionManager.java:65)
	at org.apache.cassandra.db.compaction.CompactionManager$3.call(CompactionManager.java:251)
	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:679)
Caused by: java.lang.AssertionError
	at org.apache.cassandra.db.context.CounterContext.removeOldShards(CounterContext.java:593)
	at org.apache.cassandra.db.CounterColumn.removeOldShards(CounterColumn.java:237)
	at org.apache.cassandra.db.CounterColumn.removeOldShards(CounterColumn.java:256)
	at org.apache.cassandra.db.compaction.PrecompactedRow.<init>(PrecompactedRow.java:88)
	at org.apache.cassandra.db.compaction.CompactionController.getCompactedRow(CompactionController.java:140)
	at org.apache.cassandra.db.compaction.CompactionController.getCompactedRow(CompactionController.java:146)
	at org.apache.cassandra.db.compaction.CompactionManager.scrubOne(CompactionManager.java:719)
	... 8 more



  
> AssertionError during compaction of CF with counter columns
> -----------------------------------------------------------
>
>                 Key: CASSANDRA-2968
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2968
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8.2
>         Environment: CentOS release 5.6
>            Reporter: Taras Puchko
>         Attachments: AffiliateActivity-g-195-Data.db, AffiliateActivity-g-195-Index.db
>
>
> Having upgraded from 0.8.0 to 0.8.2 we ran nodetool compact and got
> Error occured during compaction
> java.util.concurrent.ExecutionException: java.lang.AssertionError
>         at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
>         at java.util.concurrent.FutureTask.get(FutureTask.java:83)
>         at org.apache.cassandra.db.compaction.CompactionManager.performMajor(CompactionManager.java:277)
>         at org.apache.cassandra.db.ColumnFamilyStore.forceMajorCompaction(ColumnFamilyStore.java:1762)
>         at org.apache.cassandra.service.StorageService.forceTableCompaction(StorageService.java:1358)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:93)
>         at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:27)
>         at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:208)
>         at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:120)
>         at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:262)
>         at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
>         at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
>         at javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1427)
>         at javax.management.remote.rmi.RMIConnectionImpl.access$200(RMIConnectionImpl.java:72)
>         at javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1265)
>         at javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1360)
>         at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:788)
>         at sun.reflect.GeneratedMethodAccessor24.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:597)
>         at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:305)
>         at sun.rmi.transport.Transport$1.run(Transport.java:159)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at sun.rmi.transport.Transport.serviceCall(Transport.java:155)
>         at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
>         at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>         at java.lang.Thread.run(Thread.java:662)
> Caused by: java.lang.AssertionError                                                                                                                                                                                                          
>         at org.apache.cassandra.db.context.CounterContext.removeOldShards(CounterContext.java:593)                                                                                                                                           
>         at org.apache.cassandra.db.CounterColumn.removeOldShards(CounterColumn.java:237)                                                                                                                                                     
>         at org.apache.cassandra.db.CounterColumn.removeOldShards(CounterColumn.java:256)                                                                                                                                                     
>         at org.apache.cassandra.db.compaction.PrecompactedRow.<init>(PrecompactedRow.java:88)                                                                                                                                                
>         at org.apache.cassandra.db.compaction.CompactionController.getCompactedRow(CompactionController.java:140)                                                                                                                            
>         at org.apache.cassandra.db.compaction.CompactionIterator.getReduced(CompactionIterator.java:123)                                                                                                                                     
>         at org.apache.cassandra.db.compaction.CompactionIterator.getReduced(CompactionIterator.java:43)                                                                                                                                      
>         at org.apache.cassandra.utils.ReducingIterator.computeNext(ReducingIterator.java:74)                                                                                                                                                 
>         at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:140)                                                                                                                                            
>         at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:135)                                                                                                                                                     
>         at org.apache.commons.collections.iterators.FilterIterator.setNextObject(FilterIterator.java:183)                                                                                                                                    
>         at org.apache.commons.collections.iterators.FilterIterator.hasNext(FilterIterator.java:94)                                                                                                                                           
>         at org.apache.cassandra.db.compaction.CompactionManager.doCompactionWithoutSizeEstimation(CompactionManager.java:569)                                                                                                                
>         at org.apache.cassandra.db.compaction.CompactionManager.doCompaction(CompactionManager.java:506)                                                                                                                                     
>         at org.apache.cassandra.db.compaction.CompactionManager$4.call(CompactionManager.java:319)                                                                                                                                           
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)                                                                                                                                                                
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)                                                                                                                                                                          
>         ... 3 more

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira