public class org.apache.cassandra.io.sstable.IndexSummaryRedistribution extends org.apache.cassandra.db.compaction.CompactionInfo$Holder
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.io.sstable.IndexSummaryRedistribution
  super_class: org.apache.cassandra.db.compaction.CompactionInfo$Holder
{
  private static final org.slf4j.Logger logger;
    descriptor: Lorg/slf4j/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final double UPSAMPLE_THRESHOLD;
    descriptor: D
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 1.5

  static final double DOWNSAMPLE_THESHOLD;
    descriptor: D
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 0.75

  private final java.util.List<org.apache.cassandra.io.sstable.format.SSTableReader> compacting;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;

  private final java.util.Map<java.util.UUID, org.apache.cassandra.db.lifecycle.LifecycleTransaction> transactions;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/util/UUID;Lorg/apache/cassandra/db/lifecycle/LifecycleTransaction;>;

  private final long memoryPoolBytes;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.UUID compactionId;
    descriptor: Ljava/util/UUID;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private volatile long remainingSpace;
    descriptor: J
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 52
            ldc Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution;
            invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
            putstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
         1: .line 59
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(java.util.List<org.apache.cassandra.io.sstable.format.SSTableReader>, java.util.Map<java.util.UUID, org.apache.cassandra.db.lifecycle.LifecycleTransaction>, );
    descriptor: (Ljava/util/List;Ljava/util/Map;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution this
        start local 1 // java.util.List compacting
        start local 2 // java.util.Map transactions
        start local 3 // long memoryPoolBytes
         0: .line 67
            aload 0 /* this */
            invokespecial org.apache.cassandra.db.compaction.CompactionInfo$Holder.<init>:()V
         1: .line 69
            aload 0 /* this */
            aload 1 /* compacting */
            putfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.compacting:Ljava/util/List;
         2: .line 70
            aload 0 /* this */
            aload 2 /* transactions */
            putfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.transactions:Ljava/util/Map;
         3: .line 71
            aload 0 /* this */
            lload 3 /* memoryPoolBytes */
            putfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.memoryPoolBytes:J
         4: .line 72
            aload 0 /* this */
            invokestatic java.util.UUID.randomUUID:()Ljava/util/UUID;
            putfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.compactionId:Ljava/util/UUID;
         5: .line 73
            return
        end local 3 // long memoryPoolBytes
        end local 2 // java.util.Map transactions
        end local 1 // java.util.List compacting
        end local 0 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0             this  Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution;
            0    6     1       compacting  Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
            0    6     2     transactions  Ljava/util/Map<Ljava/util/UUID;Lorg/apache/cassandra/db/lifecycle/LifecycleTransaction;>;
            0    6     3  memoryPoolBytes  J
    Signature: (Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;Ljava/util/Map<Ljava/util/UUID;Lorg/apache/cassandra/db/lifecycle/LifecycleTransaction;>;J)V
    MethodParameters:
                 Name  Flags
      compacting       
      transactions     
      memoryPoolBytes  

  public java.util.List<org.apache.cassandra.io.sstable.format.SSTableReader> redistributeSummaries();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=17, args_size=1
        start local 0 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution this
         0: .line 77
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "Redistributing index summaries"
            invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;)V
         1: .line 78
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* oldFormatSSTables */
        start local 1 // java.util.List oldFormatSSTables
         2: .line 79
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* redistribute */
        start local 2 // java.util.List redistribute
         3: .line 80
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.transactions:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 4
            goto 13
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List top java.util.Iterator
      StackMap stack:
         4: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.lifecycle.LifecycleTransaction
            astore 3 /* txn */
        start local 3 // org.apache.cassandra.db.lifecycle.LifecycleTransaction txn
         5: .line 82
            aload 3 /* txn */
            invokevirtual org.apache.cassandra.db.lifecycle.LifecycleTransaction.originals:()Ljava/util/Set;
            invokestatic com.google.common.collect.ImmutableList.copyOf:(Ljava/util/Collection;)Lcom/google/common/collect/ImmutableList;
            invokevirtual com.google.common.collect.ImmutableList.iterator:()Ljava/util/Iterator;
            astore 6
            goto 11
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List org.apache.cassandra.db.lifecycle.LifecycleTransaction java.util.Iterator top java.util.Iterator
      StackMap stack:
         6: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.io.sstable.format.SSTableReader
            astore 5 /* sstable */
        start local 5 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
         7: .line 86
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "SSTable {} cannot be re-sampled due to old sstable format"
            aload 5 /* sstable */
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
         8: .line 87
            aload 5 /* sstable */
            getfield org.apache.cassandra.io.sstable.format.SSTableReader.descriptor:Lorg/apache/cassandra/io/sstable/Descriptor;
            getfield org.apache.cassandra.io.sstable.Descriptor.version:Lorg/apache/cassandra/io/sstable/format/Version;
            invokevirtual org.apache.cassandra.io.sstable.format.Version.hasSamplingLevel:()Z
            ifne 11
         9: .line 89
            aload 1 /* oldFormatSSTables */
            aload 5 /* sstable */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        10: .line 90
            aload 3 /* txn */
            aload 5 /* sstable */
            invokevirtual org.apache.cassandra.db.lifecycle.LifecycleTransaction.cancel:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)V
        end local 5 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        11: .line 82
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        12: .line 93
            aload 2 /* redistribute */
            aload 3 /* txn */
            invokevirtual org.apache.cassandra.db.lifecycle.LifecycleTransaction.originals:()Ljava/util/Set;
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        end local 3 // org.apache.cassandra.db.lifecycle.LifecycleTransaction txn
        13: .line 80
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        14: .line 96
            lconst_0
            lstore 3 /* total */
        start local 3 // long total
        15: .line 97
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.compacting:Ljava/util/List;
            aload 2 /* redistribute */
            invokestatic com.google.common.collect.Iterables.concat:(Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 6
            goto 18
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List long top java.util.Iterator
      StackMap stack:
        16: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.io.sstable.format.SSTableReader
            astore 5 /* sstable */
        start local 5 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        17: .line 98
            lload 3 /* total */
            aload 5 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getIndexSummaryOffHeapSize:()J
            ladd
            lstore 3 /* total */
        end local 5 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        18: .line 97
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 16
        19: .line 100
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "Beginning redistribution of index summaries for {} sstables with memory pool size {} MB; current spaced used is {} MB"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        20: .line 101
            aload 2 /* redistribute */
            invokeinterface java.util.List.size:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.memoryPoolBytes:J
            ldc 1024
            ldiv
            ldc 1024
            ldiv
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_2
            lload 3 /* total */
            l2d
            ldc 1024.0
            ddiv
            ldc 1024.0
            ddiv
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
        21: .line 100
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
        22: .line 103
            new java.util.HashMap
            dup
            aload 2 /* redistribute */
            invokeinterface java.util.List.size:()I
            invokespecial java.util.HashMap.<init>:(I)V
            astore 5 /* readRates */
        start local 5 // java.util.Map readRates
        23: .line 104
            dconst_0
            dstore 6 /* totalReadsPerSec */
        start local 6 // double totalReadsPerSec
        24: .line 105
            aload 2 /* redistribute */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 32
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List long java.util.Map double top java.util.Iterator
      StackMap stack:
        25: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.io.sstable.format.SSTableReader
            astore 8 /* sstable */
        start local 8 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        26: .line 107
            aload 0 /* this */
            invokevirtual org.apache.cassandra.io.sstable.IndexSummaryRedistribution.isStopRequested:()Z
            ifeq 28
        27: .line 108
            new org.apache.cassandra.db.compaction.CompactionInterruptedException
            dup
            aload 0 /* this */
            invokevirtual org.apache.cassandra.io.sstable.IndexSummaryRedistribution.getCompactionInfo:()Lorg/apache/cassandra/db/compaction/CompactionInfo;
            invokespecial org.apache.cassandra.db.compaction.CompactionInterruptedException.<init>:(Lorg/apache/cassandra/db/compaction/CompactionInfo;)V
            athrow
        28: .line 110
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List long java.util.Map double org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator
      StackMap stack:
            aload 8 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getReadMeter:()Lorg/apache/cassandra/metrics/RestorableMeter;
            ifnull 32
        29: .line 112
            aload 8 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getReadMeter:()Lorg/apache/cassandra/metrics/RestorableMeter;
            invokevirtual org.apache.cassandra.metrics.RestorableMeter.fifteenMinuteRate:()D
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            astore 10 /* readRate */
        start local 10 // java.lang.Double readRate
        30: .line 113
            dload 6 /* totalReadsPerSec */
            aload 10 /* readRate */
            invokevirtual java.lang.Double.doubleValue:()D
            dadd
            dstore 6 /* totalReadsPerSec */
        31: .line 114
            aload 5 /* readRates */
            aload 8 /* sstable */
            aload 10 /* readRate */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 10 // java.lang.Double readRate
        end local 8 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        32: .line 105
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List long java.util.Map double top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 25
        33: .line 117
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "Total reads/sec across all sstables in index summary resize process: {}"
            dload 6 /* totalReadsPerSec */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
        34: .line 120
            new java.util.ArrayList
            dup
            aload 2 /* redistribute */
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            astore 8 /* sstablesByHotness */
        start local 8 // java.util.List sstablesByHotness
        35: .line 121
            aload 8 /* sstablesByHotness */
            new org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ReadRateComparator
            dup
            aload 5 /* readRates */
            invokespecial org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ReadRateComparator.<init>:(Ljava/util/Map;)V
            invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
        36: .line 123
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.memoryPoolBytes:J
            lstore 9 /* remainingBytes */
        start local 9 // long remainingBytes
        37: .line 124
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.compacting:Ljava/util/List;
            aload 1 /* oldFormatSSTables */
            invokestatic com.google.common.collect.Iterables.concat:(Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 12
            goto 40
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List long java.util.Map double java.util.List long top java.util.Iterator
      StackMap stack:
        38: aload 12
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.io.sstable.format.SSTableReader
            astore 11 /* sstable */
        start local 11 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        39: .line 125
            lload 9 /* remainingBytes */
            aload 11 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getIndexSummaryOffHeapSize:()J
            lsub
            lstore 9 /* remainingBytes */
        end local 11 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        40: .line 124
      StackMap locals:
      StackMap stack:
            aload 12
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 38
        41: .line 127
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "Index summaries for compacting SSTables are using {} MB of space"
        42: .line 128
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.memoryPoolBytes:J
            lload 9 /* remainingBytes */
            lsub
            l2d
            ldc 1024.0
            ddiv
            ldc 1024.0
            ddiv
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
        43: .line 127
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
        44: .line 130
            aconst_null
            astore 12
            aconst_null
            astore 13
        45: aload 8 /* sstablesByHotness */
            invokestatic org.apache.cassandra.utils.concurrent.Refs.ref:(Ljava/lang/Iterable;)Lorg/apache/cassandra/utils/concurrent/Refs;
            astore 14 /* refs */
        start local 14 // org.apache.cassandra.utils.concurrent.Refs refs
        46: .line 132
            aload 0 /* this */
            aload 8 /* sstablesByHotness */
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.transactions:Ljava/util/Map;
            dload 6 /* totalReadsPerSec */
            lload 9 /* remainingBytes */
            invokevirtual org.apache.cassandra.io.sstable.IndexSummaryRedistribution.adjustSamplingLevels:(Ljava/util/List;Ljava/util/Map;DJ)Ljava/util/List;
            astore 11 /* newSSTables */
        start local 11 // java.util.List newSSTables
        47: .line 134
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.transactions:Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 16
            goto 50
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List long java.util.Map double java.util.List long java.util.List java.lang.Throwable java.lang.Throwable org.apache.cassandra.utils.concurrent.Refs top java.util.Iterator
      StackMap stack:
        48: aload 16
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.lifecycle.LifecycleTransaction
            astore 15 /* txn */
        start local 15 // org.apache.cassandra.db.lifecycle.LifecycleTransaction txn
        49: .line 135
            aload 15 /* txn */
            invokevirtual org.apache.cassandra.db.lifecycle.LifecycleTransaction.finish:()Ljava/lang/Object;
            pop
        end local 15 // org.apache.cassandra.db.lifecycle.LifecycleTransaction txn
        50: .line 134
      StackMap locals:
      StackMap stack:
            aload 16
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 48
        51: .line 136
            aload 14 /* refs */
            ifnull 57
            aload 14 /* refs */
            invokevirtual org.apache.cassandra.utils.concurrent.Refs.close:()V
            goto 57
        end local 11 // java.util.List newSSTables
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List long java.util.Map double java.util.List long top java.lang.Throwable java.lang.Throwable org.apache.cassandra.utils.concurrent.Refs
      StackMap stack: java.lang.Throwable
        52: astore 12
            aload 14 /* refs */
            ifnull 53
            aload 14 /* refs */
            invokevirtual org.apache.cassandra.utils.concurrent.Refs.close:()V
        end local 14 // org.apache.cassandra.utils.concurrent.Refs refs
      StackMap locals:
      StackMap stack:
        53: aload 12
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        54: astore 13
            aload 12
            ifnonnull 55
            aload 13
            astore 12
            goto 56
      StackMap locals:
      StackMap stack:
        55: aload 12
            aload 13
            if_acmpeq 56
            aload 12
            aload 13
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        56: aload 12
            athrow
        start local 11 // java.util.List newSSTables
        57: .line 137
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List long java.util.Map double java.util.List long java.util.List
      StackMap stack:
            lconst_0
            lstore 3 /* total */
        58: .line 138
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.compacting:Ljava/util/List;
            aload 1 /* oldFormatSSTables */
            aload 11 /* newSSTables */
            invokestatic com.google.common.collect.Iterables.concat:(Ljava/lang/Iterable;Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 13
            goto 61
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.List long java.util.Map double java.util.List long java.util.List top java.util.Iterator
      StackMap stack:
        59: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.io.sstable.format.SSTableReader
            astore 12 /* sstable */
        start local 12 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        60: .line 139
            lload 3 /* total */
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getIndexSummaryOffHeapSize:()J
            ladd
            lstore 3 /* total */
        end local 12 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        61: .line 138
      StackMap locals:
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 59
        62: .line 140
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "Completed resizing of index summaries; current approximate memory used: {}"
        63: .line 141
            lload 3 /* total */
            invokestatic org.apache.cassandra.utils.FBUtilities.prettyPrintMemory:(J)Ljava/lang/String;
        64: .line 140
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
        65: .line 143
            aload 11 /* newSSTables */
            areturn
        end local 11 // java.util.List newSSTables
        end local 9 // long remainingBytes
        end local 8 // java.util.List sstablesByHotness
        end local 6 // double totalReadsPerSec
        end local 5 // java.util.Map readRates
        end local 3 // long total
        end local 2 // java.util.List redistribute
        end local 1 // java.util.List oldFormatSSTables
        end local 0 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   66     0               this  Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution;
            2   66     1  oldFormatSSTables  Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
            3   66     2       redistribute  Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
            5   13     3                txn  Lorg/apache/cassandra/db/lifecycle/LifecycleTransaction;
            7   11     5            sstable  Lorg/apache/cassandra/io/sstable/format/SSTableReader;
           15   66     3              total  J
           17   18     5            sstable  Lorg/apache/cassandra/io/sstable/format/SSTableReader;
           23   66     5          readRates  Ljava/util/Map<Lorg/apache/cassandra/io/sstable/format/SSTableReader;Ljava/lang/Double;>;
           24   66     6   totalReadsPerSec  D
           26   32     8            sstable  Lorg/apache/cassandra/io/sstable/format/SSTableReader;
           30   32    10           readRate  Ljava/lang/Double;
           35   66     8  sstablesByHotness  Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
           37   66     9     remainingBytes  J
           39   40    11            sstable  Lorg/apache/cassandra/io/sstable/format/SSTableReader;
           47   52    11        newSSTables  Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
           57   66    11        newSSTables  Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
           46   53    14               refs  Lorg/apache/cassandra/utils/concurrent/Refs<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
           49   50    15                txn  Lorg/apache/cassandra/db/lifecycle/LifecycleTransaction;
           60   61    12            sstable  Lorg/apache/cassandra/io/sstable/format/SSTableReader;
      Exception table:
        from    to  target  type
          46    51      52  any
          45    54      54  any
    Exceptions:
      throws java.io.IOException
    Signature: ()Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;

  private java.util.List<org.apache.cassandra.io.sstable.format.SSTableReader> adjustSamplingLevels(java.util.List<org.apache.cassandra.io.sstable.format.SSTableReader>, java.util.Map<java.util.UUID, org.apache.cassandra.db.lifecycle.LifecycleTransaction>, double, long);
    descriptor: (Ljava/util/List;Ljava/util/Map;DJ)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=33, args_size=5
        start local 0 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution this
        start local 1 // java.util.List sstables
        start local 2 // java.util.Map transactions
        start local 3 // double totalReadsPerSec
        start local 5 // long memoryPoolCapacity
         0: .line 150
            new java.util.ArrayList
            dup
            aload 1 /* sstables */
            invokeinterface java.util.List.size:()I
            iconst_4
            idiv
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 7 /* toDownsample */
        start local 7 // java.util.List toDownsample
         1: .line 151
            new java.util.ArrayList
            dup
            aload 1 /* sstables */
            invokeinterface java.util.List.size:()I
            iconst_4
            idiv
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 8 /* toUpsample */
        start local 8 // java.util.List toUpsample
         2: .line 152
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* forceResample */
        start local 9 // java.util.List forceResample
         3: .line 153
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 10 /* forceUpsample */
        start local 10 // java.util.List forceUpsample
         4: .line 154
            new java.util.ArrayList
            dup
            aload 1 /* sstables */
            invokeinterface java.util.List.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 11 /* newSSTables */
        start local 11 // java.util.List newSSTables
         5: .line 158
            aload 0 /* this */
            lload 5 /* memoryPoolCapacity */
            putfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
         6: .line 159
            aload 1 /* sstables */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 71
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.Map double long java.util.List java.util.List java.util.List java.util.List java.util.List top java.util.Iterator
      StackMap stack:
         7: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.io.sstable.format.SSTableReader
            astore 12 /* sstable */
        start local 12 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
         8: .line 161
            aload 0 /* this */
            invokevirtual org.apache.cassandra.io.sstable.IndexSummaryRedistribution.isStopRequested:()Z
            ifeq 10
         9: .line 162
            new org.apache.cassandra.db.compaction.CompactionInterruptedException
            dup
            aload 0 /* this */
            invokevirtual org.apache.cassandra.io.sstable.IndexSummaryRedistribution.getCompactionInfo:()Lorg/apache/cassandra/db/compaction/CompactionInfo;
            invokespecial org.apache.cassandra.db.compaction.CompactionInterruptedException.<init>:(Lorg/apache/cassandra/db/compaction/CompactionInfo;)V
            athrow
        10: .line 164
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.Map double long java.util.List java.util.List java.util.List java.util.List java.util.List org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator
      StackMap stack:
            aload 12 /* sstable */
            getfield org.apache.cassandra.io.sstable.format.SSTableReader.metadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.params:Lorg/apache/cassandra/schema/TableParams;
            getfield org.apache.cassandra.schema.TableParams.minIndexInterval:I
            istore 14 /* minIndexInterval */
        start local 14 // int minIndexInterval
        11: .line 165
            aload 12 /* sstable */
            getfield org.apache.cassandra.io.sstable.format.SSTableReader.metadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.params:Lorg/apache/cassandra/schema/TableParams;
            getfield org.apache.cassandra.schema.TableParams.maxIndexInterval:I
            istore 15 /* maxIndexInterval */
        start local 15 // int maxIndexInterval
        12: .line 167
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getReadMeter:()Lorg/apache/cassandra/metrics/RestorableMeter;
            ifnonnull 13
            dconst_0
            goto 14
      StackMap locals: int int
      StackMap stack:
        13: aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getReadMeter:()Lorg/apache/cassandra/metrics/RestorableMeter;
            invokevirtual org.apache.cassandra.metrics.RestorableMeter.fifteenMinuteRate:()D
      StackMap locals:
      StackMap stack: double
        14: dstore 16 /* readsPerSec */
        start local 16 // double readsPerSec
        15: .line 168
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
            l2d
            dload 16 /* readsPerSec */
            dload 3 /* totalReadsPerSec */
            ddiv
            dmul
            invokestatic java.lang.Math.round:(D)J
            lstore 18 /* idealSpace */
        start local 18 // long idealSpace
        16: .line 171
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getIndexSummarySize:()I
            istore 20 /* currentNumEntries */
        start local 20 // int currentNumEntries
        17: .line 172
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getIndexSummaryOffHeapSize:()J
            l2d
            iload 20 /* currentNumEntries */
            i2d
            ddiv
            dstore 21 /* avgEntrySize */
        start local 21 // double avgEntrySize
        18: .line 173
            lconst_1
            lload 18 /* idealSpace */
            l2d
            dload 21 /* avgEntrySize */
            ddiv
            invokestatic java.lang.Math.round:(D)J
            invokestatic java.lang.Math.max:(JJ)J
            lstore 23 /* targetNumEntries */
        start local 23 // long targetNumEntries
        19: .line 174
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getIndexSummarySamplingLevel:()I
            istore 25 /* currentSamplingLevel */
        start local 25 // int currentSamplingLevel
        20: .line 175
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getMaxIndexSummarySize:()I
            istore 26 /* maxSummarySize */
        start local 26 // int maxSummarySize
        21: .line 178
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getMinIndexInterval:()I
            iload 14 /* minIndexInterval */
            if_icmpeq 28
        22: .line 180
            iload 25 /* currentSamplingLevel */
            i2d
            iload 14 /* minIndexInterval */
            i2d
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getMinIndexInterval:()I
            i2d
            ddiv
            dmul
            invokestatic java.lang.Math.round:(D)J
            l2i
            istore 27 /* effectiveSamplingLevel */
        start local 27 // int effectiveSamplingLevel
        23: .line 181
            iload 26 /* maxSummarySize */
            i2d
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getMinIndexInterval:()I
            i2d
            iload 14 /* minIndexInterval */
            i2d
            ddiv
            dmul
            invokestatic java.lang.Math.round:(D)J
            l2i
            istore 26 /* maxSummarySize */
        24: .line 182
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "min_index_interval changed from {} to {}, so the current sampling level for {} is effectively now {} (was {})"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
        25: .line 183
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getMinIndexInterval:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            iload 14 /* minIndexInterval */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 12 /* sstable */
            aastore
            dup
            iconst_3
            iload 27 /* effectiveSamplingLevel */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            iload 25 /* currentSamplingLevel */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        26: .line 182
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
        27: .line 184
            iload 27 /* effectiveSamplingLevel */
            istore 25 /* currentSamplingLevel */
        end local 27 // int effectiveSamplingLevel
        28: .line 187
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.Map double long java.util.List java.util.List java.util.List java.util.List java.util.List org.apache.cassandra.io.sstable.format.SSTableReader java.util.Iterator int int double long int double long int int
      StackMap stack:
            iload 25 /* currentSamplingLevel */
            iload 20 /* currentNumEntries */
            lload 23 /* targetNumEntries */
        29: .line 188
            iload 14 /* minIndexInterval */
            iload 15 /* maxIndexInterval */
        30: .line 187
            invokestatic org.apache.cassandra.io.sstable.IndexSummaryBuilder.calculateSamplingLevel:(IIJII)I
            istore 27 /* newSamplingLevel */
        start local 27 // int newSamplingLevel
        31: .line 189
            iload 27 /* newSamplingLevel */
            iload 26 /* maxSummarySize */
            invokestatic org.apache.cassandra.io.sstable.IndexSummaryBuilder.entriesAtSamplingLevel:(II)I
            istore 28 /* numEntriesAtNewSamplingLevel */
        start local 28 // int numEntriesAtNewSamplingLevel
        32: .line 190
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getEffectiveIndexInterval:()D
            dstore 29 /* effectiveIndexInterval */
        start local 29 // double effectiveIndexInterval
        33: .line 192
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "{} has {} reads/sec; ideal space for index summary: {} ({} entries); considering moving from level {} ({} entries, {}) to level {} ({} entries, {})"
            bipush 10
            anewarray java.lang.Object
            dup
            iconst_0
        34: .line 195
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getFilename:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            dload 16 /* readsPerSec */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            dup
            iconst_2
            lload 18 /* idealSpace */
            invokestatic org.apache.cassandra.utils.FBUtilities.prettyPrintMemory:(J)Ljava/lang/String;
            aastore
            dup
            iconst_3
            lload 23 /* targetNumEntries */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_4
        35: .line 196
            iload 25 /* currentSamplingLevel */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_5
            iload 20 /* currentNumEntries */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 6
            iload 20 /* currentNumEntries */
            i2d
            dload 21 /* avgEntrySize */
            dmul
            d2l
            invokestatic org.apache.cassandra.utils.FBUtilities.prettyPrintMemory:(J)Ljava/lang/String;
            aastore
            dup
            bipush 7
        36: .line 197
            iload 27 /* newSamplingLevel */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 8
            iload 28 /* numEntriesAtNewSamplingLevel */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            bipush 9
            iload 28 /* numEntriesAtNewSamplingLevel */
            i2d
            dload 21 /* avgEntrySize */
            dmul
            d2l
            invokestatic org.apache.cassandra.utils.FBUtilities.prettyPrintMemory:(J)Ljava/lang/String;
            aastore
        37: .line 192
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
        38: .line 199
            dload 29 /* effectiveIndexInterval */
            iload 14 /* minIndexInterval */
            i2d
            dcmpg
            ifge 46
        39: .line 202
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "Forcing resample of {} because the current index interval ({}) is below min_index_interval ({})"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        40: .line 203
            aload 12 /* sstable */
            aastore
            dup
            iconst_1
            dload 29 /* effectiveIndexInterval */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            dup
            iconst_2
            iload 14 /* minIndexInterval */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        41: .line 202
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
        42: .line 204
            dload 21 /* avgEntrySize */
            iload 28 /* numEntriesAtNewSamplingLevel */
            i2d
            dmul
            invokestatic java.lang.Math.ceil:(D)D
            d2l
            lstore 31 /* spaceUsed */
        start local 31 // long spaceUsed
        43: .line 205
            aload 9 /* forceResample */
            new org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry
            dup
            aload 12 /* sstable */
            lload 31 /* spaceUsed */
            iload 27 /* newSamplingLevel */
            invokespecial org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.<init>:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;JI)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        44: .line 206
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
            lload 31 /* spaceUsed */
            lsub
            putfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
        end local 31 // long spaceUsed
        45: .line 207
            goto 70
        46: .line 208
      StackMap locals: int int double
      StackMap stack:
            dload 29 /* effectiveIndexInterval */
            iload 15 /* maxIndexInterval */
            i2d
            dcmpl
            ifle 56
        47: .line 211
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "Forcing upsample of {} because the current index interval ({}) is above max_index_interval ({})"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        48: .line 212
            aload 12 /* sstable */
            aastore
            dup
            iconst_1
            dload 29 /* effectiveIndexInterval */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            dup
            iconst_2
            iload 15 /* maxIndexInterval */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        49: .line 211
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
        50: .line 213
            iconst_1
            sipush 128
            iload 14 /* minIndexInterval */
            imul
            iload 15 /* maxIndexInterval */
            idiv
            invokestatic java.lang.Math.max:(II)I
            istore 27 /* newSamplingLevel */
        51: .line 214
            iload 27 /* newSamplingLevel */
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getMaxIndexSummarySize:()I
            invokestatic org.apache.cassandra.io.sstable.IndexSummaryBuilder.entriesAtSamplingLevel:(II)I
            istore 28 /* numEntriesAtNewSamplingLevel */
        52: .line 215
            dload 21 /* avgEntrySize */
            iload 28 /* numEntriesAtNewSamplingLevel */
            i2d
            dmul
            invokestatic java.lang.Math.ceil:(D)D
            d2l
            lstore 31 /* spaceUsed */
        start local 31 // long spaceUsed
        53: .line 216
            aload 10 /* forceUpsample */
            new org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry
            dup
            aload 12 /* sstable */
            lload 31 /* spaceUsed */
            iload 27 /* newSamplingLevel */
            invokespecial org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.<init>:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;JI)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        54: .line 217
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
            l2d
            dload 21 /* avgEntrySize */
            iload 28 /* numEntriesAtNewSamplingLevel */
            i2d
            dmul
            dsub
            d2l
            putfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
        end local 31 // long spaceUsed
        55: .line 218
            goto 70
        56: .line 219
      StackMap locals:
      StackMap stack:
            lload 23 /* targetNumEntries */
            l2d
            iload 20 /* currentNumEntries */
            i2d
            ldc 1.5
            dmul
            dcmpl
            iflt 61
            iload 27 /* newSamplingLevel */
            iload 25 /* currentSamplingLevel */
            if_icmple 61
        57: .line 221
            dload 21 /* avgEntrySize */
            iload 28 /* numEntriesAtNewSamplingLevel */
            i2d
            dmul
            invokestatic java.lang.Math.ceil:(D)D
            d2l
            lstore 31 /* spaceUsed */
        start local 31 // long spaceUsed
        58: .line 222
            aload 8 /* toUpsample */
            new org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry
            dup
            aload 12 /* sstable */
            lload 31 /* spaceUsed */
            iload 27 /* newSamplingLevel */
            invokespecial org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.<init>:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;JI)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        59: .line 223
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
            l2d
            dload 21 /* avgEntrySize */
            iload 28 /* numEntriesAtNewSamplingLevel */
            i2d
            dmul
            dsub
            d2l
            putfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
        end local 31 // long spaceUsed
        60: .line 224
            goto 70
        61: .line 225
      StackMap locals:
      StackMap stack:
            lload 23 /* targetNumEntries */
            l2d
            iload 20 /* currentNumEntries */
            i2d
            ldc 0.75
            dmul
            dcmpg
            ifge 66
            iload 27 /* newSamplingLevel */
            iload 25 /* currentSamplingLevel */
            if_icmpge 66
        62: .line 227
            dload 21 /* avgEntrySize */
            iload 28 /* numEntriesAtNewSamplingLevel */
            i2d
            dmul
            invokestatic java.lang.Math.ceil:(D)D
            d2l
            lstore 31 /* spaceUsed */
        start local 31 // long spaceUsed
        63: .line 228
            aload 7 /* toDownsample */
            new org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry
            dup
            aload 12 /* sstable */
            lload 31 /* spaceUsed */
            iload 27 /* newSamplingLevel */
            invokespecial org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.<init>:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;JI)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        64: .line 229
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
            lload 31 /* spaceUsed */
            lsub
            putfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
        end local 31 // long spaceUsed
        65: .line 230
            goto 70
        66: .line 234
      StackMap locals:
      StackMap stack:
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "SSTable {} is within thresholds of ideal sampling"
            aload 12 /* sstable */
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
        67: .line 235
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getIndexSummaryOffHeapSize:()J
            lsub
            putfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
        68: .line 236
            aload 11 /* newSSTables */
            aload 12 /* sstable */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        69: .line 237
            aload 2 /* transactions */
            aload 12 /* sstable */
            getfield org.apache.cassandra.io.sstable.format.SSTableReader.metadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.cassandra.db.lifecycle.LifecycleTransaction
            aload 12 /* sstable */
            invokevirtual org.apache.cassandra.db.lifecycle.LifecycleTransaction.cancel:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)V
        70: .line 239
      StackMap locals:
      StackMap stack:
            dload 3 /* totalReadsPerSec */
            dload 16 /* readsPerSec */
            dsub
            dstore 3 /* totalReadsPerSec */
        end local 29 // double effectiveIndexInterval
        end local 28 // int numEntriesAtNewSamplingLevel
        end local 27 // int newSamplingLevel
        end local 26 // int maxSummarySize
        end local 25 // int currentSamplingLevel
        end local 23 // long targetNumEntries
        end local 21 // double avgEntrySize
        end local 20 // int currentNumEntries
        end local 18 // long idealSpace
        end local 16 // double readsPerSec
        end local 15 // int maxIndexInterval
        end local 14 // int minIndexInterval
        end local 12 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        71: .line 159
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.Map double long java.util.List java.util.List java.util.List java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        72: .line 242
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
            lconst_0
            lcmp
            ifle 80
        73: .line 244
            aload 7 /* toDownsample */
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
            invokestatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.distributeRemainingSpace:(Ljava/util/List;J)Lorg/apache/cassandra/utils/Pair;
            astore 12 /* result */
        start local 12 // org.apache.cassandra.utils.Pair result
        74: .line 245
            aload 12 /* result */
            getfield org.apache.cassandra.utils.Pair.right:Ljava/lang/Object;
            checkcast java.util.List
            astore 7 /* toDownsample */
        75: .line 246
            aload 11 /* newSSTables */
            aload 12 /* result */
            getfield org.apache.cassandra.utils.Pair.left:Ljava/lang/Object;
            checkcast java.util.Collection
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        76: .line 247
            aload 12 /* result */
            getfield org.apache.cassandra.utils.Pair.left:Ljava/lang/Object;
            checkcast java.util.List
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 14
            goto 79
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.Map double long java.util.List java.util.List java.util.List java.util.List java.util.List org.apache.cassandra.utils.Pair top java.util.Iterator
      StackMap stack:
        77: aload 14
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.io.sstable.format.SSTableReader
            astore 13 /* sstable */
        start local 13 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        78: .line 248
            aload 2 /* transactions */
            aload 13 /* sstable */
            getfield org.apache.cassandra.io.sstable.format.SSTableReader.metadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.cassandra.db.lifecycle.LifecycleTransaction
            aload 13 /* sstable */
            invokevirtual org.apache.cassandra.db.lifecycle.LifecycleTransaction.cancel:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;)V
        end local 13 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        79: .line 247
      StackMap locals:
      StackMap stack:
            aload 14
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 77
        end local 12 // org.apache.cassandra.utils.Pair result
        80: .line 252
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.Map double long java.util.List java.util.List java.util.List java.util.List java.util.List
      StackMap stack:
            aload 7 /* toDownsample */
            aload 9 /* forceResample */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        81: .line 253
            aload 7 /* toDownsample */
            aload 8 /* toUpsample */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        82: .line 254
            aload 7 /* toDownsample */
            aload 10 /* forceUpsample */
            invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
            pop
        83: .line 255
            aload 7 /* toDownsample */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 13
            goto 96
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.Map double long java.util.List java.util.List java.util.List java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        84: aload 13
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry
            astore 12 /* entry */
        start local 12 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry entry
        85: .line 257
            aload 0 /* this */
            invokevirtual org.apache.cassandra.io.sstable.IndexSummaryRedistribution.isStopRequested:()Z
            ifeq 87
        86: .line 258
            new org.apache.cassandra.db.compaction.CompactionInterruptedException
            dup
            aload 0 /* this */
            invokevirtual org.apache.cassandra.io.sstable.IndexSummaryRedistribution.getCompactionInfo:()Lorg/apache/cassandra/db/compaction/CompactionInfo;
            invokespecial org.apache.cassandra.db.compaction.CompactionInterruptedException.<init>:(Lorg/apache/cassandra/db/compaction/CompactionInfo;)V
            athrow
        87: .line 260
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.Map double long java.util.List java.util.List java.util.List java.util.List java.util.List org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry java.util.Iterator
      StackMap stack:
            aload 12 /* entry */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.sstable:Lorg/apache/cassandra/io/sstable/format/SSTableReader;
            astore 14 /* sstable */
        start local 14 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        88: .line 261
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "Re-sampling index summary for {} from {}/{} to {}/{} of the original number of entries"
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
        89: .line 262
            aload 14 /* sstable */
            aastore
            dup
            iconst_1
            aload 14 /* sstable */
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getIndexSummarySamplingLevel:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            sipush 128
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_3
        90: .line 263
            aload 12 /* entry */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.newSamplingLevel:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_4
            sipush 128
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        91: .line 261
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
        92: .line 264
            aload 14 /* sstable */
            getfield org.apache.cassandra.io.sstable.format.SSTableReader.metadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.ksName:Ljava/lang/String;
            invokestatic org.apache.cassandra.db.Keyspace.open:(Ljava/lang/String;)Lorg/apache/cassandra/db/Keyspace;
            aload 14 /* sstable */
            getfield org.apache.cassandra.io.sstable.format.SSTableReader.metadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
            invokevirtual org.apache.cassandra.db.Keyspace.getColumnFamilyStore:(Ljava/util/UUID;)Lorg/apache/cassandra/db/ColumnFamilyStore;
            astore 15 /* cfs */
        start local 15 // org.apache.cassandra.db.ColumnFamilyStore cfs
        93: .line 265
            aload 14 /* sstable */
            aload 15 /* cfs */
            aload 12 /* entry */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.newSamplingLevel:I
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.cloneWithNewSummarySamplingLevel:(Lorg/apache/cassandra/db/ColumnFamilyStore;I)Lorg/apache/cassandra/io/sstable/format/SSTableReader;
            astore 16 /* replacement */
        start local 16 // org.apache.cassandra.io.sstable.format.SSTableReader replacement
        94: .line 266
            aload 11 /* newSSTables */
            aload 16 /* replacement */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        95: .line 267
            aload 2 /* transactions */
            aload 14 /* sstable */
            getfield org.apache.cassandra.io.sstable.format.SSTableReader.metadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.cassandra.db.lifecycle.LifecycleTransaction
            aload 16 /* replacement */
            iconst_1
            invokevirtual org.apache.cassandra.db.lifecycle.LifecycleTransaction.update:(Lorg/apache/cassandra/io/sstable/format/SSTableReader;Z)V
        end local 16 // org.apache.cassandra.io.sstable.format.SSTableReader replacement
        end local 15 // org.apache.cassandra.db.ColumnFamilyStore cfs
        end local 14 // org.apache.cassandra.io.sstable.format.SSTableReader sstable
        end local 12 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry entry
        96: .line 255
      StackMap locals: org.apache.cassandra.io.sstable.IndexSummaryRedistribution java.util.List java.util.Map double long java.util.List java.util.List java.util.List java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 13
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 84
        97: .line 270
            aload 11 /* newSSTables */
            areturn
        end local 11 // java.util.List newSSTables
        end local 10 // java.util.List forceUpsample
        end local 9 // java.util.List forceResample
        end local 8 // java.util.List toUpsample
        end local 7 // java.util.List toDownsample
        end local 5 // long memoryPoolCapacity
        end local 3 // double totalReadsPerSec
        end local 2 // java.util.Map transactions
        end local 1 // java.util.List sstables
        end local 0 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution this
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0   98     0                          this  Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution;
            0   98     1                      sstables  Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
            0   98     2                  transactions  Ljava/util/Map<Ljava/util/UUID;Lorg/apache/cassandra/db/lifecycle/LifecycleTransaction;>;
            0   98     3              totalReadsPerSec  D
            0   98     5            memoryPoolCapacity  J
            1   98     7                  toDownsample  Ljava/util/List<Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution$ResampleEntry;>;
            2   98     8                    toUpsample  Ljava/util/List<Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution$ResampleEntry;>;
            3   98     9                 forceResample  Ljava/util/List<Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution$ResampleEntry;>;
            4   98    10                 forceUpsample  Ljava/util/List<Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution$ResampleEntry;>;
            5   98    11                   newSSTables  Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
            8   71    12                       sstable  Lorg/apache/cassandra/io/sstable/format/SSTableReader;
           11   71    14              minIndexInterval  I
           12   71    15              maxIndexInterval  I
           15   71    16                   readsPerSec  D
           16   71    18                    idealSpace  J
           17   71    20             currentNumEntries  I
           18   71    21                  avgEntrySize  D
           19   71    23              targetNumEntries  J
           20   71    25          currentSamplingLevel  I
           21   71    26                maxSummarySize  I
           23   28    27        effectiveSamplingLevel  I
           31   71    27              newSamplingLevel  I
           32   71    28  numEntriesAtNewSamplingLevel  I
           33   71    29        effectiveIndexInterval  D
           43   45    31                     spaceUsed  J
           53   55    31                     spaceUsed  J
           58   60    31                     spaceUsed  J
           63   65    31                     spaceUsed  J
           74   80    12                        result  Lorg/apache/cassandra/utils/Pair<Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;Ljava/util/List<Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution$ResampleEntry;>;>;
           78   79    13                       sstable  Lorg/apache/cassandra/io/sstable/format/SSTableReader;
           85   96    12                         entry  Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution$ResampleEntry;
           88   96    14                       sstable  Lorg/apache/cassandra/io/sstable/format/SSTableReader;
           93   96    15                           cfs  Lorg/apache/cassandra/db/ColumnFamilyStore;
           94   96    16                   replacement  Lorg/apache/cassandra/io/sstable/format/SSTableReader;
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;Ljava/util/Map<Ljava/util/UUID;Lorg/apache/cassandra/db/lifecycle/LifecycleTransaction;>;DJ)Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
    MethodParameters:
                    Name  Flags
      sstables            
      transactions        
      totalReadsPerSec    
      memoryPoolCapacity  

  static org.apache.cassandra.utils.Pair<java.util.List<org.apache.cassandra.io.sstable.format.SSTableReader>, java.util.List<org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry>> distributeRemainingSpace(java.util.List<org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry>, long);
    descriptor: (Ljava/util/List;J)Lorg/apache/cassandra/utils/Pair;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=8, args_size=2
        start local 0 // java.util.List toDownsample
        start local 1 // long remainingSpace
         0: .line 278
            aload 0 /* toDownsample */
            new org.apache.cassandra.io.sstable.IndexSummaryRedistribution$1
            dup
            invokespecial org.apache.cassandra.io.sstable.IndexSummaryRedistribution$1.<init>:()V
            invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
         1: .line 287
            iconst_0
            istore 3 /* noDownsampleCutoff */
        start local 3 // int noDownsampleCutoff
         2: .line 288
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 4 /* willNotDownsample */
        start local 4 // java.util.List willNotDownsample
         3: .line 289
            goto 13
         4: .line 291
      StackMap locals: int java.util.List
      StackMap stack:
            aload 0 /* toDownsample */
            iload 3 /* noDownsampleCutoff */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry
            astore 5 /* entry */
        start local 5 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry entry
         5: .line 293
            aload 5 /* entry */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.sstable:Lorg/apache/cassandra/io/sstable/format/SSTableReader;
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getIndexSummaryOffHeapSize:()J
            aload 5 /* entry */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.newSpaceUsed:J
            lsub
            lstore 6 /* extraSpaceRequired */
        start local 6 // long extraSpaceRequired
         6: .line 295
            lload 6 /* extraSpaceRequired */
            lload 1 /* remainingSpace */
            lcmp
            ifgt 14
         7: .line 297
            getstatic org.apache.cassandra.io.sstable.IndexSummaryRedistribution.logger:Lorg/slf4j/Logger;
            ldc "Using leftover space to keep {} at the current sampling level ({})"
         8: .line 298
            aload 5 /* entry */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.sstable:Lorg/apache/cassandra/io/sstable/format/SSTableReader;
            aload 5 /* entry */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.sstable:Lorg/apache/cassandra/io/sstable/format/SSTableReader;
            invokevirtual org.apache.cassandra.io.sstable.format.SSTableReader.getIndexSummarySamplingLevel:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
         9: .line 297
            invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
        10: .line 299
            aload 4 /* willNotDownsample */
            aload 5 /* entry */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry.sstable:Lorg/apache/cassandra/io/sstable/format/SSTableReader;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        11: .line 300
            lload 1 /* remainingSpace */
            lload 6 /* extraSpaceRequired */
            lsub
            lstore 1 /* remainingSpace */
        12: .line 307
            iinc 3 /* noDownsampleCutoff */ 1
        end local 6 // long extraSpaceRequired
        end local 5 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry entry
        13: .line 289
      StackMap locals:
      StackMap stack:
            lload 1 /* remainingSpace */
            lconst_0
            lcmp
            ifle 14
            iload 3 /* noDownsampleCutoff */
            aload 0 /* toDownsample */
            invokeinterface java.util.List.size:()I
            if_icmplt 4
        14: .line 309
      StackMap locals:
      StackMap stack:
            aload 4 /* willNotDownsample */
            aload 0 /* toDownsample */
            iload 3 /* noDownsampleCutoff */
            aload 0 /* toDownsample */
            invokeinterface java.util.List.size:()I
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            invokestatic org.apache.cassandra.utils.Pair.create:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/apache/cassandra/utils/Pair;
            areturn
        end local 4 // java.util.List willNotDownsample
        end local 3 // int noDownsampleCutoff
        end local 1 // long remainingSpace
        end local 0 // java.util.List toDownsample
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   15     0        toDownsample  Ljava/util/List<Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution$ResampleEntry;>;
            0   15     1      remainingSpace  J
            2   15     3  noDownsampleCutoff  I
            3   15     4   willNotDownsample  Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
            5   13     5               entry  Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution$ResampleEntry;
            6   13     6  extraSpaceRequired  J
    Signature: (Ljava/util/List<Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution$ResampleEntry;>;J)Lorg/apache/cassandra/utils/Pair<Ljava/util/List<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;Ljava/util/List<Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution$ResampleEntry;>;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.VisibleForTesting()
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        com.google.common.annotations.VisibleForTesting()
    MethodParameters:
                Name  Flags
      toDownsample    
      remainingSpace  

  public org.apache.cassandra.db.compaction.CompactionInfo getCompactionInfo();
    descriptor: ()Lorg/apache/cassandra/db/compaction/CompactionInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=1, args_size=1
        start local 0 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution this
         0: .line 314
            new org.apache.cassandra.db.compaction.CompactionInfo
            dup
            getstatic org.apache.cassandra.db.compaction.OperationType.INDEX_SUMMARY:Lorg/apache/cassandra/db/compaction/OperationType;
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.memoryPoolBytes:J
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.remainingSpace:J
            lsub
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.memoryPoolBytes:J
            getstatic org.apache.cassandra.db.compaction.CompactionInfo$Unit.BYTES:Lorg/apache/cassandra/db/compaction/CompactionInfo$Unit;
            aload 0 /* this */
            getfield org.apache.cassandra.io.sstable.IndexSummaryRedistribution.compactionId:Ljava/util/UUID;
            invokespecial org.apache.cassandra.db.compaction.CompactionInfo.<init>:(Lorg/apache/cassandra/db/compaction/OperationType;JJLorg/apache/cassandra/db/compaction/CompactionInfo$Unit;Ljava/util/UUID;)V
            areturn
        end local 0 // org.apache.cassandra.io.sstable.IndexSummaryRedistribution this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/io/sstable/IndexSummaryRedistribution;
}
SourceFile: "IndexSummaryRedistribution.java"
NestMembers:
  org.apache.cassandra.io.sstable.IndexSummaryRedistribution$1  org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ReadRateComparator  org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry
InnerClasses:
  public abstract Holder = org.apache.cassandra.db.compaction.CompactionInfo$Holder of org.apache.cassandra.db.compaction.CompactionInfo
  public final Unit = org.apache.cassandra.db.compaction.CompactionInfo$Unit of org.apache.cassandra.db.compaction.CompactionInfo
  org.apache.cassandra.io.sstable.IndexSummaryRedistribution$1
  private ReadRateComparator = org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ReadRateComparator of org.apache.cassandra.io.sstable.IndexSummaryRedistribution
  private ResampleEntry = org.apache.cassandra.io.sstable.IndexSummaryRedistribution$ResampleEntry of org.apache.cassandra.io.sstable.IndexSummaryRedistribution