You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Marcus Eriksson (JIRA)" <ji...@apache.org> on 2016/08/11 10:49:20 UTC

[jira] [Updated] (CASSANDRA-12413) CompactionsCQLTest.testTriggerMinorCompactionDTCS fails

     [ https://issues.apache.org/jira/browse/CASSANDRA-12413?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Marcus Eriksson updated CASSANDRA-12413:
----------------------------------------
         Reviewer: Carl Yeksigian
    Fix Version/s: 3.9
           Status: Patch Available  (was: Open)

have been multiplexing this with debug logs (3x250 times) - it failed once with this:
{code}
ERROR [Strong-Reference-Leak-Detector:1] 2016-08-10 16:32:51,086 Strong self-ref loop detected [/home/automaton/cassandra/build/test/cassandra/data:0/system/compaction_history-b4dbb7b4dc493fb5b3bfce6e434832ca/mc-10-big, private volatile java.lang.Runnable org.apache.cassandra.io.sstable.format.SSTableReader$GlobalTidy.obsoletion-org.apache.cassandra.db.lifecycle.LogTransaction$SSTableTidier, private final org.apache.cassandra.db.lifecycle.Tracker org.apache.cassandra.db.lifecycle.LogTransaction$SSTableTidier.tracker-org.apache.cassandra.db.lifecycle.Tracker, public final java.util.Collection org.apache.cassandra.db.lifecycle.Tracker.subscribers-java.util.concurrent.CopyOnWriteArrayList, public final java.util.Collection org.apache.cassandra.db.lifecycle.Tracker.subscribers-org.apache.cassandra.db.compaction.CompactionStrategyManager, public final org.apache.cassandra.db.compaction.CompactionLogger org.apache.cassandra.db.compaction.CompactionStrategyManager.compactionLogger-org.apache.cassandra.db.compaction.CompactionLogger, private final org.apache.cassandra.db.ColumnFamilyStore org.apache.cassandra.db.compaction.CompactionLogger.cfs-org.apache.cassandra.db.ColumnFamilyStore, public final org.apache.cassandra.db.Keyspace org.apache.cassandra.db.ColumnFamilyStore.keyspace-org.apache.cassandra.db.Keyspace, private final java.util.concurrent.ConcurrentMap org.apache.cassandra.db.Keyspace.columnFamilyStores-java.util.concurrent.ConcurrentHashMap, private final java.util.concurrent.ConcurrentMap org.apache.cassandra.db.Keyspace.columnFamilyStores-org.apache.cassandra.db.ColumnFamilyStore, private final org.apache.cassandra.db.lifecycle.Tracker org.apache.cassandra.db.ColumnFamilyStore.data-org.apache.cassandra.db.lifecycle.Tracker, final java.util.concurrent.atomic.AtomicReference org.apache.cassandra.db.lifecycle.Tracker.view-java.util.concurrent.atomic.AtomicReference, private volatile java.lang.Object java.util.concurrent.atomic.AtomicReference.value-org.apache.cassandra.db.lifecycle.View, public final java.util.List org.apache.cassandra.db.lifecycle.View.liveMemtables-com.google.common.collect.SingletonImmutableList, final transient java.lang.Object com.google.common.collect.SingletonImmutableList.element-org.apache.cassandra.db.Memtable, private final org.apache.cassandra.utils.memory.MemtableAllocator org.apache.cassandra.db.Memtable.allocator-org.apache.cassandra.utils.memory.NativeAllocator, private final org.apache.cassandra.utils.memory.MemtableAllocator$SubAllocator org.apache.cassandra.utils.memory.MemtableAllocator.onHeap-org.apache.cassandra.utils.memory.MemtableAllocator$SubAllocator, private final org.apache.cassandra.utils.memory.MemtablePool$SubPool org.apache.cassandra.utils.memory.MemtableAllocator$SubAllocator.parent-org.apache.cassandra.utils.memory.MemtablePool$SubPool, final org.apache.cassandra.utils.memory.MemtablePool org.apache.cassandra.utils.memory.MemtablePool$SubPool.this$0-org.apache.cassandra.utils.memory.NativePool, final org.apache.cassandra.utils.memory.MemtableCleanerThread org.apache.cassandra.utils.memory.MemtablePool.cleaner-org.apache.cassandra.utils.memory.MemtableCleanerThread, private java.lang.ThreadGroup java.lang.Thread.group-java.lang.ThreadGroup, java.lang.Thread[] java.lang.ThreadGroup.threads-[Ljava.lang.Thread;, java.lang.Thread[] java.lang.ThreadGroup.threads-io.netty.util.concurrent.FastThreadLocalThread, private java.lang.Runnable java.lang.Thread.target-java.util.concurrent.ThreadPoolExecutor$Worker, final java.util.concurrent.ThreadPoolExecutor java.util.concurrent.ThreadPoolExecutor$Worker.this$0-org.apache.cassandra.concurrent.DebuggableScheduledThreadPoolExecutor, private final java.util.concurrent.BlockingQueue java.util.concurrent.ThreadPoolExecutor.workQueue-java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue, private final java.util.concurrent.BlockingQueue java.util.concurrent.ThreadPoolExecutor.workQueue-java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask, private java.util.concurrent.Callable java.util.concurrent.FutureTask.callable-java.util.concurrent.Executors$RunnableAdapter, final java.lang.Runnable java.util.concurrent.Executors$RunnableAdapter.task-org.apache.cassandra.io.sstable.format.SSTableReader$InstanceTidier$1, final org.apache.cassandra.io.sstable.format.SSTableReader$InstanceTidier org.apache.cassandra.io.sstable.format.SSTableReader$InstanceTidier$1.this$0-org.apache.cassandra.io.sstable.format.SSTableReader$InstanceTidier, private org.apache.cassandra.utils.concurrent.Ref org.apache.cassandra.io.sstable.format.SSTableReader$InstanceTidier.globalRef-org.apache.cassandra.utils.concurrent.Ref]
{code}
So I made weak references to the column family store and compaction strategy manager [here|https://github.com/krummas/cassandra/commits/marcuse/12413] to avoid the strong reference loops

tests:
http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-12413-dtest/
http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-12413-testall/

also ran it 250 times [here|http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-debuglogtest-3.9-testall/4/]

> CompactionsCQLTest.testTriggerMinorCompactionDTCS fails
> -------------------------------------------------------
>
>                 Key: CASSANDRA-12413
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12413
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Joshua McKenzie
>            Assignee: Marcus Eriksson
>              Labels: unittest
>             Fix For: 3.9
>
>
> [Link|http://cassci.datastax.com/job/cassandra-3.9_testall/lastCompletedBuild/testReport/org.apache.cassandra.db.compaction/CompactionsCQLTest/testTriggerMinorCompactionDTCS/]
> Error Message
> No minor compaction triggered in 5000ms
> Stacktrace
> {noformat}
> junit.framework.AssertionFailedError: No minor compaction triggered in 5000ms
> 	at org.apache.cassandra.db.compaction.CompactionsCQLTest.waitForMinor(CompactionsCQLTest.java:247)
> 	at org.apache.cassandra.db.compaction.CompactionsCQLTest.testTriggerMinorCompactionDTCS(CompactionsCQLTest.java:72)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)