public class org.apache.cassandra.db.compaction.CompactionController implements java.lang.AutoCloseable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.cassandra.db.compaction.CompactionController
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 java.lang.String NEVER_PURGE_TOMBSTONES_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "cassandra.never_purge_tombstones"
static final boolean NEVER_PURGE_TOMBSTONES;
descriptor: Z
flags: (0x0018) ACC_STATIC, ACC_FINAL
public final org.apache.cassandra.db.ColumnFamilyStore cfs;
descriptor: Lorg/apache/cassandra/db/ColumnFamilyStore;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
private final boolean compactingRepaired;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private org.apache.cassandra.utils.concurrent.Refs<org.apache.cassandra.io.sstable.format.SSTableReader> overlappingSSTables;
descriptor: Lorg/apache/cassandra/utils/concurrent/Refs;
flags: (0x0002) ACC_PRIVATE
Signature: Lorg/apache/cassandra/utils/concurrent/Refs<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
private org.apache.cassandra.utils.OverlapIterator<org.apache.cassandra.db.PartitionPosition, org.apache.cassandra.io.sstable.format.SSTableReader> overlapIterator;
descriptor: Lorg/apache/cassandra/utils/OverlapIterator;
flags: (0x0002) ACC_PRIVATE
Signature: Lorg/apache/cassandra/utils/OverlapIterator<Lorg/apache/cassandra/db/PartitionPosition;Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
private final java.lang.Iterable<org.apache.cassandra.io.sstable.format.SSTableReader> compacting;
descriptor: Ljava/lang/Iterable;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
private final com.google.common.util.concurrent.RateLimiter limiter;
descriptor: Lcom/google/common/util/concurrent/RateLimiter;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long minTimestamp;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final org.apache.cassandra.schema.CompactionParams$TombstoneOption tombstoneOption;
descriptor: Lorg/apache/cassandra/schema/CompactionParams$TombstoneOption;
flags: (0x0010) ACC_FINAL
final java.util.Map<org.apache.cassandra.io.sstable.format.SSTableReader, org.apache.cassandra.io.util.FileDataInput> openDataFiles;
descriptor: Ljava/util/Map;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Map<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/io/util/FileDataInput;>;
public final int gcBefore;
descriptor: I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
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=1, locals=0, args_size=0
0: ldc Lorg/apache/cassandra/db/compaction/CompactionController;
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.CompactionController.$assertionsDisabled:Z
3: ldc Lorg/apache/cassandra/db/compaction/CompactionController;
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic org.apache.cassandra.db.compaction.CompactionController.logger:Lorg/slf4j/Logger;
4: ldc "cassandra.never_purge_tombstones"
invokestatic java.lang.Boolean.getBoolean:(Ljava/lang/String;)Z
putstatic org.apache.cassandra.db.compaction.CompactionController.NEVER_PURGE_TOMBSTONES:Z
return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(org.apache.cassandra.db.ColumnFamilyStore, int);
descriptor: (Lorg/apache/cassandra/db/ColumnFamilyStore;I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aconst_null
iload 2
invokespecial org.apache.cassandra.db.compaction.CompactionController.<init>:(Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/util/Set;I)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
0 2 1 cfs Lorg/apache/cassandra/db/ColumnFamilyStore;
0 2 2 maxValue I
MethodParameters:
Name Flags
cfs
maxValue
public void <init>(org.apache.cassandra.db.ColumnFamilyStore, java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader>, );
descriptor: (Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/util/Set;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
iload 3
aconst_null
1: aload 1
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.getCompactionStrategyManager:()Lorg/apache/cassandra/db/compaction/CompactionStrategyManager;
invokevirtual org.apache.cassandra.db.compaction.CompactionStrategyManager.getCompactionParams:()Lorg/apache/cassandra/schema/CompactionParams;
invokevirtual org.apache.cassandra.schema.CompactionParams.tombstoneOption:()Lorg/apache/cassandra/schema/CompactionParams$TombstoneOption;
invokespecial org.apache.cassandra.db.compaction.CompactionController.<init>:(Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/util/Set;ILcom/google/common/util/concurrent/RateLimiter;Lorg/apache/cassandra/schema/CompactionParams$TombstoneOption;)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
0 3 1 cfs Lorg/apache/cassandra/db/ColumnFamilyStore;
0 3 2 compacting Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
0 3 3 gcBefore I
Signature: (Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;I)V
MethodParameters:
Name Flags
cfs
compacting
gcBefore
public void <init>(org.apache.cassandra.db.ColumnFamilyStore, java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader>, int, com.google.common.util.concurrent.RateLimiter, org.apache.cassandra.schema.CompactionParams$TombstoneOption);
descriptor: (Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/util/Set;ILcom/google/common/util/concurrent/RateLimiter;Lorg/apache/cassandra/schema/CompactionParams$TombstoneOption;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.apache.cassandra.db.compaction.CompactionController.openDataFiles:Ljava/util/Map;
2: getstatic org.apache.cassandra.db.compaction.CompactionController.$assertionsDisabled:Z
ifne 3
aload 1
ifnonnull 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals: org.apache.cassandra.db.compaction.CompactionController org.apache.cassandra.db.ColumnFamilyStore java.util.Set int com.google.common.util.concurrent.RateLimiter org.apache.cassandra.schema.CompactionParams$TombstoneOption
StackMap stack:
aload 0
aload 1
putfield org.apache.cassandra.db.compaction.CompactionController.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
4: aload 0
iload 3
putfield org.apache.cassandra.db.compaction.CompactionController.gcBefore:I
5: aload 0
aload 2
putfield org.apache.cassandra.db.compaction.CompactionController.compacting:Ljava/lang/Iterable;
6: aload 0
aload 4
putfield org.apache.cassandra.db.compaction.CompactionController.limiter:Lcom/google/common/util/concurrent/RateLimiter;
7: aload 0
aload 2
ifnull 8
aload 2
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/apache/cassandra/io/sstable/format/SSTableReader.isRepaired()Z (5)
(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)Z
invokeinterface java.util.stream.Stream.allMatch:(Ljava/util/function/Predicate;)Z
ifeq 8
iconst_1
goto 9
StackMap locals:
StackMap stack: org.apache.cassandra.db.compaction.CompactionController
8: iconst_0
StackMap locals: org.apache.cassandra.db.compaction.CompactionController org.apache.cassandra.db.ColumnFamilyStore java.util.Set int com.google.common.util.concurrent.RateLimiter org.apache.cassandra.schema.CompactionParams$TombstoneOption
StackMap stack: org.apache.cassandra.db.compaction.CompactionController int
9: putfield org.apache.cassandra.db.compaction.CompactionController.compactingRepaired:Z
10: aload 0
aload 5
putfield org.apache.cassandra.db.compaction.CompactionController.tombstoneOption:Lorg/apache/cassandra/schema/CompactionParams$TombstoneOption;
11: aload 0
aload 2
ifnull 13
aload 2
invokeinterface java.util.Set.isEmpty:()Z
ifne 13
12: aload 2
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
invokedynamic applyAsLong()Ljava/util/function/ToLongFunction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)J
org/apache/cassandra/io/sstable/format/SSTableReader.getMinTimestamp()J (5)
(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)J
invokeinterface java.util.stream.Stream.mapToLong:(Ljava/util/function/ToLongFunction;)Ljava/util/stream/LongStream;
invokeinterface java.util.stream.LongStream.min:()Ljava/util/OptionalLong;
invokevirtual java.util.OptionalLong.getAsLong:()J
goto 14
13: StackMap locals:
StackMap stack: org.apache.cassandra.db.compaction.CompactionController
lconst_0
14: StackMap locals: org.apache.cassandra.db.compaction.CompactionController org.apache.cassandra.db.ColumnFamilyStore java.util.Set int com.google.common.util.concurrent.RateLimiter org.apache.cassandra.schema.CompactionParams$TombstoneOption
StackMap stack: org.apache.cassandra.db.compaction.CompactionController long
putfield org.apache.cassandra.db.compaction.CompactionController.minTimestamp:J
15: aload 0
invokevirtual org.apache.cassandra.db.compaction.CompactionController.refreshOverlaps:()V
16: getstatic org.apache.cassandra.db.compaction.CompactionController.NEVER_PURGE_TOMBSTONES:Z
ifeq 18
17: getstatic org.apache.cassandra.db.compaction.CompactionController.logger:Lorg/slf4j/Logger;
ldc "You are running with -Dcassandra.never_purge_tombstones=true, this is dangerous!"
invokeinterface org.slf4j.Logger.warn:(Ljava/lang/String;)V
18: StackMap locals:
StackMap stack:
return
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 19 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
0 19 1 cfs Lorg/apache/cassandra/db/ColumnFamilyStore;
0 19 2 compacting Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
0 19 3 gcBefore I
0 19 4 limiter Lcom/google/common/util/concurrent/RateLimiter;
0 19 5 tombstoneOption Lorg/apache/cassandra/schema/CompactionParams$TombstoneOption;
Signature: (Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;ILcom/google/common/util/concurrent/RateLimiter;Lorg/apache/cassandra/schema/CompactionParams$TombstoneOption;)V
MethodParameters:
Name Flags
cfs
compacting
gcBefore
limiter
tombstoneOption
public void maybeRefreshOverlaps();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: getstatic org.apache.cassandra.db.compaction.CompactionController.NEVER_PURGE_TOMBSTONES:Z
ifeq 5
1: getstatic org.apache.cassandra.db.compaction.CompactionController.logger:Lorg/slf4j/Logger;
ldc "not refreshing overlaps - running with -D{}=true"
2: ldc "cassandra.never_purge_tombstones"
3: invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
4: return
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.apache.cassandra.db.compaction.CompactionController.ignoreOverlaps:()Z
ifeq 8
6: getstatic org.apache.cassandra.db.compaction.CompactionController.logger:Lorg/slf4j/Logger;
ldc "not refreshing overlaps - running with ignoreOverlaps activated"
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;)V
7: return
8: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.overlappingSSTables:Lorg/apache/cassandra/utils/concurrent/Refs;
invokevirtual org.apache.cassandra.utils.concurrent.Refs.iterator:()Ljava/util/Iterator;
astore 2
goto 13
StackMap locals: org.apache.cassandra.db.compaction.CompactionController top java.util.Iterator
StackMap stack:
9: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 1
start local 1 10: aload 1
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.isMarkedCompacted:()Z
ifeq 13
11: aload 0
invokevirtual org.apache.cassandra.db.compaction.CompactionController.refreshOverlaps:()V
12: return
end local 1 13: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
14: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
10 13 1 reader Lorg/apache/cassandra/io/sstable/format/SSTableReader;
private void refreshOverlaps();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic org.apache.cassandra.db.compaction.CompactionController.NEVER_PURGE_TOMBSTONES:Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.overlappingSSTables:Lorg/apache/cassandra/utils/concurrent/Refs;
ifnull 4
3: aload 0
invokevirtual org.apache.cassandra.db.compaction.CompactionController.close:()V
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.compacting:Ljava/lang/Iterable;
ifnull 5
aload 0
invokevirtual org.apache.cassandra.db.compaction.CompactionController.ignoreOverlaps:()Z
ifeq 6
5: StackMap locals:
StackMap stack:
aload 0
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
invokestatic org.apache.cassandra.utils.concurrent.Refs.tryRef:(Ljava/lang/Iterable;)Lorg/apache/cassandra/utils/concurrent/Refs;
putfield org.apache.cassandra.db.compaction.CompactionController.overlappingSSTables:Lorg/apache/cassandra/utils/concurrent/Refs;
goto 7
6: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.compacting:Ljava/lang/Iterable;
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.getAndReferenceOverlappingLiveSSTables:(Ljava/lang/Iterable;)Lorg/apache/cassandra/utils/concurrent/Refs;
putfield org.apache.cassandra.db.compaction.CompactionController.overlappingSSTables:Lorg/apache/cassandra/utils/concurrent/Refs;
7: StackMap locals:
StackMap stack:
aload 0
new org.apache.cassandra.utils.OverlapIterator
dup
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.overlappingSSTables:Lorg/apache/cassandra/utils/concurrent/Refs;
invokestatic org.apache.cassandra.db.lifecycle.SSTableIntervalTree.buildIntervals:(Ljava/lang/Iterable;)Ljava/util/List;
invokespecial org.apache.cassandra.utils.OverlapIterator.<init>:(Ljava/util/Collection;)V
putfield org.apache.cassandra.db.compaction.CompactionController.overlapIterator:Lorg/apache/cassandra/utils/OverlapIterator;
8: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
public java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader> getFullyExpiredSSTables();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.compacting:Ljava/lang/Iterable;
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.overlappingSSTables:Lorg/apache/cassandra/utils/concurrent/Refs;
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.gcBefore:I
aload 0
invokevirtual org.apache.cassandra.db.compaction.CompactionController.ignoreOverlaps:()Z
invokestatic org.apache.cassandra.db.compaction.CompactionController.getFullyExpiredSSTables:(Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/lang/Iterable;Ljava/lang/Iterable;IZ)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
Signature: ()Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
public static java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader> getFullyExpiredSSTables(org.apache.cassandra.db.ColumnFamilyStore, java.lang.Iterable<org.apache.cassandra.io.sstable.format.SSTableReader>, java.lang.Iterable<org.apache.cassandra.io.sstable.format.SSTableReader>, int, boolean);
descriptor: (Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/lang/Iterable;Ljava/lang/Iterable;IZ)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.apache.cassandra.db.compaction.CompactionController.logger:Lorg/slf4j/Logger;
ldc "Checking droppable sstables in {}"
aload 0
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
1: getstatic org.apache.cassandra.db.compaction.CompactionController.NEVER_PURGE_TOMBSTONES:Z
ifne 2
aload 1
ifnonnull 3
2: StackMap locals:
StackMap stack:
invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.getCompactionStrategyManager:()Lorg/apache/cassandra/db/compaction/CompactionStrategyManager;
invokevirtual org.apache.cassandra.db.compaction.CompactionStrategyManager.onlyPurgeRepairedTombstones:()Z
ifeq 5
aload 1
invokedynamic apply()Lcom/google/common/base/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/apache/cassandra/io/sstable/format/SSTableReader.isRepaired()Z (5)
(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)Z
invokestatic com.google.common.collect.Iterables.all:(Ljava/lang/Iterable;Lcom/google/common/base/Predicate;)Z
ifne 5
4: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
5: StackMap locals:
StackMap stack:
iload 4
ifeq 16
6: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 5
start local 5 7: aload 1
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 7
goto 14
StackMap locals: org.apache.cassandra.db.ColumnFamilyStore java.lang.Iterable java.lang.Iterable int int java.util.Set 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 6
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableMetadata:()Lorg/apache/cassandra/io/sstable/metadata/StatsMetadata;
getfield org.apache.cassandra.io.sstable.metadata.StatsMetadata.maxLocalDeletionTime:I
iload 3
if_icmpge 14
10: aload 5
aload 6
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
11: getstatic org.apache.cassandra.db.compaction.CompactionController.logger:Lorg/slf4j/Logger;
ldc "Dropping overlap ignored expired SSTable {} (maxLocalDeletionTime={}, gcBefore={})"
iconst_3
anewarray java.lang.Object
dup
iconst_0
12: aload 6
aastore
dup
iconst_1
aload 6
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableMetadata:()Lorg/apache/cassandra/io/sstable/metadata/StatsMetadata;
getfield org.apache.cassandra.io.sstable.metadata.StatsMetadata.maxLocalDeletionTime:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
13: invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
end local 6 14: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
15: aload 5
areturn
end local 5 16: StackMap locals: org.apache.cassandra.db.ColumnFamilyStore java.lang.Iterable java.lang.Iterable int int
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 5
start local 5 17: ldc 9223372036854775807
lstore 6
start local 6 18: aload 2
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 9
goto 22
StackMap locals: org.apache.cassandra.db.ColumnFamilyStore java.lang.Iterable java.lang.Iterable int int java.util.List long top java.util.Iterator
StackMap stack:
19: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 8
start local 8 20: aload 8
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableMetadata:()Lorg/apache/cassandra/io/sstable/metadata/StatsMetadata;
getfield org.apache.cassandra.io.sstable.metadata.StatsMetadata.maxLocalDeletionTime:I
iload 3
if_icmplt 22
21: lload 6
aload 8
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getMinTimestamp:()J
invokestatic java.lang.Math.min:(JJ)J
lstore 6
end local 8 22: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 19
23: aload 1
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 9
goto 28
StackMap locals:
StackMap stack:
24: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 8
start local 8 25: aload 8
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableMetadata:()Lorg/apache/cassandra/io/sstable/metadata/StatsMetadata;
getfield org.apache.cassandra.io.sstable.metadata.StatsMetadata.maxLocalDeletionTime:I
iload 3
if_icmpge 27
26: aload 5
aload 8
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
goto 28
27: StackMap locals: org.apache.cassandra.db.ColumnFamilyStore java.lang.Iterable java.lang.Iterable int int java.util.List long org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator
StackMap stack:
lload 6
aload 8
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getMinTimestamp:()J
invokestatic java.lang.Math.min:(JJ)J
lstore 6
end local 8 28: StackMap locals: org.apache.cassandra.db.ColumnFamilyStore java.lang.Iterable java.lang.Iterable int int java.util.List long top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 24
29: aload 0
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.getTracker:()Lorg/apache/cassandra/db/lifecycle/Tracker;
invokevirtual org.apache.cassandra.db.lifecycle.Tracker.getView:()Lorg/apache/cassandra/db/lifecycle/View;
invokevirtual org.apache.cassandra.db.lifecycle.View.getAllMemtables:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 9
goto 32
StackMap locals:
StackMap stack:
30: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.Memtable
astore 8
start local 8 31: lload 6
aload 8
invokevirtual org.apache.cassandra.db.Memtable.getMinTimestamp:()J
invokestatic java.lang.Math.min:(JJ)J
lstore 6
end local 8 32: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 30
33: aload 5
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
start local 8 34: goto 42
35: StackMap locals: org.apache.cassandra.db.ColumnFamilyStore java.lang.Iterable java.lang.Iterable int int java.util.List long java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 9
start local 9 36: aload 9
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getMaxTimestamp:()J
lload 6
lcmp
iflt 39
37: aload 8
invokeinterface java.util.Iterator.remove:()V
38: goto 42
39: StackMap locals: org.apache.cassandra.io.sstable.format.SSTableReader
StackMap stack:
getstatic org.apache.cassandra.db.compaction.CompactionController.logger:Lorg/slf4j/Logger;
ldc "Dropping expired SSTable {} (maxLocalDeletionTime={}, gcBefore={})"
iconst_3
anewarray java.lang.Object
dup
iconst_0
40: aload 9
aastore
dup
iconst_1
aload 9
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getSSTableMetadata:()Lorg/apache/cassandra/io/sstable/metadata/StatsMetadata;
getfield org.apache.cassandra.io.sstable.metadata.StatsMetadata.maxLocalDeletionTime:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
41: invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
end local 9 42: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 35
43: new java.util.HashSet
dup
aload 5
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
areturn
end local 8 end local 6 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 44 0 cfStore Lorg/apache/cassandra/db/ColumnFamilyStore;
0 44 1 compacting Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
0 44 2 overlapping Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
0 44 3 gcBefore I
0 44 4 ignoreOverlaps Z
7 16 5 fullyExpired Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
9 14 6 candidate Lorg/apache/cassandra/io/sstable/format/SSTableReader;
17 44 5 candidates Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
18 44 6 minTimestamp J
20 22 8 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
25 28 8 candidate Lorg/apache/cassandra/io/sstable/format/SSTableReader;
31 32 8 memtable Lorg/apache/cassandra/db/Memtable;
34 44 8 iterator Ljava/util/Iterator<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
36 42 9 candidate Lorg/apache/cassandra/io/sstable/format/SSTableReader;
Signature: (Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;IZ)Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
cfStore
compacting
overlapping
gcBefore
ignoreOverlaps
public static java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader> getFullyExpiredSSTables(org.apache.cassandra.db.ColumnFamilyStore, java.lang.Iterable<org.apache.cassandra.io.sstable.format.SSTableReader>, java.lang.Iterable<org.apache.cassandra.io.sstable.format.SSTableReader>, int);
descriptor: (Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/lang/Iterable;Ljava/lang/Iterable;I)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
iload 3
iconst_0
invokestatic org.apache.cassandra.db.compaction.CompactionController.getFullyExpiredSSTables:(Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/lang/Iterable;Ljava/lang/Iterable;IZ)Ljava/util/Set;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 cfStore Lorg/apache/cassandra/db/ColumnFamilyStore;
0 1 1 compacting Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
0 1 2 overlapping Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
0 1 3 gcBefore I
Signature: (Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;Ljava/lang/Iterable<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;I)Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
cfStore
compacting
overlapping
gcBefore
public java.lang.String getKeyspace();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.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;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
public java.lang.String getColumnFamily();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.cfs:Lorg/apache/cassandra/db/ColumnFamilyStore;
getfield org.apache.cassandra.db.ColumnFamilyStore.name:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
public java.util.function.Predicate<java.lang.Long> getPurgeEvaluator(org.apache.cassandra.db.DecoratedKey);
descriptor: (Lorg/apache/cassandra/db/DecoratedKey;)Ljava/util/function/Predicate;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, args_size=2
start local 0 start local 1 0: getstatic org.apache.cassandra.db.compaction.CompactionController.NEVER_PURGE_TOMBSTONES:Z
ifne 1
aload 0
invokevirtual org.apache.cassandra.db.compaction.CompactionController.compactingRepaired:()Z
ifne 2
1: StackMap locals:
StackMap stack:
invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/apache/cassandra/db/compaction/CompactionController.lambda$3(Ljava/lang/Long;)Z (6)
(Ljava/lang/Long;)Z
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.overlapIterator:Lorg/apache/cassandra/utils/OverlapIterator;
aload 1
invokevirtual org.apache.cassandra.utils.OverlapIterator.update:(Ljava/lang/Comparable;)V
3: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.overlapIterator:Lorg/apache/cassandra/utils/OverlapIterator;
invokevirtual org.apache.cassandra.utils.OverlapIterator.overlaps:()Ljava/util/Set;
astore 2
start local 2 4: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.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.getView:()Lorg/apache/cassandra/db/lifecycle/View;
invokevirtual org.apache.cassandra.db.lifecycle.View.getAllMemtables:()Ljava/lang/Iterable;
astore 3
start local 3 5: ldc 9223372036854775807
lstore 4
start local 4 6: iconst_0
istore 6
start local 6 7: aload 2
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 8
goto 13
StackMap locals: org.apache.cassandra.db.compaction.CompactionController org.apache.cassandra.db.DecoratedKey java.util.Set java.lang.Iterable long int top java.util.Iterator
StackMap stack:
8: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.io.sstable.format.SSTableReader
astore 7
start local 7 9: aload 7
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getBloomFilter:()Lorg/apache/cassandra/utils/IFilter;
instanceof org.apache.cassandra.utils.AlwaysPresentFilter
ifeq 10
aload 7
aload 1
getstatic org.apache.cassandra.io.sstable.format.SSTableReader$Operator.EQ:Lorg/apache/cassandra/io/sstable/format/SSTableReader$Operator;
iconst_0
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getPosition:(Lorg/apache/cassandra/db/PartitionPosition;Lorg/apache/cassandra/io/sstable/format/SSTableReader$Operator;Z)Lorg/apache/cassandra/db/RowIndexEntry;
ifnonnull 11
10: StackMap locals: org.apache.cassandra.db.compaction.CompactionController org.apache.cassandra.db.DecoratedKey java.util.Set java.lang.Iterable long int org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator
StackMap stack:
aload 7
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getBloomFilter:()Lorg/apache/cassandra/utils/IFilter;
aload 1
invokeinterface org.apache.cassandra.utils.IFilter.isPresent:(Lorg/apache/cassandra/utils/IFilter$FilterKey;)Z
ifeq 13
11: StackMap locals:
StackMap stack:
lload 4
aload 7
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getMinTimestamp:()J
invokestatic java.lang.Math.min:(JJ)J
lstore 4
12: iconst_1
istore 6
end local 7 13: StackMap locals: org.apache.cassandra.db.compaction.CompactionController org.apache.cassandra.db.DecoratedKey java.util.Set java.lang.Iterable long int top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
14: aload 3
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 8
goto 20
StackMap locals:
StackMap stack:
15: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.Memtable
astore 7
start local 7 16: aload 7
aload 1
invokevirtual org.apache.cassandra.db.Memtable.getPartition:(Lorg/apache/cassandra/db/DecoratedKey;)Lorg/apache/cassandra/db/partitions/Partition;
astore 9
start local 9 17: aload 9
ifnull 20
18: lload 4
aload 9
invokeinterface org.apache.cassandra.db.partitions.Partition.stats:()Lorg/apache/cassandra/db/rows/EncodingStats;
getfield org.apache.cassandra.db.rows.EncodingStats.minTimestamp:J
invokestatic java.lang.Math.min:(JJ)J
lstore 4
19: iconst_1
istore 6
end local 9 end local 7 20: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
21: iload 6
ifne 23
22: invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/apache/cassandra/db/compaction/CompactionController.lambda$4(Ljava/lang/Long;)Z (6)
(Ljava/lang/Long;)Z
areturn
23: StackMap locals: org.apache.cassandra.db.compaction.CompactionController org.apache.cassandra.db.DecoratedKey java.util.Set java.lang.Iterable long int
StackMap stack:
lload 4
lstore 7
start local 7 24: lload 7
invokedynamic test(J)Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/apache/cassandra/db/compaction/CompactionController.lambda$5(JLjava/lang/Long;)Z (6)
(Ljava/lang/Long;)Z
areturn
end local 7 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
0 25 1 key Lorg/apache/cassandra/db/DecoratedKey;
4 25 2 filteredSSTables Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
5 25 3 memtables Ljava/lang/Iterable<Lorg/apache/cassandra/db/Memtable;>;
6 25 4 minTimestampSeen J
7 25 6 hasTimestamp Z
9 13 7 sstable Lorg/apache/cassandra/io/sstable/format/SSTableReader;
16 20 7 memtable Lorg/apache/cassandra/db/Memtable;
17 20 9 partition Lorg/apache/cassandra/db/partitions/Partition;
24 25 7 finalTimestamp J
Signature: (Lorg/apache/cassandra/db/DecoratedKey;)Ljava/util/function/Predicate<Ljava/lang/Long;>;
MethodParameters:
Name Flags
key
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.overlappingSSTables:Lorg/apache/cassandra/utils/concurrent/Refs;
ifnull 2
1: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.overlappingSSTables:Lorg/apache/cassandra/utils/concurrent/Refs;
invokevirtual org.apache.cassandra.utils.concurrent.Refs.release:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.openDataFiles:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokestatic org.apache.cassandra.io.util.FileUtils.closeQuietly:(Ljava/lang/Iterable;)V
3: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.openDataFiles:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
public boolean compactingRepaired();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.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.onlyPurgeRepairedTombstones:()Z
ifeq 1
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.compactingRepaired:Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
boolean provideTombstoneSources();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.tombstoneOption:Lorg/apache/cassandra/schema/CompactionParams$TombstoneOption;
getstatic org.apache.cassandra.schema.CompactionParams$TombstoneOption.NONE:Lorg/apache/cassandra/schema/CompactionParams$TombstoneOption;
if_acmpeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
public java.lang.Iterable<org.apache.cassandra.db.rows.UnfilteredRowIterator> shadowSources(org.apache.cassandra.db.DecoratedKey, boolean);
descriptor: (Lorg/apache/cassandra/db/DecoratedKey;Z)Ljava/lang/Iterable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.apache.cassandra.db.compaction.CompactionController.provideTombstoneSources:()Z
ifeq 1
aload 0
invokevirtual org.apache.cassandra.db.compaction.CompactionController.compactingRepaired:()Z
ifeq 1
getstatic org.apache.cassandra.db.compaction.CompactionController.NEVER_PURGE_TOMBSTONES:Z
ifeq 2
1: StackMap locals:
StackMap stack:
aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.overlapIterator:Lorg/apache/cassandra/utils/OverlapIterator;
aload 1
invokevirtual org.apache.cassandra.utils.OverlapIterator.update:(Ljava/lang/Comparable;)V
3: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.overlapIterator:Lorg/apache/cassandra/utils/OverlapIterator;
invokevirtual org.apache.cassandra.utils.OverlapIterator.overlaps:()Ljava/util/Set;
4: aload 0
aload 1
iload 2
invokedynamic apply(Lorg/apache/cassandra/db/compaction/CompactionController;Lorg/apache/cassandra/db/DecoratedKey;Z)Lcom/google/common/base/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/apache/cassandra/db/compaction/CompactionController.lambda$6(Lorg/apache/cassandra/db/DecoratedKey;ZLorg/apache/cassandra/io/sstable/format/SSTableReader;)Lorg/apache/cassandra/db/rows/UnfilteredRowIterator; (7)
(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
5: invokestatic com.google.common.collect.Iterables.transform:(Ljava/lang/Iterable;Lcom/google/common/base/Function;)Ljava/lang/Iterable;
6: invokestatic com.google.common.base.Predicates.notNull:()Lcom/google/common/base/Predicate;
7: invokestatic com.google.common.collect.Iterables.filter:(Ljava/lang/Iterable;Lcom/google/common/base/Predicate;)Ljava/lang/Iterable;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
0 8 1 key Lorg/apache/cassandra/db/DecoratedKey;
0 8 2 tombstoneOnly Z
Signature: (Lorg/apache/cassandra/db/DecoratedKey;Z)Ljava/lang/Iterable<Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;>;
MethodParameters:
Name Flags
key
tombstoneOnly
private org.apache.cassandra.db.rows.UnfilteredRowIterator getShadowIterator(org.apache.cassandra.io.sstable.format.SSTableReader, org.apache.cassandra.db.DecoratedKey, boolean);
descriptor: (Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/db/DecoratedKey;Z)Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.isMarkedSuspect:()Z
ifne 3
1: aload 1
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getMaxTimestamp:()J
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.minTimestamp:J
lcmp
ifle 3
2: iload 3
ifeq 4
aload 1
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.mayHaveTombstones:()Z
ifne 4
3: StackMap locals:
StackMap stack:
aconst_null
areturn
4: StackMap locals:
StackMap stack:
aload 1
aload 2
getstatic org.apache.cassandra.io.sstable.format.SSTableReader$Operator.EQ:Lorg/apache/cassandra/io/sstable/format/SSTableReader$Operator;
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getPosition:(Lorg/apache/cassandra/db/PartitionPosition;Lorg/apache/cassandra/io/sstable/format/SSTableReader$Operator;)Lorg/apache/cassandra/db/RowIndexEntry;
astore 4
start local 4 5: aload 4
ifnonnull 7
6: aconst_null
areturn
7: StackMap locals: org.apache.cassandra.db.RowIndexEntry
StackMap stack:
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.openDataFiles:Ljava/util/Map;
aload 1
aload 0
invokedynamic apply(Lorg/apache/cassandra/db/compaction/CompactionController;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/apache/cassandra/db/compaction/CompactionController.openDataFile(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)Lorg/apache/cassandra/io/util/FileDataInput; (7)
(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)Lorg/apache/cassandra/io/util/FileDataInput;
invokeinterface java.util.Map.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
checkcast org.apache.cassandra.io.util.FileDataInput
astore 5
start local 5 8: aload 1
aload 5
aload 2
aload 4
iload 3
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.simpleIterator:(Lorg/apache/cassandra/io/util/FileDataInput;Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/RowIndexEntry;Z)Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
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 9 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
0 9 1 reader Lorg/apache/cassandra/io/sstable/format/SSTableReader;
0 9 2 key Lorg/apache/cassandra/db/DecoratedKey;
0 9 3 tombstoneOnly Z
5 9 4 position Lorg/apache/cassandra/db/RowIndexEntry<*>;
8 9 5 dfile Lorg/apache/cassandra/io/util/FileDataInput;
MethodParameters:
Name Flags
reader
key
tombstoneOnly
protected boolean ignoreOverlaps();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
private org.apache.cassandra.io.util.FileDataInput openDataFile(org.apache.cassandra.io.sstable.format.SSTableReader);
descriptor: (Lorg/apache/cassandra/io/sstable/format/SSTableReader;)Lorg/apache/cassandra/io/util/FileDataInput;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.limiter:Lcom/google/common/util/concurrent/RateLimiter;
ifnull 1
aload 1
aload 0
getfield org.apache.cassandra.db.compaction.CompactionController.limiter:Lcom/google/common/util/concurrent/RateLimiter;
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.openDataReader:(Lcom/google/common/util/concurrent/RateLimiter;)Lorg/apache/cassandra/io/util/RandomAccessReader;
goto 2
StackMap locals:
StackMap stack:
1: aload 1
invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.openDataReader:()Lorg/apache/cassandra/io/util/RandomAccessReader;
StackMap locals:
StackMap stack: org.apache.cassandra.io.util.RandomAccessReader
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
0 3 1 reader Lorg/apache/cassandra/io/sstable/format/SSTableReader;
MethodParameters:
Name Flags
reader
private static boolean lambda$3(java.lang.Long);
descriptor: (Ljava/lang/Long;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 time Ljava/lang/Long;
private static boolean lambda$4(java.lang.Long);
descriptor: (Ljava/lang/Long;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 time Ljava/lang/Long;
private static boolean lambda$5(long, java.lang.Long);
descriptor: (JLjava/lang/Long;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=3, args_size=2
start local 2 0: aload 2
invokevirtual java.lang.Long.longValue:()J
lload 0
lcmp
ifge 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ireturn
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 3 2 time Ljava/lang/Long;
private org.apache.cassandra.db.rows.UnfilteredRowIterator lambda$6(org.apache.cassandra.db.DecoratedKey, boolean, org.apache.cassandra.io.sstable.format.SSTableReader);
descriptor: (Lorg/apache/cassandra/db/DecoratedKey;ZLorg/apache/cassandra/io/sstable/format/SSTableReader;)Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 3 0: aload 0
aload 3
aload 1
iload 2
invokevirtual org.apache.cassandra.db.compaction.CompactionController.getShadowIterator:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;Lorg/apache/cassandra/db/DecoratedKey;Z)Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
areturn
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/compaction/CompactionController;
0 1 3 reader Lorg/apache/cassandra/io/sstable/format/SSTableReader;
}
SourceFile: "CompactionController.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Operator = org.apache.cassandra.io.sstable.format.SSTableReader$Operator of org.apache.cassandra.io.sstable.format.SSTableReader
public final TombstoneOption = org.apache.cassandra.schema.CompactionParams$TombstoneOption of org.apache.cassandra.schema.CompactionParams
public abstract FilterKey = org.apache.cassandra.utils.IFilter$FilterKey of org.apache.cassandra.utils.IFilter