class org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor extends org.apache.cassandra.concurrent.JMXEnabledThreadPoolExecutor
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor
super_class: org.apache.cassandra.concurrent.JMXEnabledThreadPoolExecutor
{
protected void <init>(int, int, java.lang.String, java.util.concurrent.BlockingQueue<java.lang.Runnable>);
descriptor: (IILjava/lang/String;Ljava/util/concurrent/BlockingQueue;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=11, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
iload 1
iload 2
ldc 60
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
aload 4
new org.apache.cassandra.concurrent.NamedThreadFactory
dup
aload 3
iconst_1
invokespecial org.apache.cassandra.concurrent.NamedThreadFactory.<init>:(Ljava/lang/String;I)V
ldc "internal"
invokespecial org.apache.cassandra.concurrent.JMXEnabledThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Lorg/apache/cassandra/concurrent/NamedThreadFactory;Ljava/lang/String;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/db/compaction/CompactionManager$CompactionExecutor;
0 2 1 minThreads I
0 2 2 maxThreads I
0 2 3 name Ljava/lang/String;
0 2 4 queue Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;
Signature: (IILjava/lang/String;Ljava/util/concurrent/BlockingQueue<Ljava/lang/Runnable;>;)V
MethodParameters:
Name Flags
minThreads
maxThreads
name
queue
private void <init>(int, java.lang.String);
descriptor: (ILjava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
iload 1
aload 2
new java.util.concurrent.LinkedBlockingQueue
dup
invokespecial java.util.concurrent.LinkedBlockingQueue.<init>:()V
invokespecial org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.<init>:(IILjava/lang/String;Ljava/util/concurrent/BlockingQueue;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/db/compaction/CompactionManager$CompactionExecutor;
0 2 1 threadCount I
0 2 2 name Ljava/lang/String;
MethodParameters:
Name Flags
threadCount
name
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokestatic org.apache.cassandra.config.DatabaseDescriptor.getConcurrentCompactors:()I
invokestatic java.lang.Math.max:(II)I
ldc "CompactionExecutor"
invokespecial org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.<init>:(ILjava/lang/String;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/db/compaction/CompactionManager$CompactionExecutor;
protected void beforeExecute(java.lang.Thread, java.lang.Runnable);
descriptor: (Ljava/lang/Thread;Ljava/lang/Runnable;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.apache.cassandra.db.compaction.CompactionManager.isCompactionManager:Lio/netty/util/concurrent/FastThreadLocal;
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual io.netty.util.concurrent.FastThreadLocal.set:(Ljava/lang/Object;)V
1: aload 0
aload 1
aload 2
invokespecial org.apache.cassandra.concurrent.JMXEnabledThreadPoolExecutor.beforeExecute:(Ljava/lang/Thread;Ljava/lang/Runnable;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/cassandra/db/compaction/CompactionManager$CompactionExecutor;
0 3 1 t Ljava/lang/Thread;
0 3 2 r Ljava/lang/Runnable;
MethodParameters:
Name Flags
t
r
public void afterExecute(java.lang.Runnable, java.lang.Throwable);
descriptor: (Ljava/lang/Runnable;Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor.maybeResetTraceSessionWrapper:(Ljava/lang/Runnable;)V
1: aload 2
ifnonnull 3
2: aload 1
invokestatic org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor.extractThrowable:(Ljava/lang/Runnable;)Ljava/lang/Throwable;
astore 2
3: StackMap locals:
StackMap stack:
aload 2
ifnull 11
4: aload 2
instanceof org.apache.cassandra.db.compaction.CompactionInterruptedException
ifeq 10
5: getstatic org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.logger:Lorg/slf4j/Logger;
aload 2
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;)V
6: aload 2
invokevirtual java.lang.Throwable.getSuppressed:()[Ljava/lang/Throwable;
ifnull 8
aload 2
invokevirtual java.lang.Throwable.getSuppressed:()[Ljava/lang/Throwable;
arraylength
ifle 8
7: getstatic org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.logger:Lorg/slf4j/Logger;
ldc "Interruption of compaction encountered exceptions:"
aload 2
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Throwable;)V
goto 11
8: StackMap locals:
StackMap stack:
getstatic org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.logger:Lorg/slf4j/Logger;
ldc "Full interruption stack trace:"
aload 2
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Throwable;)V
9: goto 11
10: StackMap locals:
StackMap stack:
aload 2
invokestatic org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor.handleOrLog:(Ljava/lang/Throwable;)V
11: StackMap locals:
StackMap stack:
invokestatic org.apache.cassandra.io.sstable.SnapshotDeletingTask.rescheduleFailedTasks:()V
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/apache/cassandra/db/compaction/CompactionManager$CompactionExecutor;
0 13 1 r Ljava/lang/Runnable;
0 13 2 t Ljava/lang/Throwable;
MethodParameters:
Name Flags
r
t
public com.google.common.util.concurrent.ListenableFuture<?> submitIfRunning(java.lang.Runnable, java.lang.String);
descriptor: (Ljava/lang/Runnable;Ljava/lang/String;)Lcom/google/common/util/concurrent/ListenableFuture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aconst_null
invokestatic java.util.concurrent.Executors.callable:(Ljava/lang/Runnable;Ljava/lang/Object;)Ljava/util/concurrent/Callable;
aload 2
invokevirtual org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.submitIfRunning:(Ljava/util/concurrent/Callable;Ljava/lang/String;)Lcom/google/common/util/concurrent/ListenableFuture;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/compaction/CompactionManager$CompactionExecutor;
0 1 1 task Ljava/lang/Runnable;
0 1 2 name Ljava/lang/String;
Signature: (Ljava/lang/Runnable;Ljava/lang/String;)Lcom/google/common/util/concurrent/ListenableFuture<*>;
MethodParameters:
Name Flags
task
name
public com.google.common.util.concurrent.ListenableFuture<?> submitIfRunning(java.util.concurrent.Callable<?>, java.lang.String);
descriptor: (Ljava/util/concurrent/Callable;Ljava/lang/String;)Lcom/google/common/util/concurrent/ListenableFuture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.isShutdown:()Z
ifeq 3
1: getstatic org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.logger:Lorg/slf4j/Logger;
ldc "Executor has been shut down, not submitting {}"
aload 2
invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;Ljava/lang/Object;)V
2: invokestatic com.google.common.util.concurrent.Futures.immediateCancelledFuture:()Lcom/google/common/util/concurrent/ListenableFuture;
areturn
3: StackMap locals:
StackMap stack:
aload 1
invokestatic com.google.common.util.concurrent.ListenableFutureTask.create:(Ljava/util/concurrent/Callable;)Lcom/google/common/util/concurrent/ListenableFutureTask;
astore 3
start local 3 4: aload 0
aload 3
invokevirtual org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.execute:(Ljava/lang/Runnable;)V
5: aload 3
6: areturn
end local 3 7: StackMap locals:
StackMap stack: java.util.concurrent.RejectedExecutionException
astore 3
start local 3 8: aload 0
invokevirtual org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.isShutdown:()Z
ifeq 10
9: getstatic org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.logger:Lorg/slf4j/Logger;
ldc "Executor has shut down, could not submit {}"
aload 2
invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;Ljava/lang/Object;)V
goto 11
10: StackMap locals: java.util.concurrent.RejectedExecutionException
StackMap stack:
getstatic org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor.logger:Lorg/slf4j/Logger;
ldc "Failed to submit {}"
aload 2
aload 3
invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
11: StackMap locals:
StackMap stack:
invokestatic com.google.common.util.concurrent.Futures.immediateCancelledFuture:()Lcom/google/common/util/concurrent/ListenableFuture;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/apache/cassandra/db/compaction/CompactionManager$CompactionExecutor;
0 12 1 task Ljava/util/concurrent/Callable<*>;
0 12 2 name Ljava/lang/String;
4 7 3 ret Lcom/google/common/util/concurrent/ListenableFutureTask;
8 12 3 ex Ljava/util/concurrent/RejectedExecutionException;
Exception table:
from to target type
3 6 7 Class java.util.concurrent.RejectedExecutionException
Signature: (Ljava/util/concurrent/Callable<*>;Ljava/lang/String;)Lcom/google/common/util/concurrent/ListenableFuture<*>;
MethodParameters:
Name Flags
task
name
}
SourceFile: "CompactionManager.java"
NestHost: org.apache.cassandra.db.compaction.CompactionManager
InnerClasses:
CompactionExecutor = org.apache.cassandra.db.compaction.CompactionManager$CompactionExecutor of org.apache.cassandra.db.compaction.CompactionManager