public class org.apache.cassandra.db.compaction.LeveledManifest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.cassandra.db.compaction.LeveledManifest
super_class: java.lang.Object
{
private static final org.slf4j.Logger logger;
descriptor: Lorg/slf4j/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int MAX_COMPACTING_L0;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 32
private static final int NO_COMPACTION_LIMIT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 25
public static final int MAX_LEVEL_COUNT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private final org.apache.cassandra.db.ColumnFamilyStore cfs;
descriptor: Lorg/apache/cassandra/db/ColumnFamilyStore;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
protected final java.util.List<org.apache.cassandra.io.sstable.format.SSTableReader>[] generations;
descriptor: [Ljava/util/List;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Signature: [Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
RuntimeInvisibleAnnotations:
com.google.common.annotations.VisibleForTesting()
private final org.apache.cassandra.db.PartitionPosition[] lastCompactedKeys;
descriptor: [Lorg/apache/cassandra/db/PartitionPosition;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long maxSSTableSizeInBytes;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.apache.cassandra.db.compaction.SizeTieredCompactionStrategyOptions options;
descriptor: Lorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int[] compactionCounter;
descriptor: [I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int levelFanoutSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final com.google.common.base.Predicate<org.apache.cassandra.io.sstable.format.SSTableReader> suspectP;
descriptor: Lcom/google/common/base/Predicate;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lcom/google/common/base/Predicate<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc Lorg/apache/cassandra/db/compaction/LeveledManifest;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.apache.cassandra.db.compaction.LeveledManifest.$assertionsDisabled:Z
3: ldc Lorg/apache/cassandra/db/compaction/LeveledManifest;
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
4: ldc 1.0E9
invokestatic java.lang.Math.log10:(D)D
d2i
putstatic org.apache.cassandra.db.compaction.LeveledManifest.MAX_LEVEL_COUNT:I
5: new org.apache.cassandra.db.compaction.LeveledManifest$1
dup
invokespecial org.apache.cassandra.db.compaction.LeveledManifest$1.<init>:()V
putstatic org.apache.cassandra.db.compaction.LeveledManifest.suspectP:Lcom/google/common/base/Predicate;
6: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(org.apache.cassandra.db.ColumnFamilyStore, int, int, org.apache.cassandra.db.compaction.SizeTieredCompactionStrategyOptions);
descriptor: (Lorg/apache/cassandra/db/ColumnFamilyStore;IILorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;)V
flags: (0x0000)
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.apache.cassandra.db.compaction.LeveledManifest.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
2: aload 0
iload 2
i2l
ldc 1024
lmul
ldc 1024
lmul
putfield org.apache.cassandra.db.compaction.LeveledManifest.maxSSTableSizeInBytes:J
3: aload 0
aload 4
putfield org.apache.cassandra.db.compaction.LeveledManifest.options:Lorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;
4: aload 0
iload 3
putfield org.apache.cassandra.db.compaction.LeveledManifest.levelFanoutSize:I
5: aload 0
getstatic org.apache.cassandra.db.compaction.LeveledManifest.MAX_LEVEL_COUNT:I
anewarray java.util.List
putfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
6: aload 0
getstatic org.apache.cassandra.db.compaction.LeveledManifest.MAX_LEVEL_COUNT:I
anewarray org.apache.cassandra.db.PartitionPosition
putfield org.apache.cassandra.db.compaction.LeveledManifest.lastCompactedKeys:[Lorg/apache/cassandra/db/PartitionPosition;
7: iconst_0
istore 5
start local 5 8: goto 12
9: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest org.apache.cassandra.db.ColumnFamilyStore int int org.apache.cassandra.db.compaction.SizeTieredCompactionStrategyOptions int
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iload 5
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
aastore
10: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.lastCompactedKeys:[Lorg/apache/cassandra/db/PartitionPosition;
iload 5
aload 1
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.getPartitioner:()Lorg/apache/cassandra/dht/IPartitioner;
invokeinterface org.apache.cassandra.dht.IPartitioner.getMinimumToken:()Lorg/apache/cassandra/dht/Token;
invokevirtual org.apache.cassandra.dht.Token.minKeyBound:()Lorg/apache/cassandra/dht/Token$KeyBound;
aastore
11: iinc 5 1
StackMap locals:
StackMap stack:
12: iload 5
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
if_icmplt 9
end local 5 13: aload 0
getstatic org.apache.cassandra.db.compaction.LeveledManifest.MAX_LEVEL_COUNT:I
newarray 10
putfield org.apache.cassandra.db.compaction.LeveledManifest.compactionCounter:[I
14: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 15 1 cfs Lorg/apache/cassandra/db/ColumnFamilyStore;
0 15 2 maxSSTableSizeInMB I
0 15 3 fanoutSize I
0 15 4 options Lorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;
8 13 5 i I
MethodParameters:
Name Flags
cfs
maxSSTableSizeInMB
fanoutSize
options
public static org.apache.cassandra.db.compaction.LeveledManifest create(org.apache.cassandra.db.ColumnFamilyStore, int, int, java.util.List<org.apache.cassandra.io.sstable.format.SSTableReader>);
descriptor: (Lorg/apache/cassandra/db/ColumnFamilyStore;IILjava/util/List;)Lorg/apache/cassandra/db/compaction/LeveledManifest;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iload 2
aload 3
new org.apache.cassandra.db.compaction.SizeTieredCompactionStrategyOptions
dup
invokespecial org.apache.cassandra.db.compaction.SizeTieredCompactionStrategyOptions.<init>:()V
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.create:(Lorg/apache/cassandra/db/ColumnFamilyStore;IILjava/lang/Iterable;Lorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;)Lorg/apache/cassandra/db/compaction/LeveledManifest;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 cfs Lorg/apache/cassandra/db/ColumnFamilyStore;
0 1 1 maxSSTableSize I
0 1 2 fanoutSize I
0 1 3 sstables Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
Signature: (Lorg/apache/cassandra/db/ColumnFamilyStore;IILjava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;)Lorg/apache/cassandra/db/compaction/LeveledManifest;
MethodParameters:
Name Flags
cfs
maxSSTableSize
fanoutSize
sstables
public static org.apache.cassandra.db.compaction.LeveledManifest create(org.apache.cassandra.db.ColumnFamilyStore, int, int, java.lang.Iterable<org.apache.cassandra.io.sstable.format.SSTableReader>, org.apache.cassandra.db.compaction.SizeTieredCompactionStrategyOptions);
descriptor: (Lorg/apache/cassandra/db/ColumnFamilyStore;IILjava/lang/Iterable;Lorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;)Lorg/apache/cassandra/db/compaction/LeveledManifest;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new org.apache.cassandra.db.compaction.LeveledManifest
dup
aload 0
iload 1
iload 2
aload 4
invokespecial org.apache.cassandra.db.compaction.LeveledManifest.<init>:(Lorg/apache/cassandra/db/ColumnFamilyStore;IILorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;)V
astore 5
start local 5 1: aload 3
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 7
goto 4
StackMap locals: org.apache.cassandra.db.ColumnFamilyStore int int java.lang.Iterable org.apache.cassandra.db.compaction.SizeTieredCompactionStrategyOptions org.apache.cassandra.db.compaction.LeveledManifest top java.util.Iterator
StackMap stack:
2: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 6
start local 6 3: aload 5
aload 6
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.add:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)V
end local 6 4: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: iconst_1
istore 6
start local 6 6: goto 9
7: StackMap locals: org.apache.cassandra.db.ColumnFamilyStore int int java.lang.Iterable org.apache.cassandra.db.compaction.SizeTieredCompactionStrategyOptions org.apache.cassandra.db.compaction.LeveledManifest int
StackMap stack:
aload 5
iload 6
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.repairOverlappingSSTables:(I)V
8: iinc 6 1
StackMap locals:
StackMap stack:
9: iload 6
aload 5
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getAllLevelSize:()[I
arraylength
if_icmplt 7
end local 6 10: aload 5
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.calculateLastCompactedKeys:()V
11: aload 5
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 cfs Lorg/apache/cassandra/db/ColumnFamilyStore;
0 12 1 maxSSTableSize I
0 12 2 fanoutSize I
0 12 3 sstables Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
0 12 4 options Lorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;
1 12 5 manifest Lorg/apache/cassandra/db/compaction/LeveledManifest;
3 4 6 ssTableReader Lorg/apache/cassandra/io/sstable/format/SSTableReader;
6 10 6 i I
Signature: (Lorg/apache/cassandra/db/ColumnFamilyStore;IILjava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;Lorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;)Lorg/apache/cassandra/db/compaction/LeveledManifest;
MethodParameters:
Name Flags
cfs
maxSSTableSize
fanoutSize
sstables
options
public void calculateLastCompactedKeys();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 15
2: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iload 1
iconst_1
iadd
aaload
invokeinterface java.util.List.isEmpty:()Z
ifeq 4
3: goto 14
4: StackMap locals:
StackMap stack:
aconst_null
astore 2
start local 2 5: ldc -9223372036854775808
lstore 3
start local 3 6: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iload 1
iconst_1
iadd
aaload
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 12
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int org.apache.cassandra.io.sstable.format.SSTableReader long top java.util.Iterator
StackMap stack:
7: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 5
start local 5 8: aload 5
getstatic org.apache.cassandra.io.sstable.Component.DATA:Lorg/apache/cassandra/io/sstable/Component;
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getCreationTimeFor:(Lorg/apache/cassandra/io/sstable/Component;)J
lstore 7
start local 7 9: lload 7
lload 3
lcmp
iflt 12
10: aload 5
astore 2
11: lload 7
lstore 3
end local 7 end local 5 12: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
13: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.lastCompactedKeys:[Lorg/apache/cassandra/db/PartitionPosition;
iload 1
aload 2
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
aastore
end local 3 end local 2 14: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
15: iload 1
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
iconst_1
isub
if_icmplt 2
end local 1 16: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
1 16 1 i I
5 14 2 sstableWithMaxModificationTime Lorg/apache/cassandra/io/sstable/format/SSTableReader;
6 14 3 maxModificationTime J
8 12 5 ssTableReader Lorg/apache/cassandra/io/sstable/format/SSTableReader;
9 12 7 modificationTime J
public synchronized void add(org.apache.cassandra.io.sstable.format.SSTableReader);
descriptor: (Lorg/apache/cassandra/io/sstable/format/SSTableReader;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableLevel:()I
istore 2
start local 2 1: getstatic org.apache.cassandra.db.compaction.LeveledManifest.$assertionsDisabled:Z
ifne 2
iload 2
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
if_icmplt 2
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Invalid level "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " out of "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals: int
StackMap stack:
aload 0
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.logDistribution:()V
3: aload 0
aload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.canAddSSTable:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)Z
ifeq 7
4: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "Adding {} to L{}"
aload 1
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
5: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iload 2
aaload
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: goto 16
7: StackMap locals:
StackMap stack:
aload 1
getfield org.apache.cassandra.io.sstable.format.SSTableReader.descriptor:Lorg/apache/cassandra/io/sstable/Descriptor;
invokevirtual org.apache.cassandra.io.sstable.Descriptor.getMetadataSerializer:()Lorg/apache/cassandra/io/sstable/metadata/IMetadataSerializer;
aload 1
getfield org.apache.cassandra.io.sstable.format.SSTableReader.descriptor:Lorg/apache/cassandra/io/sstable/Descriptor;
iconst_0
invokeinterface org.apache.cassandra.io.sstable.metadata.IMetadataSerializer.mutateLevel:(Lorg/apache/cassandra/io/sstable/Descriptor;I)V
8: aload 1
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.reloadSSTableMetadata:()V
9: goto 12
10: StackMap locals:
StackMap stack: java.io.IOException
astore 3
start local 3 11: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "Could not change sstable level - adding it at level 0 anyway, we will find it at restart."
aload 3
invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
end local 3 12: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.contains:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)Z
ifne 15
13: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iconst_0
aaload
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
14: goto 16
15: StackMap locals:
StackMap stack:
getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "SSTable {} is already present on leveled manifest and should not be re-added."
aload 1
new java.lang.RuntimeException
dup
invokespecial java.lang.RuntimeException.<init>:()V
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
16: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 17 1 reader Lorg/apache/cassandra/io/sstable/format/SSTableReader;
1 17 2 level I
11 12 3 e Ljava/io/IOException;
Exception table:
from to target type
7 9 10 Class java.io.IOException
MethodParameters:
Name Flags
reader
private boolean contains(org.apache.cassandra.io.sstable.format.SSTableReader);
descriptor: (Lorg/apache/cassandra/io/sstable/format/SSTableReader;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iload 2
aaload
aload 1
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
if_icmplt 2
end local 2 6: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 7 1 reader Lorg/apache/cassandra/io/sstable/format/SSTableReader;
1 6 2 i I
MethodParameters:
Name Flags
reader
public synchronized void replace(java.util.Collection<org.apache.cassandra.io.sstable.format.SSTableReader>, java.util.Collection<org.apache.cassandra.io.sstable.format.SSTableReader>);
descriptor: (Ljava/util/Collection;Ljava/util/Collection;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.apache.cassandra.db.compaction.LeveledManifest.$assertionsDisabled:Z
ifne 1
aload 1
invokeinterface java.util.Collection.isEmpty:()Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.logDistribution:()V
2: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isTraceEnabled:()Z
ifeq 4
3: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "Replacing [{}]"
aload 0
aload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.toString:(Ljava/util/Collection;)Ljava/lang/String;
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
4: StackMap locals:
StackMap stack:
ldc 2147483647
istore 3
start local 3 5: aload 1
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 5
goto 9
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest java.util.Collection java.util.Collection int top java.util.Iterator
StackMap stack:
6: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 4
start local 4 7: aload 0
aload 4
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.remove:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)I
istore 6
start local 6 8: iload 3
iload 6
invokestatic java.lang.Math.min:(II)I
istore 3
end local 6 end local 4 9: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
10: aload 2
invokeinterface java.util.Collection.isEmpty:()Z
ifeq 12
11: return
12: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest java.util.Collection java.util.Collection int
StackMap stack:
getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isTraceEnabled:()Z
ifeq 14
13: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "Adding [{}]"
aload 0
aload 2
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.toString:(Ljava/util/Collection;)Ljava/lang/String;
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
14: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 5
goto 17
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest java.util.Collection java.util.Collection int top java.util.Iterator
StackMap stack:
15: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 4
start local 4 16: aload 0
aload 4
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.add:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)V
end local 4 17: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
18: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.lastCompactedKeys:[Lorg/apache/cassandra/db/PartitionPosition;
iload 3
getstatic org.apache.cassandra.io.sstable.format.SSTableReader.sstableOrdering:Lcom/google/common/collect/Ordering;
aload 2
invokevirtual com.google.common.collect.Ordering.max:(Ljava/lang/Iterable;)Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
aastore
19: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 20 1 removed Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
0 20 2 added Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
5 20 3 minLevel I
7 9 4 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
8 9 6 thisLevel I
16 17 4 ssTableReader Lorg/apache/cassandra/io/sstable/format/SSTableReader;
Signature: (Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;)V
MethodParameters:
Name Flags
removed
added
public synchronized void repairOverlappingSSTables(int);
descriptor: (I)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=6, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iload 1
aaload
getstatic org.apache.cassandra.io.sstable.format.SSTableReader.sstableComparator:Ljava/util/Comparator;
invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
2: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 3
start local 3 3: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iload 1
aaload
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 12
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int org.apache.cassandra.io.sstable.format.SSTableReader java.util.List top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 4
start local 4 5: aload 2
ifnull 11
aload 4
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
aload 2
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.compareTo:(Lorg/apache/cassandra/db/PartitionPosition;)I
ifgt 11
6: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "At level {}, {} [{}, {}] overlaps {} [{}, {}]. This could be caused by a bug in Cassandra 1.1.0 .. 1.1.3 or due to the fact that you have dropped sstables from another node into the data directory. Sending back to L0. If you didn't drop in sstables, and have not yet run scrub, you should do so since you may also have rows out-of-order within an sstable"
bipush 7
anewarray java.lang.Object
dup
iconst_0
7: iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 2
aastore
dup
iconst_2
aload 2
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
aastore
dup
iconst_3
aload 2
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
aastore
dup
iconst_4
aload 4
aastore
dup
iconst_5
aload 4
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
aastore
dup
bipush 6
aload 4
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
aastore
8: invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;[Ljava/lang/Object;)V
9: aload 3
aload 4
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
10: goto 12
11: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int org.apache.cassandra.io.sstable.format.SSTableReader java.util.List org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator
StackMap stack:
aload 4
astore 2
end local 4 12: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int org.apache.cassandra.io.sstable.format.SSTableReader java.util.List top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
13: aload 3
invokeinterface java.util.List.isEmpty:()Z
ifne 18
14: aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 17
StackMap locals:
StackMap stack:
15: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 4
start local 4 16: aload 0
aload 4
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.sendBackToL0:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)V
end local 4 17: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
18: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int org.apache.cassandra.io.sstable.format.SSTableReader java.util.List
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 19 1 level I
1 19 2 previous Lorg/apache/cassandra/io/sstable/format/SSTableReader;
3 19 3 outOfOrderSSTables Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
5 12 4 current Lorg/apache/cassandra/io/sstable/format/SSTableReader;
16 17 4 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
MethodParameters:
Name Flags
level
private boolean canAddSSTable(org.apache.cassandra.io.sstable.format.SSTableReader);
descriptor: (Lorg/apache/cassandra/io/sstable/format/SSTableReader;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableLevel:()I
istore 2
start local 2 1: iload 2
ifne 3
2: iconst_1
ireturn
3: StackMap locals: int
StackMap stack:
new java.util.ArrayList
dup
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iload 2
aaload
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 3
start local 3 4: aload 3
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
5: aload 3
getstatic org.apache.cassandra.io.sstable.format.SSTableReader.sstableComparator:Ljava/util/Comparator;
invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
6: aconst_null
astore 4
start local 4 7: aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 12
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest org.apache.cassandra.io.sstable.format.SSTableReader int java.util.List org.apache.cassandra.io.sstable.format.SSTableReader top java.util.Iterator
StackMap stack:
8: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 5
start local 5 9: aload 4
ifnull 11
aload 5
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
aload 4
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.compareTo:(Lorg/apache/cassandra/db/PartitionPosition;)I
ifgt 11
10: iconst_0
ireturn
11: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest org.apache.cassandra.io.sstable.format.SSTableReader int java.util.List org.apache.cassandra.io.sstable.format.SSTableReader org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator
StackMap stack:
aload 5
astore 4
end local 5 12: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest org.apache.cassandra.io.sstable.format.SSTableReader int java.util.List org.apache.cassandra.io.sstable.format.SSTableReader top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
13: iconst_1
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 14 1 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
1 14 2 level I
4 14 3 copyLevel Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
7 14 4 previous Lorg/apache/cassandra/io/sstable/format/SSTableReader;
9 12 5 current Lorg/apache/cassandra/io/sstable/format/SSTableReader;
MethodParameters:
Name Flags
sstable
private synchronized void sendBackToL0(org.apache.cassandra.io.sstable.format.SSTableReader);
descriptor: (Lorg/apache/cassandra/io/sstable/format/SSTableReader;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.remove:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)I
pop
1: aload 1
getfield org.apache.cassandra.io.sstable.format.SSTableReader.descriptor:Lorg/apache/cassandra/io/sstable/Descriptor;
invokevirtual org.apache.cassandra.io.sstable.Descriptor.getMetadataSerializer:()Lorg/apache/cassandra/io/sstable/metadata/IMetadataSerializer;
aload 1
getfield org.apache.cassandra.io.sstable.format.SSTableReader.descriptor:Lorg/apache/cassandra/io/sstable/Descriptor;
iconst_0
invokeinterface org.apache.cassandra.io.sstable.metadata.IMetadataSerializer.mutateLevel:(Lorg/apache/cassandra/io/sstable/Descriptor;I)V
2: aload 1
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.reloadSSTableMetadata:()V
3: aload 0
aload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.add:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)V
4: goto 7
5: StackMap locals:
StackMap stack: java.io.IOException
astore 2
start local 2 6: new java.lang.RuntimeException
dup
ldc "Could not reload sstable meta data"
aload 2
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 8 1 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
6 7 2 e Ljava/io/IOException;
Exception table:
from to target type
1 4 5 Class java.io.IOException
MethodParameters:
Name Flags
sstable
private java.lang.String toString(java.util.Collection<org.apache.cassandra.io.sstable.format.SSTableReader>);
descriptor: (Ljava/util/Collection;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 1: aload 1
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 9
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest java.util.Collection java.lang.StringBuilder top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 3
start local 3 3: aload 2
aload 3
getfield org.apache.cassandra.io.sstable.format.SSTableReader.descriptor:Lorg/apache/cassandra/io/sstable/Descriptor;
getfield org.apache.cassandra.io.sstable.Descriptor.cfname:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: bipush 45
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
5: aload 3
getfield org.apache.cassandra.io.sstable.format.SSTableReader.descriptor:Lorg/apache/cassandra/io/sstable/Descriptor;
getfield org.apache.cassandra.io.sstable.Descriptor.generation:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
6: ldc "(L"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: aload 3
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableLevel:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
8: ldc "), "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 3 9: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
10: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 11 1 sstables Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
1 11 2 builder Ljava/lang/StringBuilder;
3 9 3 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
Signature: (Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;)Ljava/lang/String;
MethodParameters:
Name Flags
sstables
public long maxBytesForLevel(int, long);
descriptor: (IJ)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 1
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.levelFanoutSize:I
lload 2
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.maxBytesForLevel:(IIJ)J
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 1 1 level I
0 1 2 maxSSTableSizeInBytes J
MethodParameters:
Name Flags
level
maxSSTableSizeInBytes
public static long maxBytesForLevel(int, int, long);
descriptor: (IIJ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iload 0
ifne 2
1: ldc 4
lload 2
lmul
lreturn
2: StackMap locals:
StackMap stack:
iload 1
i2d
iload 0
i2d
invokestatic java.lang.Math.pow:(DD)D
lload 2
l2d
dmul
dstore 4
start local 4 3: dload 4
ldc 9.223372036854776E18
dcmpl
ifle 5
4: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "At most 9223372036854775807 bytes may be in a compaction level; your maxSSTableSize must be absurdly high to compute "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
dload 4
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: double
StackMap stack:
dload 4
d2l
lreturn
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 level I
0 6 1 levelFanoutSize I
0 6 2 maxSSTableSizeInBytes J
3 6 4 bytes D
MethodParameters:
Name Flags
level
levelFanoutSize
maxSSTableSizeInBytes
public synchronized org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate getCompactionCandidates();
descriptor: ()Lorg/apache/cassandra/db/compaction/LeveledManifest$CompactionCandidate;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=10, args_size=1
start local 0 0: getstatic org.apache.cassandra.service.StorageService.instance:Lorg/apache/cassandra/service/StorageService;
invokevirtual org.apache.cassandra.service.StorageService.isBootstrapMode:()Z
ifeq 6
1: aload 0
aload 0
iconst_0
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getSSTablesForSTCS:(Ljava/util/Collection;)Ljava/util/List;
astore 1
start local 1 2: aload 1
invokeinterface java.util.List.isEmpty:()Z
ifne 5
3: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "Bootstrapping - doing STCS in L0"
invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;)V
4: new org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate
dup
aload 1
iconst_0
ldc 9223372036854775807
invokespecial org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate.<init>:(Ljava/util/Collection;IJ)V
areturn
5: StackMap locals: java.util.List
StackMap stack:
aconst_null
areturn
end local 1 6: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
iconst_1
isub
istore 1
start local 1 7: goto 28
8: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
astore 2
start local 2 9: aload 2
invokeinterface java.util.List.isEmpty:()Z
ifeq 11
10: goto 27
11: StackMap locals: java.util.List
StackMap stack:
aload 2
invokestatic com.google.common.collect.Sets.newHashSet:(Ljava/lang/Iterable;)Ljava/util/HashSet;
astore 3
start local 3 12: aload 3
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.getTracker:()Lorg/apache/cassandra/db/lifecycle/Tracker;
invokevirtual org.apache.cassandra.db.lifecycle.Tracker.getCompacting:()Ljava/util/Set;
invokestatic com.google.common.collect.Sets.difference:(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView;
astore 4
start local 4 13: aload 4
invokestatic org.apache.cassandra.io.sstable.format.SSTableReader.getTotalBytes:(Ljava/lang/Iterable;)J
l2d
aload 0
iload 1
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.maxSSTableSizeInBytes:J
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.maxBytesForLevel:(IJ)J
l2d
ddiv
dstore 5
start local 5 14: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "Compaction score for level {} is {}"
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
dload 5
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
15: dload 5
ldc 1.001
dcmpl
ifle 27
16: aload 0
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getSTCSInL0CompactionCandidate:()Lorg/apache/cassandra/db/compaction/LeveledManifest$CompactionCandidate;
astore 7
start local 7 17: aload 7
ifnull 19
18: aload 7
areturn
19: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.List java.util.Set java.util.Set double org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate
StackMap stack:
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getCandidatesFor:(I)Ljava/util/Collection;
astore 8
start local 8 20: aload 8
invokeinterface java.util.Collection.isEmpty:()Z
ifne 26
21: aload 0
aload 8
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getNextLevel:(Ljava/util/Collection;)I
istore 9
start local 9 22: aload 0
iload 9
aload 8
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getOverlappingStarvedSSTables:(ILjava/util/Collection;)Ljava/util/Collection;
astore 8
23: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isTraceEnabled:()Z
ifeq 25
24: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "Compaction candidates for L{} are {}"
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 0
aload 8
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.toString:(Ljava/util/Collection;)Ljava/lang/String;
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
25: StackMap locals: java.util.Collection int
StackMap stack:
new org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate
dup
aload 8
iload 9
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.getCompactionStrategyManager:()Lorg/apache/cassandra/db/compaction/CompactionStrategyManager;
invokevirtual org.apache.cassandra.db.compaction.CompactionStrategyManager.getMaxSSTableBytes:()J
invokespecial org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate.<init>:(Ljava/util/Collection;IJ)V
areturn
end local 9 26: StackMap locals:
StackMap stack:
getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "No compaction candidates for L{}"
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
end local 8 end local 7 end local 5 end local 4 end local 3 end local 2 27: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int
StackMap stack:
iinc 1 -1
StackMap locals:
StackMap stack:
28: iload 1
ifgt 8
end local 1 29: aload 0
iconst_0
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 31
30: aconst_null
areturn
31: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getCandidatesFor:(I)Ljava/util/Collection;
astore 1
start local 1 32: aload 1
invokeinterface java.util.Collection.isEmpty:()Z
ifeq 34
33: aload 0
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getSTCSInL0CompactionCandidate:()Lorg/apache/cassandra/db/compaction/LeveledManifest$CompactionCandidate;
areturn
34: StackMap locals: java.util.Collection
StackMap stack:
new org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate
dup
aload 1
aload 0
aload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getNextLevel:(Ljava/util/Collection;)I
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.maxSSTableSizeInBytes:J
invokespecial org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate.<init>:(Ljava/util/Collection;IJ)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
2 6 1 mostInteresting Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
7 29 1 i I
9 27 2 sstables Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
12 27 3 sstablesInLevel Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
13 27 4 remaining Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
14 27 5 score D
17 27 7 l0Compaction Lorg/apache/cassandra/db/compaction/LeveledManifest$CompactionCandidate;
20 27 8 candidates Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
22 26 9 nextLevel I
32 35 1 candidates Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
private org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate getSTCSInL0CompactionCandidate();
descriptor: ()Lorg/apache/cassandra/db/compaction/LeveledManifest$CompactionCandidate;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=2, args_size=1
start local 0 0: invokestatic org.apache.cassandra.config.DatabaseDescriptor.getDisableSTCSInL0:()Z
ifne 5
aload 0
iconst_0
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.size:()I
bipush 32
if_icmple 5
1: aload 0
aload 0
iconst_0
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getSSTablesForSTCS:(Ljava/util/Collection;)Ljava/util/List;
astore 1
start local 1 2: aload 1
invokeinterface java.util.List.isEmpty:()Z
ifne 5
3: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "L0 is too far behind, performing size-tiering there first"
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;)V
4: new org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate
dup
aload 1
iconst_0
ldc 9223372036854775807
invokespecial org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate.<init>:(Ljava/util/Collection;IJ)V
areturn
end local 1 5: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
2 5 1 mostInteresting Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
private java.util.List<org.apache.cassandra.io.sstable.format.SSTableReader> getSSTablesForSTCS(java.util.Collection<org.apache.cassandra.io.sstable.format.SSTableReader>);
descriptor: (Ljava/util/Collection;)Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.getTracker:()Lorg/apache/cassandra/db/lifecycle/Tracker;
aload 1
invokevirtual org.apache.cassandra.db.lifecycle.Tracker.getUncompacting:(Ljava/lang/Iterable;)Ljava/lang/Iterable;
astore 2
start local 2 1: aload 2
invokestatic org.apache.cassandra.db.compaction.AbstractCompactionStrategy.filterSuspectSSTables:(Ljava/lang/Iterable;)Ljava/util/List;
invokestatic org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.createSSTableAndLengthPairs:(Ljava/lang/Iterable;)Ljava/util/List;
astore 3
start local 3 2: aload 3
3: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.options:Lorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;
getfield org.apache.cassandra.db.compaction.SizeTieredCompactionStrategyOptions.bucketHigh:D
4: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.options:Lorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;
getfield org.apache.cassandra.db.compaction.SizeTieredCompactionStrategyOptions.bucketLow:D
5: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.options:Lorg/apache/cassandra/db/compaction/SizeTieredCompactionStrategyOptions;
getfield org.apache.cassandra.db.compaction.SizeTieredCompactionStrategyOptions.minSSTableSize:J
6: invokestatic org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.getBuckets:(Ljava/util/Collection;DDJ)Ljava/util/List;
astore 4
start local 4 7: aload 4
iconst_4
bipush 32
invokestatic org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy.mostInterestingBucket:(Ljava/util/List;II)Ljava/util/List;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 8 1 sstables Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
1 8 2 candidates Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
2 8 3 pairs Ljava/util/List<Lorg/apache/cassandra/utils/Pair<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Ljava/lang/Long;>;>;
7 8 4 buckets Ljava/util/List<Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;>;
Signature: (Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;)Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
sstables
private java.util.Collection<org.apache.cassandra.io.sstable.format.SSTableReader> getOverlappingStarvedSSTables(int, java.util.Collection<org.apache.cassandra.io.sstable.format.SSTableReader>);
descriptor: (ILjava/util/Collection;)Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=12, args_size=3
start local 0 start local 1 start local 2 0: new java.util.HashSet
dup
aload 2
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 3
start local 3 1: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
iconst_1
isub
istore 4
start local 4 2: goto 5
3: StackMap locals: java.util.Set int
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.compactionCounter:[I
iload 4
dup2
iaload
iconst_1
iadd
iastore
4: iinc 4 -1
StackMap locals:
StackMap stack:
5: iload 4
ifgt 3
end local 4 6: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.compactionCounter:[I
iload 1
iconst_0
iastore
7: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isTraceEnabled:()Z
ifeq 13
8: iconst_0
istore 4
start local 4 9: goto 12
10: StackMap locals:
StackMap stack:
getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "CompactionCounter: {}: {}"
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.compactionCounter:[I
iload 4
iaload
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
11: iinc 4 1
StackMap locals:
StackMap stack:
12: iload 4
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.compactionCounter:[I
arraylength
if_icmplt 10
end local 4 13: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
iconst_1
isub
istore 4
start local 4 14: goto 40
15: StackMap locals: int
StackMap stack:
aload 0
iload 4
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevelSize:(I)I
ifle 39
16: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.compactionCounter:[I
iload 4
iaload
bipush 25
if_icmple 38
17: aconst_null
astore 5
start local 5 18: aconst_null
astore 6
start local 6 19: aload 2
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 8
goto 25
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Collection java.util.Set int org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition top java.util.Iterator
StackMap stack:
20: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 7
start local 7 21: aload 6
ifnull 22
aload 7
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
aload 6
invokevirtual org.apache.cassandra.db.DecoratedKey.compareTo:(Lorg/apache/cassandra/db/PartitionPosition;)I
ifge 23
22: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Collection java.util.Set int org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator
StackMap stack:
aload 7
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
astore 6
23: StackMap locals:
StackMap stack:
aload 5
ifnull 24
aload 7
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
aload 5
invokevirtual org.apache.cassandra.db.DecoratedKey.compareTo:(Lorg/apache/cassandra/db/PartitionPosition;)I
ifle 25
24: StackMap locals:
StackMap stack:
aload 7
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
astore 5
end local 7 25: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Collection java.util.Set int org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 20
26: aload 6
ifnull 27
aload 5
ifnull 27
aload 6
aload 5
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 28
27: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Collection java.util.Set int org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition
StackMap stack:
aload 2
areturn
28: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.getTracker:()Lorg/apache/cassandra/db/lifecycle/Tracker;
invokevirtual org.apache.cassandra.db.lifecycle.Tracker.getCompacting:()Ljava/util/Set;
astore 7
start local 7 29: new org.apache.cassandra.dht.Range
dup
aload 6
aload 5
invokespecial org.apache.cassandra.dht.Range.<init>:(Lorg/apache/cassandra/dht/RingPosition;Lorg/apache/cassandra/dht/RingPosition;)V
astore 8
start local 8 30: aload 0
iload 4
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 37
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Collection java.util.Set int org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition java.util.Set org.apache.cassandra.dht.Range top java.util.Iterator
StackMap stack:
31: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 9
start local 9 32: new org.apache.cassandra.dht.Range
dup
aload 9
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
aload 9
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
invokespecial org.apache.cassandra.dht.Range.<init>:(Lorg/apache/cassandra/dht/RingPosition;Lorg/apache/cassandra/dht/RingPosition;)V
astore 11
start local 11 33: aload 8
aload 11
invokevirtual org.apache.cassandra.dht.Range.contains:(Lorg/apache/cassandra/dht/Range;)Z
ifeq 37
aload 7
aload 9
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 37
34: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "Adding high-level (L{}) {} to candidates"
aload 9
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableLevel:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 9
invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
35: aload 3
aload 9
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
36: aload 3
areturn
end local 11 end local 9 37: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 31
end local 8 end local 7 end local 6 end local 5 38: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Collection java.util.Set int
StackMap stack:
aload 2
areturn
39: StackMap locals:
StackMap stack:
iinc 4 -1
StackMap locals:
StackMap stack:
40: iload 4
ifgt 15
end local 4 41: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 42 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 42 1 targetLevel I
0 42 2 candidates Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
1 42 3 withStarvedCandidate Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
2 6 4 i I
9 13 4 j I
14 41 4 i I
18 38 5 max Lorg/apache/cassandra/db/PartitionPosition;
19 38 6 min Lorg/apache/cassandra/db/PartitionPosition;
21 25 7 candidate Lorg/apache/cassandra/io/sstable/format/SSTableReader;
29 38 7 compacting Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
30 38 8 boundaries Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/db/PartitionPosition;>;
32 37 9 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
33 37 11 r Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/db/PartitionPosition;>;
Signature: (ILjava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;)Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
targetLevel
candidates
public synchronized int getLevelSize(int);
descriptor: (I)I
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
if_icmplt 2
1: new java.lang.ArrayIndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "Maximum valid generation is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.size:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 3 1 i I
MethodParameters:
Name Flags
i
public synchronized int[] getAllLevelSize();
descriptor: ()[I
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
newarray 10
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int[] int
StackMap stack:
aload 1
iload 2
aload 0
iload 2
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.size:()I
iastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 1
arraylength
if_icmplt 3
end local 2 6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
1 7 1 counts [I
2 6 2 i I
private void logDistribution();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=2, args_size=1
start local 0 0: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isTraceEnabled:()Z
ifeq 12
1: iconst_0
istore 1
start local 1 2: goto 11
3: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifne 10
4: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "L{} contains {} SSTables ({}) in {}"
iconst_4
anewarray java.lang.Object
dup
iconst_0
5: iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
6: aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.size:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
7: aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokestatic org.apache.cassandra.io.sstable.format.SSTableReader.getTotalBytes:(Ljava/lang/Iterable;)J
invokestatic org.apache.cassandra.utils.FBUtilities.prettyPrintMemory:(J)Ljava/lang/String;
aastore
dup
iconst_3
8: aload 0
aastore
9: invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
10: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
11: iload 1
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
if_icmplt 3
end local 1 12: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
2 12 1 i I
public synchronized int remove(org.apache.cassandra.io.sstable.format.SSTableReader);
descriptor: (Lorg/apache/cassandra/io/sstable/format/SSTableReader;)I
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableLevel:()I
istore 2
start local 2 1: getstatic org.apache.cassandra.db.compaction.LeveledManifest.$assertionsDisabled:Z
ifne 2
iload 2
ifge 2
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " not present in manifest: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iload 2
aaload
aload 1
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
pop
3: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 4 1 reader Lorg/apache/cassandra/io/sstable/format/SSTableReader;
1 4 2 level I
RuntimeInvisibleAnnotations:
com.google.common.annotations.VisibleForTesting()
RuntimeInvisibleTypeAnnotations:
METHOD_RETURN
com.google.common.annotations.VisibleForTesting()
MethodParameters:
Name Flags
reader
private static java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader> overlapping(java.util.Collection<org.apache.cassandra.io.sstable.format.SSTableReader>, java.lang.Iterable<org.apache.cassandra.io.sstable.format.SSTableReader>);
descriptor: (Ljava/util/Collection;Ljava/lang/Iterable;)Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: getstatic org.apache.cassandra.db.compaction.LeveledManifest.$assertionsDisabled:Z
ifne 1
aload 0
invokeinterface java.util.Collection.isEmpty:()Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 2
start local 2 2: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 3
start local 3 3: aload 3
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.getToken:()Lorg/apache/cassandra/dht/Token;
astore 4
start local 4 4: aload 3
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.getToken:()Lorg/apache/cassandra/dht/Token;
astore 5
start local 5 5: goto 13
6: StackMap locals: java.util.Collection java.lang.Iterable java.util.Iterator org.apache.cassandra.io.sstable.format.SSTableReader org.apache.cassandra.dht.Token org.apache.cassandra.dht.Token
StackMap stack:
aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 3
7: aload 4
aload 3
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.getToken:()Lorg/apache/cassandra/dht/Token;
invokevirtual org.apache.cassandra.dht.Token.compareTo:(Ljava/lang/Object;)I
ifgt 8
aload 4
goto 9
StackMap locals:
StackMap stack:
8: aload 3
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.getToken:()Lorg/apache/cassandra/dht/Token;
StackMap locals:
StackMap stack: org.apache.cassandra.dht.Token
9: astore 4
10: aload 5
aload 3
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.getToken:()Lorg/apache/cassandra/dht/Token;
invokevirtual org.apache.cassandra.dht.Token.compareTo:(Ljava/lang/Object;)I
iflt 11
aload 5
goto 12
StackMap locals:
StackMap stack:
11: aload 3
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.getToken:()Lorg/apache/cassandra/dht/Token;
StackMap locals:
StackMap stack: org.apache.cassandra.dht.Token
12: astore 5
13: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
14: aload 4
aload 5
aload 1
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.overlapping:(Lorg/apache/cassandra/dht/Token;Lorg/apache/cassandra/dht/Token;Ljava/lang/Iterable;)Ljava/util/Set;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 candidates Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
0 15 1 others Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
2 15 2 iter Ljava/util/Iterator<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
3 15 3 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
4 15 4 first Lorg/apache/cassandra/dht/Token;
5 15 5 last Lorg/apache/cassandra/dht/Token;
Signature: (Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;)Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
candidates
others
private static java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader> overlappingWithBounds(org.apache.cassandra.io.sstable.format.SSTableReader, java.util.Map<org.apache.cassandra.io.sstable.format.SSTableReader, org.apache.cassandra.dht.Bounds<org.apache.cassandra.dht.Token>>);
descriptor: (Lorg/apache/cassandra/io/sstable/format/SSTableReader;Ljava/util/Map;)Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.getToken:()Lorg/apache/cassandra/dht/Token;
aload 0
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.getToken:()Lorg/apache/cassandra/dht/Token;
aload 1
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.overlappingWithBounds:(Lorg/apache/cassandra/dht/Token;Lorg/apache/cassandra/dht/Token;Ljava/util/Map;)Ljava/util/Set;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
0 1 1 others Ljava/util/Map<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/dht/Bounds<Lorg/apache/cassandra/dht/Token;>;>;
Signature: (Lorg/apache/cassandra/io/sstable/format/SSTableReader;Ljava/util/Map<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/dht/Bounds<Lorg/apache/cassandra/dht/Token;>;>;)Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
sstable
others
static java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader> overlapping(org.apache.cassandra.dht.Token, org.apache.cassandra.dht.Token, java.lang.Iterable<org.apache.cassandra.io.sstable.format.SSTableReader>);
descriptor: (Lorg/apache/cassandra/dht/Token;Lorg/apache/cassandra/dht/Token;Ljava/lang/Iterable;)Ljava/util/Set;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.genBounds:(Ljava/lang/Iterable;)Ljava/util/Map;
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.overlappingWithBounds:(Lorg/apache/cassandra/dht/Token;Lorg/apache/cassandra/dht/Token;Ljava/util/Map;)Ljava/util/Set;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 start Lorg/apache/cassandra/dht/Token;
0 1 1 end Lorg/apache/cassandra/dht/Token;
0 1 2 sstables Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
Signature: (Lorg/apache/cassandra/dht/Token;Lorg/apache/cassandra/dht/Token;Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;)Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
RuntimeInvisibleAnnotations:
com.google.common.annotations.VisibleForTesting()
RuntimeInvisibleTypeAnnotations:
METHOD_RETURN
com.google.common.annotations.VisibleForTesting()
MethodParameters:
Name Flags
start
end
sstables
private static java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader> overlappingWithBounds(org.apache.cassandra.dht.Token, org.apache.cassandra.dht.Token, java.util.Map<org.apache.cassandra.io.sstable.format.SSTableReader, org.apache.cassandra.dht.Bounds<org.apache.cassandra.dht.Token>>);
descriptor: (Lorg/apache/cassandra/dht/Token;Lorg/apache/cassandra/dht/Token;Ljava/util/Map;)Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.apache.cassandra.db.compaction.LeveledManifest.$assertionsDisabled:Z
ifne 1
aload 0
aload 1
invokevirtual org.apache.cassandra.dht.Token.compareTo:(Ljava/lang/Object;)I
ifle 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 3
start local 3 2: new org.apache.cassandra.dht.Bounds
dup
aload 0
aload 1
invokespecial org.apache.cassandra.dht.Bounds.<init>:(Lorg/apache/cassandra/dht/RingPosition;Lorg/apache/cassandra/dht/RingPosition;)V
astore 4
start local 4 3: aload 2
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 7
StackMap locals: org.apache.cassandra.dht.Token org.apache.cassandra.dht.Token java.util.Map java.util.Set org.apache.cassandra.dht.Bounds top java.util.Iterator
StackMap stack:
4: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 5
start local 5 5: aload 5
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast org.apache.cassandra.dht.Bounds
aload 4
invokevirtual org.apache.cassandra.dht.Bounds.intersects:(Lorg/apache/cassandra/dht/Bounds;)Z
ifeq 7
6: aload 3
aload 5
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 5 7: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
8: aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 start Lorg/apache/cassandra/dht/Token;
0 9 1 end Lorg/apache/cassandra/dht/Token;
0 9 2 sstables Ljava/util/Map<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/dht/Bounds<Lorg/apache/cassandra/dht/Token;>;>;
2 9 3 overlapped Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
3 9 4 promotedBounds Lorg/apache/cassandra/dht/Bounds<Lorg/apache/cassandra/dht/Token;>;
5 7 5 pair Ljava/util/Map$Entry<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/dht/Bounds<Lorg/apache/cassandra/dht/Token;>;>;
Signature: (Lorg/apache/cassandra/dht/Token;Lorg/apache/cassandra/dht/Token;Ljava/util/Map<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/dht/Bounds<Lorg/apache/cassandra/dht/Token;>;>;)Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
start
end
sstables
private static java.util.Map<org.apache.cassandra.io.sstable.format.SSTableReader, org.apache.cassandra.dht.Bounds<org.apache.cassandra.dht.Token>> genBounds(java.lang.Iterable<org.apache.cassandra.io.sstable.format.SSTableReader>);
descriptor: (Ljava/lang/Iterable;)Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=4, args_size=1
start local 0 0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 1
start local 1 1: aload 0
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: java.lang.Iterable java.util.Map top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 2
start local 2 3: aload 1
aload 2
new org.apache.cassandra.dht.Bounds
dup
aload 2
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.getToken:()Lorg/apache/cassandra/dht/Token;
aload 2
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
invokevirtual org.apache.cassandra.db.DecoratedKey.getToken:()Lorg/apache/cassandra/dht/Token;
invokespecial org.apache.cassandra.dht.Bounds.<init>:(Lorg/apache/cassandra/dht/RingPosition;Lorg/apache/cassandra/dht/RingPosition;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 ssTableReaders Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
1 6 1 boundsMap Ljava/util/Map<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/dht/Bounds<Lorg/apache/cassandra/dht/Token;>;>;
3 4 2 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
Signature: (Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;)Ljava/util/Map<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/dht/Bounds<Lorg/apache/cassandra/dht/Token;>;>;
MethodParameters:
Name Flags
ssTableReaders
private java.util.Collection<org.apache.cassandra.io.sstable.format.SSTableReader> getCandidatesFor(int);
descriptor: (I)Ljava/util/Collection;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=13, args_size=2
start local 0 start local 1 0: getstatic org.apache.cassandra.db.compaction.LeveledManifest.$assertionsDisabled:Z
ifne 1
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "Choosing candidates for L{}"
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
2: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.getTracker:()Lorg/apache/cassandra/db/lifecycle/Tracker;
invokevirtual org.apache.cassandra.db.lifecycle.Tracker.getCompacting:()Ljava/util/Set;
astore 2
start local 2 3: iload 1
ifne 43
4: aload 0
iconst_0
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getCompacting:(I)Ljava/util/Set;
astore 3
start local 3 5: aconst_null
astore 4
start local 4 6: aconst_null
astore 5
start local 5 7: aload 3
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 13
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set java.util.Set org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition top java.util.Iterator
StackMap stack:
8: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 6
start local 6 9: aload 5
ifnull 10
aload 6
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
aload 5
invokevirtual org.apache.cassandra.db.DecoratedKey.compareTo:(Lorg/apache/cassandra/db/PartitionPosition;)I
ifge 11
10: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set java.util.Set org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator
StackMap stack:
aload 6
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
astore 5
11: StackMap locals:
StackMap stack:
aload 4
ifnull 12
aload 6
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
aload 4
invokevirtual org.apache.cassandra.db.DecoratedKey.compareTo:(Lorg/apache/cassandra/db/PartitionPosition;)I
ifle 13
12: StackMap locals:
StackMap stack:
aload 6
getfield org.apache.cassandra.io.sstable.format.SSTableReader.last:Lorg/apache/cassandra/db/DecoratedKey;
astore 4
end local 6 13: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set java.util.Set org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
14: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 6
start local 6 15: aload 0
iconst_0
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
getstatic org.apache.cassandra.db.compaction.LeveledManifest.suspectP:Lcom/google/common/base/Predicate;
invokestatic com.google.common.base.Predicates.not:(Lcom/google/common/base/Predicate;)Lcom/google/common/base/Predicate;
invokestatic com.google.common.collect.Iterables.filter:(Ljava/lang/Iterable;Lcom/google/common/base/Predicate;)Ljava/lang/Iterable;
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.genBounds:(Ljava/lang/Iterable;)Ljava/util/Map;
astore 7
start local 7 16: aload 0
aload 7
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.ageSortedSSTables:(Ljava/util/Collection;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 32
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set java.util.Set org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition java.util.Set java.util.Map top java.util.Iterator
StackMap stack:
17: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 8
start local 8 18: aload 6
aload 8
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 20
19: goto 32
20: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set java.util.Set org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition java.util.Set java.util.Map org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator
StackMap stack:
aload 8
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
aload 8
aload 7
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.overlappingWithBounds:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;Ljava/util/Map;)Ljava/util/Set;
invokestatic com.google.common.collect.Sets.union:(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView;
astore 10
start local 10 21: aload 10
aload 3
invokestatic com.google.common.collect.Sets.intersection:(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView;
invokevirtual com.google.common.collect.Sets$SetView.isEmpty:()Z
ifne 23
22: goto 32
23: StackMap locals: com.google.common.collect.Sets$SetView
StackMap stack:
aload 10
invokevirtual com.google.common.collect.Sets$SetView.iterator:()Ljava/util/Iterator;
astore 12
goto 28
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set java.util.Set org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition java.util.Set java.util.Map org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator com.google.common.collect.Sets$SetView top java.util.Iterator
StackMap stack:
24: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 11
start local 11 25: aload 5
ifnull 26
aload 4
ifnull 26
aload 5
invokeinterface org.apache.cassandra.db.PartitionPosition.getToken:()Lorg/apache/cassandra/dht/Token;
aload 4
invokeinterface org.apache.cassandra.db.PartitionPosition.getToken:()Lorg/apache/cassandra/dht/Token;
iconst_1
anewarray org.apache.cassandra.io.sstable.format.SSTableReader
dup
iconst_0
aload 11
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.overlapping:(Lorg/apache/cassandra/dht/Token;Lorg/apache/cassandra/dht/Token;Ljava/lang/Iterable;)Ljava/util/Set;
invokeinterface java.util.Set.size:()I
ifne 27
26: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set java.util.Set org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition java.util.Set java.util.Map org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator com.google.common.collect.Sets$SetView org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator
StackMap stack:
aload 6
aload 11
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
27: StackMap locals:
StackMap stack:
aload 7
aload 11
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 11 28: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set java.util.Set org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition java.util.Set java.util.Map org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator com.google.common.collect.Sets$SetView top java.util.Iterator
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 24
29: aload 6
invokeinterface java.util.Set.size:()I
bipush 32
if_icmple 32
30: new java.util.HashSet
dup
aload 0
aload 6
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.ageSortedSSTables:(Ljava/util/Collection;)Ljava/util/List;
iconst_0
bipush 32
invokeinterface java.util.List.subList:(II)Ljava/util/List;
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 6
31: goto 33
end local 10 end local 8 32: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set java.util.Set org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition java.util.Set java.util.Map top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 17
33: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set java.util.Set org.apache.cassandra.db.PartitionPosition org.apache.cassandra.db.PartitionPosition java.util.Set java.util.Map
StackMap stack:
aload 6
invokestatic org.apache.cassandra.io.sstable.format.SSTableReader.getTotalBytes:(Ljava/lang/Iterable;)J
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.maxSSTableSizeInBytes:J
lcmp
ifle 40
34: aload 6
aload 0
iconst_1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.overlapping:(Ljava/util/Collection;Ljava/lang/Iterable;)Ljava/util/Set;
astore 8
start local 8 35: aload 8
aload 2
invokestatic com.google.common.collect.Sets.intersection:(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView;
invokevirtual com.google.common.collect.Sets$SetView.size:()I
ifle 37
36: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
37: StackMap locals: java.util.Set
StackMap stack:
aload 6
aload 3
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.overlapping:(Ljava/util/Collection;Ljava/lang/Iterable;)Ljava/util/Set;
invokeinterface java.util.Set.isEmpty:()Z
ifne 39
38: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
39: StackMap locals:
StackMap stack:
aload 6
aload 8
invokestatic com.google.common.collect.Sets.union:(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView;
astore 6
end local 8 40: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Set.size:()I
iconst_2
if_icmpge 42
41: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
42: StackMap locals:
StackMap stack:
aload 6
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 43: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set
StackMap stack:
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
getstatic org.apache.cassandra.io.sstable.format.SSTableReader.sstableComparator:Ljava/util/Comparator;
invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
44: iconst_0
istore 3
start local 3 45: iconst_0
istore 4
start local 4 46: goto 52
47: StackMap locals: int int
StackMap stack:
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
iload 4
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 5
start local 5 48: aload 5
getfield org.apache.cassandra.io.sstable.format.SSTableReader.first:Lorg/apache/cassandra/db/DecoratedKey;
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.lastCompactedKeys:[Lorg/apache/cassandra/db/PartitionPosition;
iload 1
aaload
invokevirtual org.apache.cassandra.db.DecoratedKey.compareTo:(Lorg/apache/cassandra/db/PartitionPosition;)I
ifle 51
49: iload 4
istore 3
50: goto 53
end local 5 51: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
52: iload 4
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 47
end local 4 53: StackMap locals:
StackMap stack:
aload 0
iload 1
iconst_1
iadd
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.genBounds:(Ljava/lang/Iterable;)Ljava/util/Map;
astore 4
start local 4 54: iconst_0
istore 5
start local 5 55: goto 63
56: StackMap locals: java.util.Map int
StackMap stack:
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
iload 3
iload 5
iadd
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.size:()I
irem
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 6
start local 6 57: aload 6
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
aload 6
aload 4
invokestatic org.apache.cassandra.db.compaction.LeveledManifest.overlappingWithBounds:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;Ljava/util/Map;)Ljava/util/Set;
invokestatic com.google.common.collect.Sets.union:(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView;
astore 7
start local 7 58: aload 7
getstatic org.apache.cassandra.db.compaction.LeveledManifest.suspectP:Lcom/google/common/base/Predicate;
invokestatic com.google.common.collect.Iterables.any:(Ljava/lang/Iterable;Lcom/google/common/base/Predicate;)Z
ifeq 60
59: goto 62
60: StackMap locals: org.apache.cassandra.io.sstable.format.SSTableReader java.util.Set
StackMap stack:
aload 7
aload 2
invokestatic com.google.common.collect.Sets.intersection:(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView;
invokevirtual com.google.common.collect.Sets$SetView.isEmpty:()Z
ifeq 62
61: aload 7
areturn
end local 7 end local 6 62: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
63: iload 5
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 56
end local 5 64: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 65 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 65 1 level I
3 65 2 compacting Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
5 43 3 compactingL0 Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
6 43 4 lastCompactingKey Lorg/apache/cassandra/db/PartitionPosition;
7 43 5 firstCompactingKey Lorg/apache/cassandra/db/PartitionPosition;
9 13 6 candidate Lorg/apache/cassandra/io/sstable/format/SSTableReader;
15 43 6 candidates Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
16 43 7 remaining Ljava/util/Map<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/dht/Bounds<Lorg/apache/cassandra/dht/Token;>;>;
18 32 8 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
21 32 10 overlappedL0 Lcom/google/common/collect/Sets$SetView<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
25 28 11 newCandidate Lorg/apache/cassandra/io/sstable/format/SSTableReader;
35 40 8 l1overlapping Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
45 65 3 start I
46 53 4 i I
48 51 5 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
54 65 4 sstablesNextLevel Ljava/util/Map<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/dht/Bounds<Lorg/apache/cassandra/dht/Token;>;>;
55 64 5 i I
57 62 6 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
58 62 7 candidates Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
Signature: (I)Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
level
private java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader> getCompacting(int);
descriptor: (I)Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 2
start local 2 1: new java.util.HashSet
dup
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 3
start local 3 2: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.getTracker:()Lorg/apache/cassandra/db/lifecycle/Tracker;
invokevirtual org.apache.cassandra.db.lifecycle.Tracker.getCompacting:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 6
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest int java.util.Set java.util.Set top java.util.Iterator
StackMap stack:
3: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 4
start local 4 4: aload 3
aload 4
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 6
5: aload 2
aload 4
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 4 6: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 8 1 level I
1 8 2 sstables Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
2 8 3 levelSSTables Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
4 6 4 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
Signature: (I)Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
level
java.util.List<org.apache.cassandra.io.sstable.format.SSTableReader> ageSortedSSTables(java.util.Collection<org.apache.cassandra.io.sstable.format.SSTableReader>);
descriptor: (Ljava/util/Collection;)Ljava/util/List;
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
aload 1
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 2
start local 2 1: aload 2
getstatic org.apache.cassandra.io.sstable.format.SSTableReader.maxTimestampAscending:Ljava/util/Comparator;
invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 3 1 candidates Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
1 3 2 ageSortedCandidates Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
Signature: (Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;)Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
RuntimeInvisibleAnnotations:
com.google.common.annotations.VisibleForTesting()
RuntimeInvisibleTypeAnnotations:
METHOD_RETURN
com.google.common.annotations.VisibleForTesting()
MethodParameters:
Name Flags
candidates
public synchronized java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader>[] getSStablesPerLevelSnapshot();
descriptor: ()[Ljava/util/Set;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
anewarray java.util.Set
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: java.util.Set[] int
StackMap stack:
aload 1
iload 2
new java.util.HashSet
dup
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iload 2
aaload
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
aastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
if_icmplt 3
end local 2 6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
1 7 1 sstablesPerLevel [Ljava/util/Set;
2 6 2 i I
Signature: ()[Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "Manifest@"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Object.hashCode:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
public int getLevelCount();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
iconst_1
isub
istore 1
start local 1 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokeinterface java.util.List.size:()I
ifle 4
3: iload 1
ireturn
4: StackMap locals:
StackMap stack:
iinc 1 -1
StackMap locals:
StackMap stack:
5: iload 1
ifge 2
end local 1 6: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
1 6 1 i I
public synchronized java.util.SortedSet<org.apache.cassandra.io.sstable.format.SSTableReader> getLevelSorted(int, java.util.Comparator<org.apache.cassandra.io.sstable.format.SSTableReader>);
descriptor: (ILjava/util/Comparator;)Ljava/util/SortedSet;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
iload 1
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
invokestatic com.google.common.collect.ImmutableSortedSet.copyOf:(Ljava/util/Comparator;Ljava/util/Collection;)Lcom/google/common/collect/ImmutableSortedSet;
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/LeveledManifest;
0 1 1 level I
0 1 2 comparator Ljava/util/Comparator<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
Signature: (ILjava/util/Comparator<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;)Ljava/util/SortedSet<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
level
comparator
public java.util.List<org.apache.cassandra.io.sstable.format.SSTableReader> getLevel(int);
descriptor: (I)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
iload 1
aaload
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 1 1 i I
Signature: (I)Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
i
public synchronized int getEstimatedTasks();
descriptor: ()I
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=10, locals=6, args_size=1
start local 0 0: lconst_0
lstore 1
start local 1 1: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
newarray 11
astore 3
start local 3 2: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
arraylength
iconst_1
isub
istore 4
start local 4 3: goto 8
4: StackMap locals: long long[] int
StackMap stack:
aload 0
iload 4
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.getLevel:(I)Ljava/util/List;
astore 5
start local 5 5: aload 3
iload 4
lconst_0
aload 5
invokestatic org.apache.cassandra.io.sstable.format.SSTableReader.getTotalBytes:(Ljava/lang/Iterable;)J
aload 0
iload 4
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.maxSSTableSizeInBytes:J
invokevirtual org.apache.cassandra.db.compaction.LeveledManifest.maxBytesForLevel:(IJ)J
l2d
ldc 1.001
dmul
d2l
lsub
invokestatic java.lang.Math.max:(JJ)J
l2d
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.maxSSTableSizeInBytes:J
l2d
ddiv
invokestatic java.lang.Math.ceil:(D)D
d2l
lastore
6: lload 1
aload 3
iload 4
laload
ladd
lstore 1
end local 5 7: iinc 4 -1
StackMap locals:
StackMap stack:
8: iload 4
ifge 4
end local 4 9: getstatic org.apache.cassandra.db.compaction.LeveledManifest.logger:Lorg/slf4j/Logger;
ldc "Estimating {} compactions to do for {}.{}"
iconst_3
anewarray java.lang.Object
dup
iconst_0
10: aload 3
invokestatic java.util.Arrays.toString:([J)Ljava/lang/String;
aastore
dup
iconst_1
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
getfield org.apache.cassandra.db.ColumnFamilyStore.keyspace:Lorg/apache/cassandra/db/Keyspace;
invokevirtual org.apache.cassandra.db.Keyspace.getName:()Ljava/lang/String;
aastore
dup
iconst_2
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
getfield org.apache.cassandra.db.ColumnFamilyStore.name:Ljava/lang/String;
aastore
11: invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
12: lload 1
invokestatic com.google.common.primitives.Ints.checkedCast:(J)I
ireturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
1 13 1 tasks J
2 13 3 estimated [J
3 9 4 i I
5 7 5 sstables Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
public int getNextLevel(java.util.Collection<org.apache.cassandra.io.sstable.format.SSTableReader>);
descriptor: (Ljava/util/Collection;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: ldc -2147483648
istore 2
start local 2 1: ldc 2147483647
istore 3
start local 3 2: aload 1
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 5
goto 6
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest java.util.Collection int int top java.util.Iterator
StackMap stack:
3: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 4
start local 4 4: aload 4
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableLevel:()I
iload 2
invokestatic java.lang.Math.max:(II)I
istore 2
5: aload 4
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableLevel:()I
iload 3
invokestatic java.lang.Math.min:(II)I
istore 3
end local 4 6: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: iload 3
ifne 10
iload 3
iload 2
if_icmpne 10
aload 1
invokestatic org.apache.cassandra.io.sstable.format.SSTableReader.getTotalBytes:(Ljava/lang/Iterable;)J
aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.maxSSTableSizeInBytes:J
lcmp
ifge 10
8: iconst_0
istore 4
start local 4 9: goto 14
end local 4 10: StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest java.util.Collection int int
StackMap stack:
iload 3
iload 2
if_icmpne 11
iload 2
iconst_1
iadd
goto 12
StackMap locals:
StackMap stack:
11: iload 2
StackMap locals:
StackMap stack: int
12: istore 4
start local 4 13: getstatic org.apache.cassandra.db.compaction.LeveledManifest.$assertionsDisabled:Z
ifne 14
iload 4
ifgt 14
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
14: StackMap locals: int
StackMap stack:
iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
0 15 1 sstables Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
1 15 2 maximumLevel I
2 15 3 minimumLevel I
4 6 4 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
9 10 4 newLevel I
13 15 4 newLevel I
Signature: (Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;)I
MethodParameters:
Name Flags
sstables
public java.lang.Iterable<org.apache.cassandra.io.sstable.format.SSTableReader> getAllSSTables();
descriptor: ()Ljava/lang/Iterable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 1
start local 1 1: aload 0
getfield org.apache.cassandra.db.compaction.LeveledManifest.generations:[Ljava/util/List;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 5
StackMap locals: org.apache.cassandra.db.compaction.LeveledManifest java.util.Set top int int java.util.List[]
StackMap stack:
2: aload 5
iload 3
aaload
astore 2
start local 2 3: aload 1
aload 2
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
end local 2 4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
iload 4
if_icmplt 2
6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/cassandra/db/compaction/LeveledManifest;
1 7 1 sstables Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
3 4 2 generation Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
Signature: ()Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
}
SourceFile: "LeveledManifest.java"
NestMembers:
org.apache.cassandra.db.compaction.LeveledManifest$1 org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate
InnerClasses:
public abstract SetView = com.google.common.collect.Sets$SetView of com.google.common.collect.Sets
public abstract Entry = java.util.Map$Entry of java.util.Map
org.apache.cassandra.db.compaction.LeveledManifest$1
public CompactionCandidate = org.apache.cassandra.db.compaction.LeveledManifest$CompactionCandidate of org.apache.cassandra.db.compaction.LeveledManifest
public KeyBound = org.apache.cassandra.dht.Token$KeyBound of org.apache.cassandra.dht.Token