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

Ekaterina Dimitrova edited comment on CASSANDRA-19222 at 2/27/24 5:53 PM:
--------------------------------------------------------------------------

Jenkins has something like 30 runs history and the issue is reported observed 
in CircleCI, so I ran some tests trying to reproduce it there with no success 
running repeated runs on current 5.0 and trunk plus on top of the original 
commit where it was reported (thinking whether it might have been just fixed 
somewhere in between):

[https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra?branch=19222-5.0]

[https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra?branch=19222-trunk]

[https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra?branch=19197-5.0]

[https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra?branch=19197-trunk]

We do have the leak detector trace in the description which is what we use to 
solve the strong self-ref loops but I am not sure what test to add to reproduce 
it (so we can test also potential fix). [~jlewandowski] , any thoughts here? 
You've worked way more in that part of the code than I've. 


was (Author: e.dimitrova):
Jenkins has something like 30 runs history and the issue is reported observed 
in CircleCI, so I ran some tests trying to reproduce it there with no success 
running repeated runs on current 5.0 and trunk plus on top of the original 
commit where it was reported (thinking whether it might have been just fixed 
somewhere in between):

[https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra?branch=19222-5.0]

[https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra?branch=19222-trunk]

[https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra?branch=19197-5.0]

[https://app.circleci.com/pipelines/github/ekaterinadimitrova2/cassandra?branch=19197-trunk]

We do have the leak detector trace in the description which is what we use to 
solve the strong self-ref loops but I am not sure what test to add to reproduce 
it. [~jlewandowski] , any thoughts here? You've been working way more in that 
part of the code than me. 

> Leak - Strong self-ref loop detected in BTI
> -------------------------------------------
>
>                 Key: CASSANDRA-19222
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-19222
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Local/SSTable
>            Reporter: Jacek Lewandowski
>            Priority: Normal
>             Fix For: 5.0-rc, 5.x
>
>
> https://app.circleci.com/pipelines/github/jacek-lewandowski/cassandra/1233/workflows/bb617340-f1da-4550-9c87-5541469972c4/jobs/62534/tests
> {noformat}
> ERROR [Strong-Reference-Leak-Detector:1] 2023-12-21 09:50:33,072 Strong 
> self-ref loop detected 
> [/tmp/cassandra/build/test/cassandra/data/system/IndexInfo-9f5c6374d48532299a0a5094af9ad1e3/oa-1-big
> private java.util.List 
> org.apache.cassandra.io.sstable.format.SSTableReader$InstanceTidier.closeables-java.util.ArrayList
> transient java.lang.Object[] 
> java.util.ArrayList.elementData-[Ljava.lang.Object;
> transient java.lang.Object[] 
> java.util.ArrayList.elementData-org.apache.cassandra.io.util.FileHandle
> final org.apache.cassandra.utils.concurrent.Ref 
> org.apache.cassandra.utils.concurrent.SharedCloseableImpl.ref-org.apache.cassandra.utils.concurrent.Ref
> final org.apache.cassandra.utils.concurrent.Ref$State 
> org.apache.cassandra.utils.concurrent.Ref.state-org.apache.cassandra.utils.concurrent.Ref$State
> final org.apache.cassandra.utils.concurrent.Ref$GlobalState 
> org.apache.cassandra.utils.concurrent.Ref$State.globalState-org.apache.cassandra.utils.concurrent.Ref$GlobalState
> private final org.apache.cassandra.utils.concurrent.RefCounted$Tidy 
> org.apache.cassandra.utils.concurrent.Ref$GlobalState.tidy-org.apache.cassandra.io.util.FileHandle$Cleanup
> final java.util.Optional 
> org.apache.cassandra.io.util.FileHandle$Cleanup.chunkCache-java.util.Optional
> private final java.lang.Object 
> java.util.Optional.value-org.apache.cassandra.cache.ChunkCache
> private final org.apache.cassandra.utils.memory.BufferPool 
> org.apache.cassandra.cache.ChunkCache.bufferPool-org.apache.cassandra.utils.memory.BufferPool
> private final java.util.Set 
> org.apache.cassandra.utils.memory.BufferPool.localPoolReferences-java.util.Collections$SetFromMap
> private final java.util.Map 
> java.util.Collections$SetFromMap.m-java.util.concurrent.ConcurrentHashMap
> private final java.util.Map 
> java.util.Collections$SetFromMap.m-org.apache.cassandra.utils.memory.BufferPool$LocalPoolRef
> private final org.apache.cassandra.utils.memory.BufferPool$MicroQueueOfChunks 
> org.apache.cassandra.utils.memory.BufferPool$LocalPoolRef.chunks-org.apache.cassandra.utils.memory.BufferPool$MicroQueueOfChunks
> private org.apache.cassandra.utils.memory.BufferPool$Chunk 
> org.apache.cassandra.utils.memory.BufferPool$MicroQueueOfChunks.chunk0-org.apache.cassandra.utils.memory.BufferPool$Chunk
> private volatile org.apache.cassandra.utils.memory.BufferPool$LocalPool 
> org.apache.cassandra.utils.memory.BufferPool$Chunk.owner-org.apache.cassandra.utils.memory.BufferPool$LocalPool
> private final java.lang.Thread 
> org.apache.cassandra.utils.memory.BufferPool$LocalPool.owningThread-io.netty.util.concurrent.FastThreadLocalThread
> private java.lang.Runnable 
> java.lang.Thread.target-io.netty.util.concurrent.FastThreadLocalRunnable
> private final java.lang.Runnable 
> io.netty.util.concurrent.FastThreadLocalRunnable.runnable-java.util.concurrent.ThreadPoolExecutor$Worker
> final java.util.concurrent.ThreadPoolExecutor 
> java.util.concurrent.ThreadPoolExecutor$Worker.this$0-org.apache.cassandra.concurrent.ScheduledThreadPoolExecutorPlus
> 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
> private final java.lang.Runnable 
> java.util.concurrent.Executors$RunnableAdapter.task-org.apache.cassandra.concurrent.ExecutionFailure$1
> final java.lang.Runnable 
> org.apache.cassandra.concurrent.ExecutionFailure$1.val$wrap-org.apache.cassandra.hints.HintsService$$Lambda$1142/0x0000000801576aa0
> private final org.apache.cassandra.hints.HintsService 
> org.apache.cassandra.hints.HintsService$$Lambda$1142/0x0000000801576aa0.arg$1-org.apache.cassandra.hints.HintsService
> private final org.apache.cassandra.hints.HintsWriteExecutor 
> org.apache.cassandra.hints.HintsService.writeExecutor-org.apache.cassandra.hints.HintsWriteExecutor
> private final org.apache.cassandra.concurrent.ExecutorPlus 
> org.apache.cassandra.hints.HintsWriteExecutor.executor-org.apache.cassandra.concurrent.SingleThreadExecutorPlus
> private final java.util.HashSet 
> java.util.concurrent.ThreadPoolExecutor.workers-java.util.HashSet
> private transient java.util.HashMap java.util.HashSet.map-java.util.HashMap
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-[Ljava.util.HashMap$Node;
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-java.util.HashMap$Node
> final java.lang.Object 
> java.util.HashMap$Node.key-java.util.concurrent.ThreadPoolExecutor$Worker
> final java.lang.Thread 
> java.util.concurrent.ThreadPoolExecutor$Worker.thread-io.netty.util.concurrent.FastThreadLocalThread
> private java.lang.ThreadGroup java.lang.Thread.group-java.lang.ThreadGroup
> private final java.lang.ThreadGroup 
> java.lang.ThreadGroup.parent-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-io.netty.util.concurrent.FastThreadLocalRunnable
> private final java.lang.Runnable 
> io.netty.util.concurrent.FastThreadLocalRunnable.runnable-org.apache.cassandra.concurrent.InfiniteLoopExecutor$$Lambda$241/0x000000080128b138
> private final org.apache.cassandra.concurrent.InfiniteLoopExecutor 
> org.apache.cassandra.concurrent.InfiniteLoopExecutor$$Lambda$241/0x000000080128b138.arg$1-org.apache.cassandra.concurrent.InfiniteLoopExecutor
> private final org.apache.cassandra.concurrent.Interruptible$Task 
> org.apache.cassandra.concurrent.InfiniteLoopExecutor.task-org.apache.cassandra.tcm.log.LocalLog$Async$AsyncRunnable
> final org.apache.cassandra.tcm.log.LocalLog$Async 
> org.apache.cassandra.tcm.log.LocalLog$Async$AsyncRunnable.this$0-org.apache.cassandra.tcm.log.LocalLog$Async
> protected final java.util.concurrent.atomic.AtomicReference 
> org.apache.cassandra.tcm.log.LocalLog.committed-java.util.concurrent.atomic.AtomicReference
> private volatile java.lang.Object 
> java.util.concurrent.atomic.AtomicReference.value-org.apache.cassandra.tcm.ClusterMetadata
> public final org.apache.cassandra.schema.DistributedSchema 
> org.apache.cassandra.tcm.ClusterMetadata.schema-org.apache.cassandra.schema.DistributedSchema
> private final org.apache.cassandra.schema.Keyspaces 
> org.apache.cassandra.schema.DistributedSchema.keyspaces-org.apache.cassandra.schema.Keyspaces
> private final org.apache.cassandra.utils.btree.BTreeMap 
> org.apache.cassandra.schema.Keyspaces.keyspaces-org.apache.cassandra.utils.btree.BTreeMap
> protected final java.lang.Object[] 
> org.apache.cassandra.utils.btree.AbstractBTreeMap.tree-[Ljava.lang.Object;
> protected final java.lang.Object[] 
> org.apache.cassandra.utils.btree.AbstractBTreeMap.tree-org.apache.cassandra.utils.btree.AbstractBTreeMap$Entry
> private java.lang.Object 
> java.util.AbstractMap$SimpleEntry.value-org.apache.cassandra.schema.KeyspaceMetadata
> public final org.apache.cassandra.schema.Tables 
> org.apache.cassandra.schema.KeyspaceMetadata.tables-org.apache.cassandra.schema.Tables
> private final com.google.common.collect.ImmutableMap 
> org.apache.cassandra.schema.Tables.tables-com.google.common.collect.RegularImmutableMap
> final transient java.util.Map$Entry[] 
> com.google.common.collect.RegularImmutableMap.entries-[Ljava.util.Map$Entry;
> final transient java.util.Map$Entry[] 
> com.google.common.collect.RegularImmutableMap.entries-com.google.common.collect.ImmutableMapEntry
> final java.lang.Object 
> com.google.common.collect.ImmutableEntry.value-org.apache.cassandra.schema.TableMetadata
> public org.apache.cassandra.schema.TableMetadataRef 
> org.apache.cassandra.schema.TableMetadata.ref-org.apache.cassandra.schema.TableMetadataRef$2
> final org.apache.cassandra.schema.TableMetadataRef 
> org.apache.cassandra.schema.TableMetadataRef$2.val$wrapped-org.apache.cassandra.schema.TableMetadataRef
> private final org.apache.cassandra.schema.SchemaProvider 
> org.apache.cassandra.schema.TableMetadataRef.schema-org.apache.cassandra.schema.Schema
> private final java.util.Map 
> org.apache.cassandra.schema.Schema.localKeyspaceInstances-java.util.HashMap
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-[Ljava.util.HashMap$Node;
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-java.util.HashMap$Node
> java.lang.Object 
> java.util.HashMap$Node.value-org.apache.cassandra.schema.Schema$LazyVariable
> private final java.util.concurrent.atomic.AtomicReference 
> org.apache.cassandra.schema.Schema$LazyVariable.ref-java.util.concurrent.atomic.AtomicReference
> private volatile java.lang.Object 
> java.util.concurrent.atomic.AtomicReference.value-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
> private final java.util.List 
> org.apache.cassandra.db.lifecycle.Tracker.subscribers-java.util.concurrent.CopyOnWriteArrayList
> private final java.util.List 
> org.apache.cassandra.db.lifecycle.Tracker.subscribers-org.apache.cassandra.service.SSTablesGlobalTracker
> private final java.util.Set 
> org.apache.cassandra.service.SSTablesGlobalTracker.subscribers-java.util.concurrent.CopyOnWriteArraySet
> private final java.util.Set 
> org.apache.cassandra.service.SSTablesGlobalTracker.subscribers-org.apache.cassandra.service.StorageService$$Lambda$1150/0x000000080157e898
> private final org.apache.cassandra.service.StorageService 
> org.apache.cassandra.service.StorageService$$Lambda$1150/0x000000080157e898.arg$1-org.apache.cassandra.service.StorageService
> private java.lang.Thread 
> org.apache.cassandra.service.StorageService.drainOnShutdown-io.netty.util.concurrent.FastThreadLocalThread
> 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 io.netty.util.internal.InternalThreadLocalMap 
> io.netty.util.concurrent.FastThreadLocalThread.threadLocalMap-io.netty.util.internal.InternalThreadLocalMap
> private java.lang.Object[] 
> io.netty.util.internal.InternalThreadLocalMap.indexedVariables-[Ljava.lang.Object;
> private java.lang.Object[] 
> io.netty.util.internal.InternalThreadLocalMap.indexedVariables-io.netty.channel.epoll.EpollEventLoop
> private final io.netty.util.collection.IntObjectMap 
> io.netty.channel.epoll.EpollEventLoop.channels-io.netty.util.collection.IntObjectHashMap
> private java.lang.Object[] 
> io.netty.util.collection.IntObjectHashMap.values-[Ljava.lang.Object;
> private java.lang.Object[] 
> io.netty.util.collection.IntObjectHashMap.values-io.netty.channel.epoll.EpollServerSocketChannel
> private final io.netty.channel.DefaultChannelPipeline 
> io.netty.channel.AbstractChannel.pipeline-io.netty.channel.DefaultChannelPipeline
> final io.netty.channel.DefaultChannelPipeline$HeadContext 
> io.netty.channel.DefaultChannelPipeline.head-io.netty.channel.DefaultChannelPipeline$HeadContext
> volatile io.netty.channel.AbstractChannelHandlerContext 
> io.netty.channel.AbstractChannelHandlerContext.next-io.netty.channel.DefaultChannelHandlerContext
> private final io.netty.channel.ChannelHandler 
> io.netty.channel.DefaultChannelHandlerContext.handler-io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor
> private final io.netty.channel.ChannelHandler 
> io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.childHandler-org.apache.cassandra.net.InboundConnectionInitiator$Initializer
> private final org.apache.cassandra.net.InboundConnectionSettings 
> org.apache.cassandra.net.InboundConnectionInitiator$Initializer.settings-org.apache.cassandra.net.InboundConnectionSettings
> public final java.util.function.Function 
> org.apache.cassandra.net.InboundConnectionSettings.handlers-org.apache.cassandra.net.MessagingService$$Lambda$615/0x000000080140d788
> private final org.apache.cassandra.net.MessagingService 
> org.apache.cassandra.net.MessagingService$$Lambda$615/0x000000080140d788.arg$1-org.apache.cassandra.net.MessagingService
> public final org.apache.cassandra.net.LatencySubscribers 
> org.apache.cassandra.net.MessagingService.latencySubscribers-org.apache.cassandra.net.LatencySubscribers
> private volatile org.apache.cassandra.net.LatencySubscribers$Subscriber 
> org.apache.cassandra.net.LatencySubscribers.subscribers-org.apache.cassandra.locator.DynamicEndpointSnitch
> private volatile java.util.concurrent.ScheduledFuture 
> org.apache.cassandra.locator.DynamicEndpointSnitch.updateSchedular-java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask
> final java.util.concurrent.ScheduledThreadPoolExecutor 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.this$0-org.apache.cassandra.concurrent.ScheduledThreadPoolExecutorPlus
> 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
> private final java.lang.Runnable 
> java.util.concurrent.Executors$RunnableAdapter.task-org.apache.cassandra.concurrent.ExecutionFailure$1
> final java.lang.Runnable 
> org.apache.cassandra.concurrent.ExecutionFailure$1.val$wrap-org.apache.cassandra.db.memtable.AbstractAllocatorMemtable$1
> final org.apache.cassandra.db.memtable.Memtable$Owner 
> org.apache.cassandra.db.memtable.AbstractAllocatorMemtable$1.val$owner-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
> private final java.util.List 
> org.apache.cassandra.db.lifecycle.Tracker.subscribers-java.util.concurrent.CopyOnWriteArrayList
> private final java.util.List 
> org.apache.cassandra.db.lifecycle.Tracker.subscribers-org.apache.cassandra.db.compaction.CompactionStrategyManager
> private final org.apache.cassandra.db.compaction.CompactionStrategyHolder 
> org.apache.cassandra.db.compaction.CompactionStrategyManager.unrepaired-org.apache.cassandra.db.compaction.CompactionStrategyHolder
> private final java.util.List 
> org.apache.cassandra.db.compaction.CompactionStrategyHolder.strategies-java.util.ArrayList
> transient java.lang.Object[] 
> java.util.ArrayList.elementData-[Ljava.lang.Object;
> transient java.lang.Object[] 
> java.util.ArrayList.elementData-org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy
> protected final java.util.Set 
> org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.sstables-java.util.HashSet
> private transient java.util.HashMap java.util.HashSet.map-java.util.HashMap
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-[Ljava.util.HashMap$Node;
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-java.util.HashMap$Node
> final java.lang.Object 
> java.util.HashMap$Node.key-org.apache.cassandra.io.sstable.format.big.BigTableReader
> private final org.apache.cassandra.utils.concurrent.Ref 
> org.apache.cassandra.io.sstable.format.SSTableReader.selfRef-org.apache.cassandra.utils.concurrent.Ref]
> ERROR [Strong-Reference-Leak-Detector:1] 2023-12-21 09:50:33,510 Strong 
> self-ref loop detected 
> [/tmp/cassandra/build/test/cassandra/data/system/local-7ad54392bcdd35a684174e047860b377/oa-9-big-Index.db
> final java.util.Optional 
> org.apache.cassandra.io.util.FileHandle$Cleanup.chunkCache-java.util.Optional
> private final java.lang.Object 
> java.util.Optional.value-org.apache.cassandra.cache.ChunkCache
> private final org.apache.cassandra.utils.memory.BufferPool 
> org.apache.cassandra.cache.ChunkCache.bufferPool-org.apache.cassandra.utils.memory.BufferPool
> private final java.util.Set 
> org.apache.cassandra.utils.memory.BufferPool.localPoolReferences-java.util.Collections$SetFromMap
> private final java.util.Map 
> java.util.Collections$SetFromMap.m-java.util.concurrent.ConcurrentHashMap
> private final java.util.Map 
> java.util.Collections$SetFromMap.m-org.apache.cassandra.utils.memory.BufferPool$LocalPoolRef
> private final org.apache.cassandra.utils.memory.BufferPool$MicroQueueOfChunks 
> org.apache.cassandra.utils.memory.BufferPool$LocalPoolRef.chunks-org.apache.cassandra.utils.memory.BufferPool$MicroQueueOfChunks
> private org.apache.cassandra.utils.memory.BufferPool$Chunk 
> org.apache.cassandra.utils.memory.BufferPool$MicroQueueOfChunks.chunk0-org.apache.cassandra.utils.memory.BufferPool$Chunk
> private volatile org.apache.cassandra.utils.memory.BufferPool$LocalPool 
> org.apache.cassandra.utils.memory.BufferPool$Chunk.owner-org.apache.cassandra.utils.memory.BufferPool$LocalPool
> private final java.lang.Thread 
> org.apache.cassandra.utils.memory.BufferPool$LocalPool.owningThread-io.netty.util.concurrent.FastThreadLocalThread
> private java.lang.Runnable 
> java.lang.Thread.target-io.netty.util.concurrent.FastThreadLocalRunnable
> private final java.lang.Runnable 
> io.netty.util.concurrent.FastThreadLocalRunnable.runnable-java.util.concurrent.ThreadPoolExecutor$Worker
> final java.util.concurrent.ThreadPoolExecutor 
> java.util.concurrent.ThreadPoolExecutor$Worker.this$0-org.apache.cassandra.concurrent.ScheduledThreadPoolExecutorPlus
> 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
> private final java.lang.Runnable 
> java.util.concurrent.Executors$RunnableAdapter.task-org.apache.cassandra.concurrent.ExecutionFailure$1
> final java.lang.Runnable 
> org.apache.cassandra.concurrent.ExecutionFailure$1.val$wrap-org.apache.cassandra.hints.HintsService$$Lambda$1142/0x0000000801576aa0
> private final org.apache.cassandra.hints.HintsService 
> org.apache.cassandra.hints.HintsService$$Lambda$1142/0x0000000801576aa0.arg$1-org.apache.cassandra.hints.HintsService
> private final org.apache.cassandra.hints.HintsWriteExecutor 
> org.apache.cassandra.hints.HintsService.writeExecutor-org.apache.cassandra.hints.HintsWriteExecutor
> private final org.apache.cassandra.concurrent.ExecutorPlus 
> org.apache.cassandra.hints.HintsWriteExecutor.executor-org.apache.cassandra.concurrent.SingleThreadExecutorPlus
> private final java.util.HashSet 
> java.util.concurrent.ThreadPoolExecutor.workers-java.util.HashSet
> private transient java.util.HashMap java.util.HashSet.map-java.util.HashMap
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-[Ljava.util.HashMap$Node;
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-java.util.HashMap$Node
> final java.lang.Object 
> java.util.HashMap$Node.key-java.util.concurrent.ThreadPoolExecutor$Worker
> final java.lang.Thread 
> java.util.concurrent.ThreadPoolExecutor$Worker.thread-io.netty.util.concurrent.FastThreadLocalThread
> private java.lang.ThreadGroup java.lang.Thread.group-java.lang.ThreadGroup
> private final java.lang.ThreadGroup 
> java.lang.ThreadGroup.parent-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-io.netty.util.concurrent.FastThreadLocalRunnable
> private final java.lang.Runnable 
> io.netty.util.concurrent.FastThreadLocalRunnable.runnable-org.apache.cassandra.concurrent.InfiniteLoopExecutor$$Lambda$241/0x000000080128b138
> private final org.apache.cassandra.concurrent.InfiniteLoopExecutor 
> org.apache.cassandra.concurrent.InfiniteLoopExecutor$$Lambda$241/0x000000080128b138.arg$1-org.apache.cassandra.concurrent.InfiniteLoopExecutor
> private final org.apache.cassandra.concurrent.Interruptible$Task 
> org.apache.cassandra.concurrent.InfiniteLoopExecutor.task-org.apache.cassandra.tcm.log.LocalLog$Async$AsyncRunnable
> final org.apache.cassandra.tcm.log.LocalLog$Async 
> org.apache.cassandra.tcm.log.LocalLog$Async$AsyncRunnable.this$0-org.apache.cassandra.tcm.log.LocalLog$Async
> protected final java.util.concurrent.atomic.AtomicReference 
> org.apache.cassandra.tcm.log.LocalLog.committed-java.util.concurrent.atomic.AtomicReference
> private volatile java.lang.Object 
> java.util.concurrent.atomic.AtomicReference.value-org.apache.cassandra.tcm.ClusterMetadata
> public final org.apache.cassandra.schema.DistributedSchema 
> org.apache.cassandra.tcm.ClusterMetadata.schema-org.apache.cassandra.schema.DistributedSchema
> private final org.apache.cassandra.schema.Keyspaces 
> org.apache.cassandra.schema.DistributedSchema.keyspaces-org.apache.cassandra.schema.Keyspaces
> private final org.apache.cassandra.utils.btree.BTreeMap 
> org.apache.cassandra.schema.Keyspaces.keyspaces-org.apache.cassandra.utils.btree.BTreeMap
> protected final java.lang.Object[] 
> org.apache.cassandra.utils.btree.AbstractBTreeMap.tree-[Ljava.lang.Object;
> protected final java.lang.Object[] 
> org.apache.cassandra.utils.btree.AbstractBTreeMap.tree-org.apache.cassandra.utils.btree.AbstractBTreeMap$Entry
> private java.lang.Object 
> java.util.AbstractMap$SimpleEntry.value-org.apache.cassandra.schema.KeyspaceMetadata
> public final org.apache.cassandra.schema.Tables 
> org.apache.cassandra.schema.KeyspaceMetadata.tables-org.apache.cassandra.schema.Tables
> private final com.google.common.collect.ImmutableMap 
> org.apache.cassandra.schema.Tables.tables-com.google.common.collect.RegularImmutableMap
> final transient java.util.Map$Entry[] 
> com.google.common.collect.RegularImmutableMap.entries-[Ljava.util.Map$Entry;
> final transient java.util.Map$Entry[] 
> com.google.common.collect.RegularImmutableMap.entries-com.google.common.collect.ImmutableMapEntry
> final java.lang.Object 
> com.google.common.collect.ImmutableEntry.value-org.apache.cassandra.schema.TableMetadata
> public org.apache.cassandra.schema.TableMetadataRef 
> org.apache.cassandra.schema.TableMetadata.ref-org.apache.cassandra.schema.TableMetadataRef$2
> final org.apache.cassandra.schema.TableMetadataRef 
> org.apache.cassandra.schema.TableMetadataRef$2.val$wrapped-org.apache.cassandra.schema.TableMetadataRef
> private final org.apache.cassandra.schema.SchemaProvider 
> org.apache.cassandra.schema.TableMetadataRef.schema-org.apache.cassandra.schema.Schema
> private final java.util.Map 
> org.apache.cassandra.schema.Schema.localKeyspaceInstances-java.util.HashMap
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-[Ljava.util.HashMap$Node;
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-java.util.HashMap$Node
> java.lang.Object 
> java.util.HashMap$Node.value-org.apache.cassandra.schema.Schema$LazyVariable
> private final java.util.concurrent.atomic.AtomicReference 
> org.apache.cassandra.schema.Schema$LazyVariable.ref-java.util.concurrent.atomic.AtomicReference
> private volatile java.lang.Object 
> java.util.concurrent.atomic.AtomicReference.value-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
> private final java.util.List 
> org.apache.cassandra.db.lifecycle.Tracker.subscribers-java.util.concurrent.CopyOnWriteArrayList
> private final java.util.List 
> org.apache.cassandra.db.lifecycle.Tracker.subscribers-org.apache.cassandra.service.SSTablesGlobalTracker
> private final java.util.Set 
> org.apache.cassandra.service.SSTablesGlobalTracker.subscribers-java.util.concurrent.CopyOnWriteArraySet
> private final java.util.Set 
> org.apache.cassandra.service.SSTablesGlobalTracker.subscribers-org.apache.cassandra.service.StorageService$$Lambda$1150/0x000000080157e898
> private final org.apache.cassandra.service.StorageService 
> org.apache.cassandra.service.StorageService$$Lambda$1150/0x000000080157e898.arg$1-org.apache.cassandra.service.StorageService
> private java.lang.Thread 
> org.apache.cassandra.service.StorageService.drainOnShutdown-io.netty.util.concurrent.FastThreadLocalThread
> 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 io.netty.util.internal.InternalThreadLocalMap 
> io.netty.util.concurrent.FastThreadLocalThread.threadLocalMap-io.netty.util.internal.InternalThreadLocalMap
> private java.lang.Object[] 
> io.netty.util.internal.InternalThreadLocalMap.indexedVariables-[Ljava.lang.Object;
> private java.lang.Object[] 
> io.netty.util.internal.InternalThreadLocalMap.indexedVariables-io.netty.channel.epoll.EpollEventLoop
> private final io.netty.util.collection.IntObjectMap 
> io.netty.channel.epoll.EpollEventLoop.channels-io.netty.util.collection.IntObjectHashMap
> private java.lang.Object[] 
> io.netty.util.collection.IntObjectHashMap.values-[Ljava.lang.Object;
> private java.lang.Object[] 
> io.netty.util.collection.IntObjectHashMap.values-io.netty.channel.epoll.EpollServerSocketChannel
> private final io.netty.channel.DefaultChannelPipeline 
> io.netty.channel.AbstractChannel.pipeline-io.netty.channel.DefaultChannelPipeline
> final io.netty.channel.DefaultChannelPipeline$HeadContext 
> io.netty.channel.DefaultChannelPipeline.head-io.netty.channel.DefaultChannelPipeline$HeadContext
> volatile io.netty.channel.AbstractChannelHandlerContext 
> io.netty.channel.AbstractChannelHandlerContext.next-io.netty.channel.DefaultChannelHandlerContext
> private final io.netty.channel.ChannelHandler 
> io.netty.channel.DefaultChannelHandlerContext.handler-io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor
> private final io.netty.channel.ChannelHandler 
> io.netty.bootstrap.ServerBootstrap$ServerBootstrapAcceptor.childHandler-org.apache.cassandra.net.InboundConnectionInitiator$Initializer
> private final org.apache.cassandra.net.InboundConnectionSettings 
> org.apache.cassandra.net.InboundConnectionInitiator$Initializer.settings-org.apache.cassandra.net.InboundConnectionSettings
> public final java.util.function.Function 
> org.apache.cassandra.net.InboundConnectionSettings.handlers-org.apache.cassandra.net.MessagingService$$Lambda$615/0x000000080140d788
> private final org.apache.cassandra.net.MessagingService 
> org.apache.cassandra.net.MessagingService$$Lambda$615/0x000000080140d788.arg$1-org.apache.cassandra.net.MessagingService
> public final org.apache.cassandra.net.LatencySubscribers 
> org.apache.cassandra.net.MessagingService.latencySubscribers-org.apache.cassandra.net.LatencySubscribers
> private volatile org.apache.cassandra.net.LatencySubscribers$Subscriber 
> org.apache.cassandra.net.LatencySubscribers.subscribers-org.apache.cassandra.locator.DynamicEndpointSnitch
> private volatile java.util.concurrent.ScheduledFuture 
> org.apache.cassandra.locator.DynamicEndpointSnitch.updateSchedular-java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask
> final java.util.concurrent.ScheduledThreadPoolExecutor 
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.this$0-org.apache.cassandra.concurrent.ScheduledThreadPoolExecutorPlus
> 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
> private final java.lang.Runnable 
> java.util.concurrent.Executors$RunnableAdapter.task-org.apache.cassandra.concurrent.ExecutionFailure$1
> final java.lang.Runnable 
> org.apache.cassandra.concurrent.ExecutionFailure$1.val$wrap-org.apache.cassandra.db.memtable.AbstractAllocatorMemtable$1
> final org.apache.cassandra.db.memtable.Memtable$Owner 
> org.apache.cassandra.db.memtable.AbstractAllocatorMemtable$1.val$owner-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
> private final java.util.List 
> org.apache.cassandra.db.lifecycle.Tracker.subscribers-java.util.concurrent.CopyOnWriteArrayList
> private final java.util.List 
> org.apache.cassandra.db.lifecycle.Tracker.subscribers-org.apache.cassandra.db.compaction.CompactionStrategyManager
> private final org.apache.cassandra.db.compaction.CompactionStrategyHolder 
> org.apache.cassandra.db.compaction.CompactionStrategyManager.unrepaired-org.apache.cassandra.db.compaction.CompactionStrategyHolder
> private final java.util.List 
> org.apache.cassandra.db.compaction.CompactionStrategyHolder.strategies-java.util.ArrayList
> transient java.lang.Object[] 
> java.util.ArrayList.elementData-[Ljava.lang.Object;
> transient java.lang.Object[] 
> java.util.ArrayList.elementData-org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy
> protected final java.util.Set 
> org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.sstables-java.util.HashSet
> private transient java.util.HashMap java.util.HashSet.map-java.util.HashMap
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-[Ljava.util.HashMap$Node;
> transient java.util.HashMap$Node[] 
> java.util.HashMap.table-java.util.HashMap$Node
> final java.lang.Object 
> java.util.HashMap$Node.key-org.apache.cassandra.io.sstable.format.big.BigTableReader
> private final org.apache.cassandra.io.util.FileHandle 
> org.apache.cassandra.io.sstable.format.big.BigTableReader.ifile-org.apache.cassandra.io.util.FileHandle
> final org.apache.cassandra.utils.concurrent.Ref 
> org.apache.cassandra.utils.concurrent.SharedCloseableImpl.ref-org.apache.cassandra.utils.concurrent.Ref]
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to