class org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1 extends org.apache.cassandra.utils.WrappedRunnable
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1
super_class: org.apache.cassandra.utils.WrappedRunnable
{
final org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager this$0;
descriptor: Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager);
descriptor: (Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1 this
0: .line 100
aload 0 /* this */
aload 1
putfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
aload 0 /* this */
invokespecial org.apache.cassandra.utils.WrappedRunnable.<init>:()V
return
end local 0 // org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager$1;
MethodParameters:
Name Flags
this$0 final
public void runMayThrow();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 // org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1 this
0: .line 104
goto 19
1: .line 108
StackMap locals:
StackMap stack:
getstatic org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.$assertionsDisabled:Z
ifne 2
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.availableSegment:Lorg/apache/cassandra/db/commitlog/CommitLogSegment;
ifnull 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: .line 109
StackMap locals:
StackMap stack:
getstatic org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.logger:Lorg/slf4j/Logger;
ldc "No segments in reserve; creating a fresh one"
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;)V
3: .line 110
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
invokevirtual org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.createSegment:()Lorg/apache/cassandra/db/commitlog/CommitLogSegment;
putfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.availableSegment:Lorg/apache/cassandra/db/commitlog/CommitLogSegment;
4: .line 111
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.shutdown:Z
ifeq 7
5: .line 115
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
invokevirtual org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.discardAvailableSegment:()V
6: .line 116
return
7: .line 119
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.segmentPrepared:Lorg/apache/cassandra/utils/concurrent/WaitQueue;
invokevirtual org.apache.cassandra.utils.concurrent.WaitQueue.signalAll:()V
8: .line 120
invokestatic java.lang.Thread.yield:()V
9: .line 122
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.availableSegment:Lorg/apache/cassandra/db/commitlog/CommitLogSegment;
ifnonnull 11
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
invokevirtual org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.atSegmentBufferLimit:()Z
ifne 11
10: .line 124
goto 19
11: .line 128
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
invokevirtual org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.maybeFlushToReclaim:()V
12: .line 129
goto 18
13: .line 130
StackMap locals:
StackMap stack: java.lang.Throwable
astore 1 /* t */
start local 1 // java.lang.Throwable t
14: .line 132
aload 1 /* t */
invokestatic org.apache.cassandra.utils.JVMStabilityInspector.inspectThrowable:(Ljava/lang/Throwable;)V
15: .line 133
ldc "Failed managing commit log segments"
aload 1 /* t */
invokestatic org.apache.cassandra.db.commitlog.CommitLog.handleCommitError:(Ljava/lang/String;Ljava/lang/Throwable;)Z
ifne 17
16: .line 134
return
17: .line 136
StackMap locals: java.lang.Throwable
StackMap stack:
lconst_1
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
invokestatic com.google.common.util.concurrent.Uninterruptibles.sleepUninterruptibly:(JLjava/util/concurrent/TimeUnit;)V
end local 1 // java.lang.Throwable t
18: .line 143
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.managerThreadWaitCondition:Ljava/util/function/BooleanSupplier;
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.managerThreadWaitQueue:Lorg/apache/cassandra/utils/concurrent/WaitQueue;
invokestatic org.apache.cassandra.utils.concurrent.WaitQueue.waitOnCondition:(Ljava/util/function/BooleanSupplier;Lorg/apache/cassandra/utils/concurrent/WaitQueue;)V
19: .line 104
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1.this$0:Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager;
getfield org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.shutdown:Z
ifeq 1
20: .line 145
return
end local 0 // org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1 this
LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/apache/cassandra/db/commitlog/AbstractCommitLogSegmentManager$1;
14 18 1 t Ljava/lang/Throwable;
Exception table:
from to target type
1 6 13 Class java.lang.Throwable
7 10 13 Class java.lang.Throwable
11 12 13 Class java.lang.Throwable
Exceptions:
throws java.lang.Exception
}
SourceFile: "AbstractCommitLogSegmentManager.java"
EnclosingMethod: org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager.start:()V
NestHost: org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager
InnerClasses:
org.apache.cassandra.db.commitlog.AbstractCommitLogSegmentManager$1