class org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker extends org.apache.cassandra.utils.DirectorySizeCalculator
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker
  super_class: org.apache.cassandra.utils.DirectorySizeCalculator
{
  private final com.google.common.util.concurrent.RateLimiter rateLimiter;
    descriptor: Lcom/google/common/util/concurrent/RateLimiter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.util.concurrent.ExecutorService cdcSizeCalculationExecutor;
    descriptor: Ljava/util/concurrent/ExecutorService;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC segmentManager;
    descriptor: Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC;
    flags: (0x0002) ACC_PRIVATE

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

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

  void <init>(org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC, java.io.File);
    descriptor: (Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC;Ljava/io/File;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
        start local 1 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC segmentManager
        start local 2 // java.io.File path
         0: .line 172
            aload 0 /* this */
            aload 2 /* path */
            invokespecial org.apache.cassandra.utils.DirectorySizeCalculator.<init>:(Ljava/io/File;)V
         1: .line 162
            aload 0 /* this */
            ldc 1000.0
            invokestatic org.apache.cassandra.config.DatabaseDescriptor.getCDCDiskCheckInterval:()I
            i2d
            ddiv
            invokestatic com.google.common.util.concurrent.RateLimiter.create:(D)Lcom/google/common/util/concurrent/RateLimiter;
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.rateLimiter:Lcom/google/common/util/concurrent/RateLimiter;
         2: .line 168
            aload 0 /* this */
            lconst_0
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.sizeInProgress:J
         3: .line 173
            aload 0 /* this */
            aload 1 /* segmentManager */
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.segmentManager:Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC;
         4: .line 174
            return
        end local 2 // java.io.File path
        end local 1 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC segmentManager
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    5     0            this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;
            0    5     1  segmentManager  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC;
            0    5     2            path  Ljava/io/File;
    MethodParameters:
                Name  Flags
      segmentManager  
      path            

  public void start();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
         0: .line 181
            aload 0 /* this */
            lconst_0
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.size:J
         1: .line 182
            aload 0 /* this */
            lconst_0
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.unflushedCDCSize:J
         2: .line 183
            aload 0 /* this */
            new java.util.concurrent.ThreadPoolExecutor
            dup
            iconst_1
            iconst_1
            ldc 1000
            getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
            new java.util.concurrent.SynchronousQueue
            dup
            invokespecial java.util.concurrent.SynchronousQueue.<init>:()V
            new java.util.concurrent.ThreadPoolExecutor$DiscardPolicy
            dup
            invokespecial java.util.concurrent.ThreadPoolExecutor$DiscardPolicy.<init>:()V
            invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/RejectedExecutionHandler;)V
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.cdcSizeCalculationExecutor:Ljava/util/concurrent/ExecutorService;
         3: .line 184
            return
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;

  void processNewSegment(org.apache.cassandra.db.commitlog.CommitLogSegment);
    descriptor: (Lorg/apache/cassandra/db/commitlog/CommitLogSegment;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
        start local 1 // org.apache.cassandra.db.commitlog.CommitLogSegment segment
         0: .line 199
            aload 1 /* segment */
            getfield org.apache.cassandra.db.commitlog.CommitLogSegment.cdcStateLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 201
            aload 1 /* segment */
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.defaultSegmentSize:()I
            i2l
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.totalCDCSizeOnDisk:()J
            ladd
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.allowableCDCBytes:()J
            lcmp
            ifle 3
         2: .line 202
            getstatic org.apache.cassandra.db.commitlog.CommitLogSegment$CDCState.FORBIDDEN:Lorg/apache/cassandra/db/commitlog/CommitLogSegment$CDCState;
            goto 4
         3: .line 203
      StackMap locals: org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker org.apache.cassandra.db.commitlog.CommitLogSegment java.lang.Object
      StackMap stack: org.apache.cassandra.db.commitlog.CommitLogSegment
            getstatic org.apache.cassandra.db.commitlog.CommitLogSegment$CDCState.PERMITTED:Lorg/apache/cassandra/db/commitlog/CommitLogSegment$CDCState;
         4: .line 201
      StackMap locals: org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker org.apache.cassandra.db.commitlog.CommitLogSegment java.lang.Object
      StackMap stack: org.apache.cassandra.db.commitlog.CommitLogSegment org.apache.cassandra.db.commitlog.CommitLogSegment$CDCState
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegment.setCDCState:(Lorg/apache/cassandra/db/commitlog/CommitLogSegment$CDCState;)V
         5: .line 204
            aload 1 /* segment */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegment.getCDCState:()Lorg/apache/cassandra/db/commitlog/CommitLogSegment$CDCState;
            getstatic org.apache.cassandra.db.commitlog.CommitLogSegment$CDCState.PERMITTED:Lorg/apache/cassandra/db/commitlog/CommitLogSegment$CDCState;
            if_acmpne 7
         6: .line 205
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.unflushedCDCSize:J
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.defaultSegmentSize:()I
            i2l
            ladd
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.unflushedCDCSize:J
         7: .line 199
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
         8: goto 11
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: aload 2
            monitorexit
        10: athrow
        11: .line 209
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.submitOverflowSizeRecalculation:()V
        12: .line 210
            return
        end local 1 // org.apache.cassandra.db.commitlog.CommitLogSegment segment
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;
            0   13     1  segment  Lorg/apache/cassandra/db/commitlog/CommitLogSegment;
      Exception table:
        from    to  target  type
           1     8       9  any
           9    10       9  any
    MethodParameters:
         Name  Flags
      segment  

  void processDiscardedSegment(org.apache.cassandra.db.commitlog.CommitLogSegment);
    descriptor: (Lorg/apache/cassandra/db/commitlog/CommitLogSegment;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
        start local 1 // org.apache.cassandra.db.commitlog.CommitLogSegment segment
         0: .line 215
            aload 1 /* segment */
            getfield org.apache.cassandra.db.commitlog.CommitLogSegment.cdcStateLock:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         1: .line 218
            aload 1 /* segment */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegment.getCDCState:()Lorg/apache/cassandra/db/commitlog/CommitLogSegment$CDCState;
            getstatic org.apache.cassandra.db.commitlog.CommitLogSegment$CDCState.CONTAINS:Lorg/apache/cassandra/db/commitlog/CommitLogSegment$CDCState;
            if_acmpne 3
         2: .line 219
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.size:J
            aload 1 /* segment */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegment.onDiskSize:()J
            ladd
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.size:J
         3: .line 220
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1 /* segment */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegment.getCDCState:()Lorg/apache/cassandra/db/commitlog/CommitLogSegment$CDCState;
            getstatic org.apache.cassandra.db.commitlog.CommitLogSegment$CDCState.FORBIDDEN:Lorg/apache/cassandra/db/commitlog/CommitLogSegment$CDCState;
            if_acmpeq 5
         4: .line 221
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.unflushedCDCSize:J
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.defaultSegmentSize:()I
            i2l
            lsub
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.unflushedCDCSize:J
         5: .line 215
      StackMap locals:
      StackMap stack:
            aload 2
            monitorexit
         6: goto 9
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: aload 2
            monitorexit
         8: athrow
         9: .line 225
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.submitOverflowSizeRecalculation:()V
        10: .line 226
            return
        end local 1 // org.apache.cassandra.db.commitlog.CommitLogSegment segment
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   11     0     this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;
            0   11     1  segment  Lorg/apache/cassandra/db/commitlog/CommitLogSegment;
      Exception table:
        from    to  target  type
           1     6       7  any
           7     8       7  any
    MethodParameters:
         Name  Flags
      segment  

  private long allowableCDCBytes();
    descriptor: ()J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
         0: .line 230
            invokestatic org.apache.cassandra.config.DatabaseDescriptor.getCDCSpaceInMB:()I
            i2l
            ldc 1024
            lmul
            ldc 1024
            lmul
            lreturn
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;

  public void submitOverflowSizeRecalculation();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
         0: .line 237
            aload 0 /* this */
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.cdcSizeCalculationExecutor:Ljava/util/concurrent/ExecutorService;
            aload 0 /* this */
            invokedynamic run(Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;)Ljava/lang/Runnable;
              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:
                  ()V
                  org/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker.lambda$0()V (7)
                  ()V
            invokeinterface java.util.concurrent.ExecutorService.submit:(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;
            pop
         1: .line 238
            goto 3
         2: .line 239
      StackMap locals:
      StackMap stack: java.util.concurrent.RejectedExecutionException
            pop
         3: .line 243
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;
      Exception table:
        from    to  target  type
           0     1       2  Class java.util.concurrent.RejectedExecutionException

  private void recalculateOverflowSize();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
         0: .line 247
            aload 0 /* this */
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.rateLimiter:Lcom/google/common/util/concurrent/RateLimiter;
            invokevirtual com.google.common.util.concurrent.RateLimiter.acquire:()D
            pop2
         1: .line 248
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.calculateSize:()V
         2: .line 249
            aload 0 /* this */
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.segmentManager:Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC;
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC.allocatingFrom:()Lorg/apache/cassandra/db/commitlog/CommitLogSegment;
            astore 1 /* allocatingFrom */
        start local 1 // org.apache.cassandra.db.commitlog.CommitLogSegment allocatingFrom
         3: .line 250
            aload 1 /* allocatingFrom */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegment.getCDCState:()Lorg/apache/cassandra/db/commitlog/CommitLogSegment$CDCState;
            getstatic org.apache.cassandra.db.commitlog.CommitLogSegment$CDCState.FORBIDDEN:Lorg/apache/cassandra/db/commitlog/CommitLogSegment$CDCState;
            if_acmpne 5
         4: .line 251
            aload 0 /* this */
            aload 1 /* allocatingFrom */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.processNewSegment:(Lorg/apache/cassandra/db/commitlog/CommitLogSegment;)V
         5: .line 252
      StackMap locals: org.apache.cassandra.db.commitlog.CommitLogSegment
      StackMap stack:
            return
        end local 1 // org.apache.cassandra.db.commitlog.CommitLogSegment allocatingFrom
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;
            3    6     1  allocatingFrom  Lorg/apache/cassandra/db/commitlog/CommitLogSegment;

  private int defaultSegmentSize();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
         0: .line 256
            invokestatic org.apache.cassandra.config.DatabaseDescriptor.getCommitLogSegmentSize:()I
            ireturn
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;

  private void calculateSize();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
         0: .line 264
            aload 0 /* this */
            lconst_0
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.sizeInProgress:J
         1: .line 265
            aload 0 /* this */
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.path:Ljava/io/File;
            invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
            aload 0 /* this */
            invokestatic java.nio.file.Files.walkFileTree:(Ljava/nio/file/Path;Ljava/nio/file/FileVisitor;)Ljava/nio/file/Path;
            pop
         2: .line 266
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.sizeInProgress:J
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.size:J
         3: .line 267
            goto 6
         4: .line 268
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 1 /* ie */
        start local 1 // java.io.IOException ie
         5: .line 270
            getstatic org.apache.cassandra.db.commitlog.CommitLog.instance:Lorg/apache/cassandra/db/commitlog/CommitLog;
            pop
            ldc "Failed CDC Size Calculation"
            aload 1 /* ie */
            invokestatic org.apache.cassandra.db.commitlog.CommitLog.handleCommitError:(Ljava/lang/String;Ljava/lang/Throwable;)Z
            pop
        end local 1 // java.io.IOException ie
         6: .line 272
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;
            5    6     1    ie  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     3       4  Class java.io.IOException

  public java.nio.file.FileVisitResult visitFile(java.nio.file.Path, java.nio.file.attribute.BasicFileAttributes);
    descriptor: (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
        start local 1 // java.nio.file.Path file
        start local 2 // java.nio.file.attribute.BasicFileAttributes attrs
         0: .line 277
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.sizeInProgress:J
            aload 2 /* attrs */
            invokeinterface java.nio.file.attribute.BasicFileAttributes.size:()J
            ladd
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.sizeInProgress:J
         1: .line 278
            getstatic java.nio.file.FileVisitResult.CONTINUE:Ljava/nio/file/FileVisitResult;
            areturn
        end local 2 // java.nio.file.attribute.BasicFileAttributes attrs
        end local 1 // java.nio.file.Path file
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;
            0    2     1   file  Ljava/nio/file/Path;
            0    2     2  attrs  Ljava/nio/file/attribute/BasicFileAttributes;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      file   
      attrs  

  private void addFlushedSize(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
        start local 1 // long toAdd
         0: .line 283
            aload 0 /* this */
            dup
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.size:J
            lload 1 /* toAdd */
            ladd
            putfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.size:J
         1: .line 284
            return
        end local 1 // long toAdd
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;
            0    2     1  toAdd  J
    MethodParameters:
       Name  Flags
      toAdd  

  private long totalCDCSizeOnDisk();
    descriptor: ()J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
         0: .line 288
            aload 0 /* this */
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.unflushedCDCSize:J
            aload 0 /* this */
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.size:J
            ladd
            lreturn
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;

  public void shutdown();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
         0: .line 293
            aload 0 /* this */
            getfield org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.cdcSizeCalculationExecutor:Ljava/util/concurrent/ExecutorService;
            invokeinterface java.util.concurrent.ExecutorService.shutdown:()V
         1: .line 294
            return
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;

  private void lambda$0();
    descriptor: ()V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
         0: .line 237
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker.recalculateOverflowSize:()V
            return
        end local 0 // org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/commitlog/CommitLogSegmentManagerCDC$CDCSizeTracker;
}
SourceFile: "CommitLogSegmentManagerCDC.java"
NestHost: org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public DiscardPolicy = java.util.concurrent.ThreadPoolExecutor$DiscardPolicy of java.util.concurrent.ThreadPoolExecutor
  public final CDCState = org.apache.cassandra.db.commitlog.CommitLogSegment$CDCState of org.apache.cassandra.db.commitlog.CommitLogSegment
  private CDCSizeTracker = org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC$CDCSizeTracker of org.apache.cassandra.db.commitlog.CommitLogSegmentManagerCDC