public class org.apache.cassandra.db.view.TableViews extends java.util.AbstractCollection<org.apache.cassandra.db.view.View>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.db.view.TableViews
  super_class: java.util.AbstractCollection
{
  private final org.apache.cassandra.config.CFMetaData baseTableMetadata;
    descriptor: Lorg/apache/cassandra/config/CFMetaData;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.List<org.apache.cassandra.db.view.View> views;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/apache/cassandra/db/view/View;>;

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 44
            ldc Lorg/apache/cassandra/db/view/TableViews;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.apache.cassandra.db.view.TableViews.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.apache.cassandra.config.CFMetaData);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.view.TableViews this
        start local 1 // org.apache.cassandra.config.CFMetaData baseTableMetadata
         0: .line 53
            aload 0 /* this */
            invokespecial java.util.AbstractCollection.<init>:()V
         1: .line 51
            aload 0 /* this */
            new java.util.concurrent.CopyOnWriteArrayList
            dup
            invokespecial java.util.concurrent.CopyOnWriteArrayList.<init>:()V
            putfield org.apache.cassandra.db.view.TableViews.views:Ljava/util/List;
         2: .line 55
            aload 0 /* this */
            aload 1 /* baseTableMetadata */
            putfield org.apache.cassandra.db.view.TableViews.baseTableMetadata:Lorg/apache/cassandra/config/CFMetaData;
         3: .line 56
            return
        end local 1 // org.apache.cassandra.config.CFMetaData baseTableMetadata
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lorg/apache/cassandra/db/view/TableViews;
            0    4     1  baseTableMetadata  Lorg/apache/cassandra/config/CFMetaData;
    MethodParameters:
                   Name  Flags
      baseTableMetadata  

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.view.TableViews this
         0: .line 60
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.views:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ireturn
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/view/TableViews;

  public java.util.Iterator<org.apache.cassandra.db.view.View> iterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.db.view.TableViews this
         0: .line 65
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.views:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            areturn
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/db/view/TableViews;
    Signature: ()Ljava/util/Iterator<Lorg/apache/cassandra/db/view/View;>;

  public boolean contains(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.view.TableViews this
        start local 1 // java.lang.String viewName
         0: .line 70
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.views:Ljava/util/List;
            aload 1 /* viewName */
            invokedynamic apply(Ljava/lang/String;)Lcom/google/common/base/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/apache/cassandra/db/view/TableViews.lambda$0(Ljava/lang/String;Lorg/apache/cassandra/db/view/View;)Z (6)
                  (Lorg/apache/cassandra/db/view/View;)Z
            invokestatic com.google.common.collect.Iterables.any:(Ljava/lang/Iterable;Lcom/google/common/base/Predicate;)Z
            ireturn
        end local 1 // java.lang.String viewName
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/apache/cassandra/db/view/TableViews;
            0    1     1  viewName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      viewName  

  public boolean add(org.apache.cassandra.db.view.View);
    descriptor: (Lorg/apache/cassandra/db/view/View;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.view.TableViews this
        start local 1 // org.apache.cassandra.db.view.View view
         0: .line 76
            getstatic org.apache.cassandra.db.view.TableViews.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* view */
            getfield org.apache.cassandra.db.view.View.name:Ljava/lang/String;
            invokevirtual org.apache.cassandra.db.view.TableViews.contains:(Ljava/lang/String;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 77
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.views:Ljava/util/List;
            aload 1 /* view */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // org.apache.cassandra.db.view.View view
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/cassandra/db/view/TableViews;
            0    2     1  view  Lorg/apache/cassandra/db/view/View;
    MethodParameters:
      Name  Flags
      view  

  public java.lang.Iterable<org.apache.cassandra.db.ColumnFamilyStore> allViewsCfs();
    descriptor: ()Ljava/lang/Iterable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.apache.cassandra.db.view.TableViews this
         0: .line 82
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.baseTableMetadata: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;
            astore 1 /* keyspace */
        start local 1 // org.apache.cassandra.db.Keyspace keyspace
         1: .line 83
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.views:Ljava/util/List;
            aload 1 /* keyspace */
            invokedynamic apply(Lorg/apache/cassandra/db/Keyspace;)Lcom/google/common/base/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/apache/cassandra/db/view/TableViews.lambda$1(Lorg/apache/cassandra/db/Keyspace;Lorg/apache/cassandra/db/view/View;)Lorg/apache/cassandra/db/ColumnFamilyStore; (6)
                  (Lorg/apache/cassandra/db/view/View;)Lorg/apache/cassandra/db/ColumnFamilyStore;
            invokestatic com.google.common.collect.Iterables.transform:(Ljava/lang/Iterable;Lcom/google/common/base/Function;)Ljava/lang/Iterable;
            areturn
        end local 1 // org.apache.cassandra.db.Keyspace keyspace
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/cassandra/db/view/TableViews;
            1    2     1  keyspace  Lorg/apache/cassandra/db/Keyspace;
    Signature: ()Ljava/lang/Iterable<Lorg/apache/cassandra/db/ColumnFamilyStore;>;

  public void forceBlockingFlush();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // org.apache.cassandra.db.view.TableViews this
         0: .line 88
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.view.TableViews.allViewsCfs:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 2
            goto 3
      StackMap locals: org.apache.cassandra.db.view.TableViews top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.ColumnFamilyStore
            astore 1 /* viewCfs */
        start local 1 // org.apache.cassandra.db.ColumnFamilyStore viewCfs
         2: .line 89
            aload 1 /* viewCfs */
            invokevirtual org.apache.cassandra.db.ColumnFamilyStore.forceBlockingFlush:()Lorg/apache/cassandra/db/commitlog/CommitLogPosition;
            pop
        end local 1 // org.apache.cassandra.db.ColumnFamilyStore viewCfs
         3: .line 88
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 90
            return
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/apache/cassandra/db/view/TableViews;
            2    3     1  viewCfs  Lorg/apache/cassandra/db/ColumnFamilyStore;

  public void dumpMemtables();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // org.apache.cassandra.db.view.TableViews this
         0: .line 94
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.view.TableViews.allViewsCfs:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 2
            goto 3
      StackMap locals: org.apache.cassandra.db.view.TableViews top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.ColumnFamilyStore
            astore 1 /* viewCfs */
        start local 1 // org.apache.cassandra.db.ColumnFamilyStore viewCfs
         2: .line 95
            aload 1 /* viewCfs */
            invokevirtual org.apache.cassandra.db.ColumnFamilyStore.dumpMemtable:()Ljava/util/concurrent/Future;
            pop
        end local 1 // org.apache.cassandra.db.ColumnFamilyStore viewCfs
         3: .line 94
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         4: .line 96
            return
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/apache/cassandra/db/view/TableViews;
            2    3     1  viewCfs  Lorg/apache/cassandra/db/ColumnFamilyStore;

  public void truncateBlocking(org.apache.cassandra.db.commitlog.CommitLogPosition, long);
    descriptor: (Lorg/apache/cassandra/db/commitlog/CommitLogPosition;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // org.apache.cassandra.db.view.TableViews this
        start local 1 // org.apache.cassandra.db.commitlog.CommitLogPosition replayAfter
        start local 2 // long truncatedAt
         0: .line 100
            aload 0 /* this */
            invokevirtual org.apache.cassandra.db.view.TableViews.allViewsCfs:()Ljava/lang/Iterable;
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 5
            goto 4
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.commitlog.CommitLogPosition long top java.util.Iterator
      StackMap stack:
         1: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.ColumnFamilyStore
            astore 4 /* viewCfs */
        start local 4 // org.apache.cassandra.db.ColumnFamilyStore viewCfs
         2: .line 102
            aload 4 /* viewCfs */
            lload 2 /* truncatedAt */
            invokevirtual org.apache.cassandra.db.ColumnFamilyStore.discardSSTables:(J)V
         3: .line 103
            aload 4 /* viewCfs */
            lload 2 /* truncatedAt */
            aload 1 /* replayAfter */
            invokestatic org.apache.cassandra.db.SystemKeyspace.saveTruncationRecord:(Lorg/apache/cassandra/db/ColumnFamilyStore;JLorg/apache/cassandra/db/commitlog/CommitLogPosition;)V
        end local 4 // org.apache.cassandra.db.ColumnFamilyStore viewCfs
         4: .line 100
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 105
            return
        end local 2 // long truncatedAt
        end local 1 // org.apache.cassandra.db.commitlog.CommitLogPosition replayAfter
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/apache/cassandra/db/view/TableViews;
            0    6     1  replayAfter  Lorg/apache/cassandra/db/commitlog/CommitLogPosition;
            0    6     2  truncatedAt  J
            2    4     4      viewCfs  Lorg/apache/cassandra/db/ColumnFamilyStore;
    MethodParameters:
             Name  Flags
      replayAfter  
      truncatedAt  

  public void removeByName(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.view.TableViews this
        start local 1 // java.lang.String viewName
         0: .line 109
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.views:Ljava/util/List;
            aload 1 /* viewName */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  org/apache/cassandra/db/view/TableViews.lambda$2(Ljava/lang/String;Lorg/apache/cassandra/db/view/View;)Z (6)
                  (Lorg/apache/cassandra/db/view/View;)Z
            invokeinterface java.util.List.removeIf:(Ljava/util/function/Predicate;)Z
            pop
         1: .line 110
            return
        end local 1 // java.lang.String viewName
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/cassandra/db/view/TableViews;
            0    2     1  viewName  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      viewName  

  public void pushViewReplicaUpdates(org.apache.cassandra.db.partitions.PartitionUpdate, boolean, java.util.concurrent.atomic.AtomicLong);
    descriptor: (Lorg/apache/cassandra/db/partitions/PartitionUpdate;ZLjava/util/concurrent/atomic/AtomicLong;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=17, args_size=4
        start local 0 // org.apache.cassandra.db.view.TableViews this
        start local 1 // org.apache.cassandra.db.partitions.PartitionUpdate update
        start local 2 // boolean writeCommitLog
        start local 3 // java.util.concurrent.atomic.AtomicLong baseComplete
         0: .line 122
            getstatic org.apache.cassandra.db.view.TableViews.$assertionsDisabled:Z
            ifne 1
            aload 1 /* update */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.metadata:()Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.baseTableMetadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
            invokevirtual java.util.UUID.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* update */
            invokevirtual org.apache.cassandra.db.view.TableViews.updatedViews:(Lorg/apache/cassandra/db/partitions/PartitionUpdate;)Ljava/util/Collection;
            astore 4 /* views */
        start local 4 // java.util.Collection views
         2: .line 125
            aload 4 /* views */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifeq 4
         3: .line 126
            return
         4: .line 129
      StackMap locals: java.util.Collection
      StackMap stack:
            invokestatic org.apache.cassandra.utils.FBUtilities.nowInSeconds:()I
            istore 5 /* nowInSec */
        start local 5 // int nowInSec
         5: .line 130
            invokestatic java.lang.System.nanoTime:()J
            lstore 6 /* queryStartNanoTime */
        start local 6 // long queryStartNanoTime
         6: .line 131
            aload 0 /* this */
            aload 1 /* update */
            aload 4 /* views */
            iload 5 /* nowInSec */
            invokevirtual org.apache.cassandra.db.view.TableViews.readExistingRowsCommand:(Lorg/apache/cassandra/db/partitions/PartitionUpdate;Ljava/util/Collection;I)Lorg/apache/cassandra/db/SinglePartitionReadCommand;
            astore 8 /* command */
        start local 8 // org.apache.cassandra.db.SinglePartitionReadCommand command
         7: .line 132
            aload 8 /* command */
            ifnonnull 9
         8: .line 133
            return
         9: .line 135
      StackMap locals: int long org.apache.cassandra.db.SinglePartitionReadCommand
      StackMap stack:
            aload 1 /* update */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.metadata:()Lorg/apache/cassandra/config/CFMetaData;
            invokestatic org.apache.cassandra.db.Keyspace.openAndGetStore:(Lorg/apache/cassandra/config/CFMetaData;)Lorg/apache/cassandra/db/ColumnFamilyStore;
            pop
        10: .line 136
            invokestatic java.lang.System.nanoTime:()J
            lstore 9 /* start */
        start local 9 // long start
        11: .line 138
            aconst_null
            astore 12
            aconst_null
            astore 13
        12: aload 8 /* command */
            invokevirtual org.apache.cassandra.db.SinglePartitionReadCommand.executionController:()Lorg/apache/cassandra/db/ReadExecutionController;
            astore 14 /* orderGroup */
        start local 14 // org.apache.cassandra.db.ReadExecutionController orderGroup
        13: .line 139
            aload 8 /* command */
            aload 14 /* orderGroup */
            invokevirtual org.apache.cassandra.db.SinglePartitionReadCommand.executeLocally:(Lorg/apache/cassandra/db/ReadExecutionController;)Lorg/apache/cassandra/db/partitions/UnfilteredPartitionIterator;
            aload 8 /* command */
            invokestatic org.apache.cassandra.db.partitions.UnfilteredPartitionIterators.getOnlyElement:(Lorg/apache/cassandra/db/partitions/UnfilteredPartitionIterator;Lorg/apache/cassandra/db/SinglePartitionReadCommand;)Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
            astore 15 /* existings */
        start local 15 // org.apache.cassandra.db.rows.UnfilteredRowIterator existings
        14: .line 140
            aload 1 /* update */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.unfilteredIterator:()Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
            astore 16 /* updates */
        start local 16 // org.apache.cassandra.db.rows.UnfilteredRowIterator updates
        15: .line 142
            aload 0 /* this */
            aload 4 /* views */
            aload 16 /* updates */
            aload 15 /* existings */
            iload 5 /* nowInSec */
            iconst_0
            invokevirtual org.apache.cassandra.db.view.TableViews.generateViewUpdates:(Ljava/util/Collection;Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;IZ)Ljava/util/Iterator;
            invokestatic com.google.common.collect.Iterators.getOnlyElement:(Ljava/util/Iterator;)Ljava/lang/Object;
            checkcast java.util.Collection
            astore 11 /* mutations */
        start local 11 // java.util.Collection mutations
        16: .line 143
            aload 16 /* updates */
            ifnull 19
            aload 16 /* updates */
            invokeinterface org.apache.cassandra.db.rows.UnfilteredRowIterator.close:()V
            goto 19
        end local 11 // java.util.Collection mutations
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate int java.util.concurrent.atomic.AtomicLong java.util.Collection int long org.apache.cassandra.db.SinglePartitionReadCommand long top java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.ReadExecutionController org.apache.cassandra.db.rows.UnfilteredRowIterator org.apache.cassandra.db.rows.UnfilteredRowIterator
      StackMap stack: java.lang.Throwable
        17: astore 12
            aload 16 /* updates */
            ifnull 18
            aload 16 /* updates */
            invokeinterface org.apache.cassandra.db.rows.UnfilteredRowIterator.close:()V
        end local 16 // org.apache.cassandra.db.rows.UnfilteredRowIterator updates
      StackMap locals:
      StackMap stack:
        18: aload 12
            athrow
        start local 11 // java.util.Collection mutations
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate int java.util.concurrent.atomic.AtomicLong java.util.Collection int long org.apache.cassandra.db.SinglePartitionReadCommand long java.util.Collection java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.ReadExecutionController org.apache.cassandra.db.rows.UnfilteredRowIterator
      StackMap stack:
        19: aload 15 /* existings */
            ifnull 24
            aload 15 /* existings */
            invokeinterface org.apache.cassandra.db.rows.UnfilteredRowIterator.close:()V
            goto 24
        end local 11 // java.util.Collection mutations
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate int java.util.concurrent.atomic.AtomicLong java.util.Collection int long org.apache.cassandra.db.SinglePartitionReadCommand long top java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.ReadExecutionController org.apache.cassandra.db.rows.UnfilteredRowIterator
      StackMap stack: java.lang.Throwable
        20: astore 13
            aload 12
            ifnonnull 21
            aload 13
            astore 12
            goto 22
      StackMap locals:
      StackMap stack:
        21: aload 12
            aload 13
            if_acmpeq 22
            aload 12
            aload 13
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        22: aload 15 /* existings */
            ifnull 23
            aload 15 /* existings */
            invokeinterface org.apache.cassandra.db.rows.UnfilteredRowIterator.close:()V
        end local 15 // org.apache.cassandra.db.rows.UnfilteredRowIterator existings
      StackMap locals:
      StackMap stack:
        23: aload 12
            athrow
        start local 11 // java.util.Collection mutations
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate int java.util.concurrent.atomic.AtomicLong java.util.Collection int long org.apache.cassandra.db.SinglePartitionReadCommand long java.util.Collection java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.ReadExecutionController
      StackMap stack:
        24: aload 14 /* orderGroup */
            ifnull 32
            aload 14 /* orderGroup */
            invokevirtual org.apache.cassandra.db.ReadExecutionController.close:()V
            goto 32
        end local 11 // java.util.Collection mutations
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate int java.util.concurrent.atomic.AtomicLong java.util.Collection int long org.apache.cassandra.db.SinglePartitionReadCommand long top java.lang.Throwable java.lang.Throwable org.apache.cassandra.db.ReadExecutionController
      StackMap stack: java.lang.Throwable
        25: astore 13
            aload 12
            ifnonnull 26
            aload 13
            astore 12
            goto 27
      StackMap locals:
      StackMap stack:
        26: aload 12
            aload 13
            if_acmpeq 27
            aload 12
            aload 13
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        27: aload 14 /* orderGroup */
            ifnull 28
            aload 14 /* orderGroup */
            invokevirtual org.apache.cassandra.db.ReadExecutionController.close:()V
        end local 14 // org.apache.cassandra.db.ReadExecutionController orderGroup
      StackMap locals:
      StackMap stack:
        28: aload 12
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        29: astore 13
            aload 12
            ifnonnull 30
            aload 13
            astore 12
            goto 31
      StackMap locals:
      StackMap stack:
        30: aload 12
            aload 13
            if_acmpeq 31
            aload 12
            aload 13
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        31: aload 12
            athrow
        start local 11 // java.util.Collection mutations
        32: .line 144
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate int java.util.concurrent.atomic.AtomicLong java.util.Collection int long org.apache.cassandra.db.SinglePartitionReadCommand long java.util.Collection
      StackMap stack:
            aload 1 /* update */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.metadata:()Lorg/apache/cassandra/config/CFMetaData;
            invokestatic org.apache.cassandra.db.Keyspace.openAndGetStore:(Lorg/apache/cassandra/config/CFMetaData;)Lorg/apache/cassandra/db/ColumnFamilyStore;
            getfield org.apache.cassandra.db.ColumnFamilyStore.metric:Lorg/apache/cassandra/metrics/TableMetrics;
            getfield org.apache.cassandra.metrics.TableMetrics.viewReadTime:Lorg/apache/cassandra/metrics/TableMetrics$TableTimer;
            invokestatic java.lang.System.nanoTime:()J
            lload 9 /* start */
            lsub
            getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual org.apache.cassandra.metrics.TableMetrics$TableTimer.update:(JLjava/util/concurrent/TimeUnit;)V
        33: .line 146
            aload 11 /* mutations */
            invokeinterface java.util.Collection.isEmpty:()Z
            ifne 35
        34: .line 147
            aload 1 /* update */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.partitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
            invokevirtual org.apache.cassandra.db.DecoratedKey.getKey:()Ljava/nio/ByteBuffer;
            aload 11 /* mutations */
            iload 2 /* writeCommitLog */
            aload 3 /* baseComplete */
            lload 6 /* queryStartNanoTime */
            invokestatic org.apache.cassandra.service.StorageProxy.mutateMV:(Ljava/nio/ByteBuffer;Ljava/util/Collection;ZLjava/util/concurrent/atomic/AtomicLong;J)V
        35: .line 148
      StackMap locals:
      StackMap stack:
            return
        end local 11 // java.util.Collection mutations
        end local 9 // long start
        end local 8 // org.apache.cassandra.db.SinglePartitionReadCommand command
        end local 6 // long queryStartNanoTime
        end local 5 // int nowInSec
        end local 4 // java.util.Collection views
        end local 3 // java.util.concurrent.atomic.AtomicLong baseComplete
        end local 2 // boolean writeCommitLog
        end local 1 // org.apache.cassandra.db.partitions.PartitionUpdate update
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   36     0                this  Lorg/apache/cassandra/db/view/TableViews;
            0   36     1              update  Lorg/apache/cassandra/db/partitions/PartitionUpdate;
            0   36     2      writeCommitLog  Z
            0   36     3        baseComplete  Ljava/util/concurrent/atomic/AtomicLong;
            2   36     4               views  Ljava/util/Collection<Lorg/apache/cassandra/db/view/View;>;
            5   36     5            nowInSec  I
            6   36     6  queryStartNanoTime  J
            7   36     8             command  Lorg/apache/cassandra/db/SinglePartitionReadCommand;
           11   36     9               start  J
           16   17    11           mutations  Ljava/util/Collection<Lorg/apache/cassandra/db/Mutation;>;
           19   20    11           mutations  Ljava/util/Collection<Lorg/apache/cassandra/db/Mutation;>;
           24   25    11           mutations  Ljava/util/Collection<Lorg/apache/cassandra/db/Mutation;>;
           32   36    11           mutations  Ljava/util/Collection<Lorg/apache/cassandra/db/Mutation;>;
           13   28    14          orderGroup  Lorg/apache/cassandra/db/ReadExecutionController;
           14   23    15           existings  Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
           15   18    16             updates  Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
      Exception table:
        from    to  target  type
          15    16      17  any
          14    19      20  any
          13    24      25  any
          12    29      29  any
    MethodParameters:
                Name  Flags
      update          
      writeCommitLog  
      baseComplete    

  public java.util.Iterator<java.util.Collection<org.apache.cassandra.db.Mutation>> generateViewUpdates(java.util.Collection<org.apache.cassandra.db.view.View>, org.apache.cassandra.db.rows.UnfilteredRowIterator, org.apache.cassandra.db.rows.UnfilteredRowIterator, int, boolean);
    descriptor: (Ljava/util/Collection;Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;IZ)Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=16, args_size=6
        start local 0 // org.apache.cassandra.db.view.TableViews this
        start local 1 // java.util.Collection views
        start local 2 // org.apache.cassandra.db.rows.UnfilteredRowIterator updates
        start local 3 // org.apache.cassandra.db.rows.UnfilteredRowIterator existings
        start local 4 // int nowInSec
        start local 5 // boolean separateUpdates
         0: .line 172
            getstatic org.apache.cassandra.db.view.TableViews.$assertionsDisabled:Z
            ifne 1
            aload 2 /* updates */
            invokeinterface org.apache.cassandra.db.rows.UnfilteredRowIterator.metadata:()Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.baseTableMetadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
            invokevirtual java.util.UUID.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 174
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            aload 1 /* views */
            invokeinterface java.util.Collection.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 6 /* generators */
        start local 6 // java.util.List generators
         2: .line 175
            aload 1 /* views */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 8
            goto 5
      StackMap locals: org.apache.cassandra.db.view.TableViews java.util.Collection org.apache.cassandra.db.rows.UnfilteredRowIterator org.apache.cassandra.db.rows.UnfilteredRowIterator int int java.util.List top java.util.Iterator
      StackMap stack:
         3: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.view.View
            astore 7 /* view */
        start local 7 // org.apache.cassandra.db.view.View view
         4: .line 176
            aload 6 /* generators */
            new org.apache.cassandra.db.view.ViewUpdateGenerator
            dup
            aload 7 /* view */
            aload 2 /* updates */
            invokeinterface org.apache.cassandra.db.rows.UnfilteredRowIterator.partitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
            iload 4 /* nowInSec */
            invokespecial org.apache.cassandra.db.view.ViewUpdateGenerator.<init>:(Lorg/apache/cassandra/db/view/View;Lorg/apache/cassandra/db/DecoratedKey;I)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // org.apache.cassandra.db.view.View view
         5: .line 175
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 178
            new org.apache.cassandra.db.view.TableViews$DeletionTracker
            dup
            aload 3 /* existings */
            invokeinterface org.apache.cassandra.db.rows.UnfilteredRowIterator.partitionLevelDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokespecial org.apache.cassandra.db.view.TableViews$DeletionTracker.<init>:(Lorg/apache/cassandra/db/DeletionTime;)V
            astore 7 /* existingsDeletion */
        start local 7 // org.apache.cassandra.db.view.TableViews$DeletionTracker existingsDeletion
         7: .line 179
            new org.apache.cassandra.db.view.TableViews$DeletionTracker
            dup
            aload 2 /* updates */
            invokeinterface org.apache.cassandra.db.rows.UnfilteredRowIterator.partitionLevelDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokespecial org.apache.cassandra.db.view.TableViews$DeletionTracker.<init>:(Lorg/apache/cassandra/db/DeletionTime;)V
            astore 8 /* updatesDeletion */
        start local 8 // org.apache.cassandra.db.view.TableViews$DeletionTracker updatesDeletion
         8: .line 185
            aload 3 /* existings */
            invokestatic com.google.common.collect.Iterators.peekingIterator:(Ljava/util/Iterator;)Lcom/google/common/collect/PeekingIterator;
            astore 9 /* existingsIter */
        start local 9 // com.google.common.collect.PeekingIterator existingsIter
         9: .line 186
            aload 2 /* updates */
            invokestatic com.google.common.collect.Iterators.peekingIterator:(Ljava/util/Iterator;)Lcom/google/common/collect/PeekingIterator;
            astore 10 /* updatesIter */
        start local 10 // com.google.common.collect.PeekingIterator updatesIter
        10: .line 188
            goto 38
        11: .line 190
      StackMap locals: org.apache.cassandra.db.view.TableViews java.util.Collection org.apache.cassandra.db.rows.UnfilteredRowIterator org.apache.cassandra.db.rows.UnfilteredRowIterator int int java.util.List org.apache.cassandra.db.view.TableViews$DeletionTracker org.apache.cassandra.db.view.TableViews$DeletionTracker com.google.common.collect.PeekingIterator com.google.common.collect.PeekingIterator
      StackMap stack:
            aload 9 /* existingsIter */
            invokeinterface com.google.common.collect.PeekingIterator.peek:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Unfiltered
            astore 11 /* existing */
        start local 11 // org.apache.cassandra.db.rows.Unfiltered existing
        12: .line 191
            aload 10 /* updatesIter */
            invokeinterface com.google.common.collect.PeekingIterator.peek:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Unfiltered
            astore 12 /* update */
        start local 12 // org.apache.cassandra.db.rows.Unfiltered update
        13: .line 195
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.baseTableMetadata:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.comparator:Lorg/apache/cassandra/db/ClusteringComparator;
            aload 12 /* update */
            aload 11 /* existing */
            invokevirtual org.apache.cassandra.db.ClusteringComparator.compare:(Lorg/apache/cassandra/db/Clusterable;Lorg/apache/cassandra/db/Clusterable;)I
            istore 15 /* cmp */
        start local 15 // int cmp
        14: .line 196
            iload 15 /* cmp */
            ifge 21
        15: .line 199
            aload 12 /* update */
            invokeinterface org.apache.cassandra.db.rows.Unfiltered.isRangeTombstoneMarker:()Z
            ifeq 18
        16: .line 201
            aload 8 /* updatesDeletion */
            aload 10 /* updatesIter */
            invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Unfiltered
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.update:(Lorg/apache/cassandra/db/rows/Unfiltered;)V
        17: .line 202
            goto 38
        18: .line 205
      StackMap locals: org.apache.cassandra.db.view.TableViews java.util.Collection org.apache.cassandra.db.rows.UnfilteredRowIterator org.apache.cassandra.db.rows.UnfilteredRowIterator int int java.util.List org.apache.cassandra.db.view.TableViews$DeletionTracker org.apache.cassandra.db.view.TableViews$DeletionTracker com.google.common.collect.PeekingIterator com.google.common.collect.PeekingIterator org.apache.cassandra.db.rows.Unfiltered org.apache.cassandra.db.rows.Unfiltered top top int
      StackMap stack:
            aload 10 /* updatesIter */
            invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Row
            aload 8 /* updatesDeletion */
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.currentDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokeinterface org.apache.cassandra.db.rows.Row.withRowDeletion:(Lorg/apache/cassandra/db/DeletionTime;)Lorg/apache/cassandra/db/rows/Row;
            astore 14 /* updateRow */
        start local 14 // org.apache.cassandra.db.rows.Row updateRow
        19: .line 206
            aload 14 /* updateRow */
            invokeinterface org.apache.cassandra.db.rows.Row.clustering:()Lorg/apache/cassandra/db/Clustering;
            aload 7 /* existingsDeletion */
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.currentDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokestatic org.apache.cassandra.db.view.TableViews.emptyRow:(Lorg/apache/cassandra/db/Clustering;Lorg/apache/cassandra/db/DeletionTime;)Lorg/apache/cassandra/db/rows/Row;
            astore 13 /* existingRow */
        start local 13 // org.apache.cassandra.db.rows.Row existingRow
        20: .line 207
            goto 37
        end local 14 // org.apache.cassandra.db.rows.Row updateRow
        end local 13 // org.apache.cassandra.db.rows.Row existingRow
        21: .line 208
      StackMap locals:
      StackMap stack:
            iload 15 /* cmp */
            ifle 29
        22: .line 212
            aload 11 /* existing */
            invokeinterface org.apache.cassandra.db.rows.Unfiltered.isRangeTombstoneMarker:()Z
            ifeq 25
        23: .line 214
            aload 7 /* existingsDeletion */
            aload 9 /* existingsIter */
            invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Unfiltered
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.update:(Lorg/apache/cassandra/db/rows/Unfiltered;)V
        24: .line 215
            goto 38
        25: .line 218
      StackMap locals:
      StackMap stack:
            aload 9 /* existingsIter */
            invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Row
            aload 7 /* existingsDeletion */
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.currentDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokeinterface org.apache.cassandra.db.rows.Row.withRowDeletion:(Lorg/apache/cassandra/db/DeletionTime;)Lorg/apache/cassandra/db/rows/Row;
            astore 13 /* existingRow */
        start local 13 // org.apache.cassandra.db.rows.Row existingRow
        26: .line 219
            aload 13 /* existingRow */
            invokeinterface org.apache.cassandra.db.rows.Row.clustering:()Lorg/apache/cassandra/db/Clustering;
            aload 8 /* updatesDeletion */
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.currentDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokestatic org.apache.cassandra.db.view.TableViews.emptyRow:(Lorg/apache/cassandra/db/Clustering;Lorg/apache/cassandra/db/DeletionTime;)Lorg/apache/cassandra/db/rows/Row;
            astore 14 /* updateRow */
        start local 14 // org.apache.cassandra.db.rows.Row updateRow
        27: .line 225
            aload 14 /* updateRow */
            ifnonnull 37
        28: .line 226
            goto 38
        end local 14 // org.apache.cassandra.db.rows.Row updateRow
        end local 13 // org.apache.cassandra.db.rows.Row existingRow
        29: .line 231
      StackMap locals:
      StackMap stack:
            aload 12 /* update */
            invokeinterface org.apache.cassandra.db.rows.Unfiltered.isRangeTombstoneMarker:()Z
            ifeq 34
        30: .line 233
            getstatic org.apache.cassandra.db.view.TableViews.$assertionsDisabled:Z
            ifne 31
            aload 11 /* existing */
            invokeinterface org.apache.cassandra.db.rows.Unfiltered.isRangeTombstoneMarker:()Z
            ifne 31
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        31: .line 234
      StackMap locals:
      StackMap stack:
            aload 8 /* updatesDeletion */
            aload 10 /* updatesIter */
            invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Unfiltered
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.update:(Lorg/apache/cassandra/db/rows/Unfiltered;)V
        32: .line 235
            aload 7 /* existingsDeletion */
            aload 9 /* existingsIter */
            invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Unfiltered
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.update:(Lorg/apache/cassandra/db/rows/Unfiltered;)V
        33: .line 236
            goto 38
        34: .line 239
      StackMap locals:
      StackMap stack:
            getstatic org.apache.cassandra.db.view.TableViews.$assertionsDisabled:Z
            ifne 35
            aload 11 /* existing */
            invokeinterface org.apache.cassandra.db.rows.Unfiltered.isRangeTombstoneMarker:()Z
            ifeq 35
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        35: .line 240
      StackMap locals:
      StackMap stack:
            aload 9 /* existingsIter */
            invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Row
            aload 7 /* existingsDeletion */
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.currentDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokeinterface org.apache.cassandra.db.rows.Row.withRowDeletion:(Lorg/apache/cassandra/db/DeletionTime;)Lorg/apache/cassandra/db/rows/Row;
            astore 13 /* existingRow */
        start local 13 // org.apache.cassandra.db.rows.Row existingRow
        36: .line 241
            aload 10 /* updatesIter */
            invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Row
            aload 8 /* updatesDeletion */
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.currentDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokeinterface org.apache.cassandra.db.rows.Row.withRowDeletion:(Lorg/apache/cassandra/db/DeletionTime;)Lorg/apache/cassandra/db/rows/Row;
            astore 14 /* updateRow */
        start local 14 // org.apache.cassandra.db.rows.Row updateRow
        37: .line 244
      StackMap locals: org.apache.cassandra.db.view.TableViews java.util.Collection org.apache.cassandra.db.rows.UnfilteredRowIterator org.apache.cassandra.db.rows.UnfilteredRowIterator int int java.util.List org.apache.cassandra.db.view.TableViews$DeletionTracker org.apache.cassandra.db.view.TableViews$DeletionTracker com.google.common.collect.PeekingIterator com.google.common.collect.PeekingIterator org.apache.cassandra.db.rows.Unfiltered org.apache.cassandra.db.rows.Unfiltered org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row int
      StackMap stack:
            aload 13 /* existingRow */
            aload 14 /* updateRow */
            aload 6 /* generators */
            iload 4 /* nowInSec */
            invokestatic org.apache.cassandra.db.view.TableViews.addToViewUpdateGenerators:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;Ljava/util/Collection;I)V
        end local 15 // int cmp
        end local 14 // org.apache.cassandra.db.rows.Row updateRow
        end local 13 // org.apache.cassandra.db.rows.Row existingRow
        end local 12 // org.apache.cassandra.db.rows.Unfiltered update
        end local 11 // org.apache.cassandra.db.rows.Unfiltered existing
        38: .line 188
      StackMap locals: org.apache.cassandra.db.view.TableViews java.util.Collection org.apache.cassandra.db.rows.UnfilteredRowIterator org.apache.cassandra.db.rows.UnfilteredRowIterator int int java.util.List org.apache.cassandra.db.view.TableViews$DeletionTracker org.apache.cassandra.db.view.TableViews$DeletionTracker com.google.common.collect.PeekingIterator com.google.common.collect.PeekingIterator
      StackMap stack:
            aload 9 /* existingsIter */
            invokeinterface com.google.common.collect.PeekingIterator.hasNext:()Z
            ifeq 39
            aload 10 /* updatesIter */
            invokeinterface com.google.common.collect.PeekingIterator.hasNext:()Z
            ifne 11
        39: .line 248
      StackMap locals:
      StackMap stack:
            aload 8 /* updatesDeletion */
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.currentDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokevirtual org.apache.cassandra.db.DeletionTime.isLive:()Z
            ifne 47
        40: .line 250
            goto 46
        41: .line 252
      StackMap locals:
      StackMap stack:
            aload 9 /* existingsIter */
            invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Unfiltered
            astore 11 /* existing */
        start local 11 // org.apache.cassandra.db.rows.Unfiltered existing
        42: .line 255
            aload 11 /* existing */
            invokeinterface org.apache.cassandra.db.rows.Unfiltered.isRangeTombstoneMarker:()Z
            ifeq 44
        43: .line 256
            goto 46
        44: .line 258
      StackMap locals: org.apache.cassandra.db.rows.Unfiltered
      StackMap stack:
            aload 11 /* existing */
            checkcast org.apache.cassandra.db.rows.Row
            astore 12 /* existingRow */
        start local 12 // org.apache.cassandra.db.rows.Row existingRow
        45: .line 259
            aload 12 /* existingRow */
            aload 12 /* existingRow */
            invokeinterface org.apache.cassandra.db.rows.Row.clustering:()Lorg/apache/cassandra/db/Clustering;
            aload 8 /* updatesDeletion */
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.currentDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokestatic org.apache.cassandra.db.view.TableViews.emptyRow:(Lorg/apache/cassandra/db/Clustering;Lorg/apache/cassandra/db/DeletionTime;)Lorg/apache/cassandra/db/rows/Row;
            aload 6 /* generators */
            iload 4 /* nowInSec */
            invokestatic org.apache.cassandra.db.view.TableViews.addToViewUpdateGenerators:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;Ljava/util/Collection;I)V
        end local 12 // org.apache.cassandra.db.rows.Row existingRow
        end local 11 // org.apache.cassandra.db.rows.Unfiltered existing
        46: .line 250
      StackMap locals:
      StackMap stack:
            aload 9 /* existingsIter */
            invokeinterface com.google.common.collect.PeekingIterator.hasNext:()Z
            ifne 41
        47: .line 263
      StackMap locals:
      StackMap stack:
            iload 5 /* separateUpdates */
            ifeq 59
        48: .line 265
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.baseTableMetadata:Lorg/apache/cassandra/config/CFMetaData;
            aload 6 /* generators */
            invokevirtual org.apache.cassandra.db.view.TableViews.buildMutations:(Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List;)Ljava/util/Collection;
            astore 11 /* firstBuild */
        start local 11 // java.util.Collection firstBuild
        49: .line 267
            new org.apache.cassandra.db.view.TableViews$1
            dup
            aload 0 /* this */
            aload 11 /* firstBuild */
            aload 10 /* updatesIter */
            aload 7 /* existingsDeletion */
            aload 6 /* generators */
            iload 4 /* nowInSec */
            invokespecial org.apache.cassandra.db.view.TableViews$1.<init>:(Lorg/apache/cassandra/db/view/TableViews;Ljava/util/Collection;Lcom/google/common/collect/PeekingIterator;Lorg/apache/cassandra/db/view/TableViews$DeletionTracker;Ljava/util/List;I)V
            areturn
        end local 11 // java.util.Collection firstBuild
        50: .line 323
      StackMap locals:
      StackMap stack:
            aload 10 /* updatesIter */
            invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Unfiltered
            astore 11 /* update */
        start local 11 // org.apache.cassandra.db.rows.Unfiltered update
        51: .line 325
            aload 11 /* update */
            invokeinterface org.apache.cassandra.db.rows.Unfiltered.isRangeTombstoneMarker:()Z
            ifeq 53
        52: .line 326
            goto 59
        53: .line 328
      StackMap locals: org.apache.cassandra.db.rows.Unfiltered
      StackMap stack:
            aload 11 /* update */
            checkcast org.apache.cassandra.db.rows.Row
            astore 12 /* updateRow */
        start local 12 // org.apache.cassandra.db.rows.Row updateRow
        54: .line 329
            aload 12 /* updateRow */
            invokeinterface org.apache.cassandra.db.rows.Row.clustering:()Lorg/apache/cassandra/db/Clustering;
            aload 7 /* existingsDeletion */
            invokevirtual org.apache.cassandra.db.view.TableViews$DeletionTracker.currentDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokestatic org.apache.cassandra.db.view.TableViews.emptyRow:(Lorg/apache/cassandra/db/Clustering;Lorg/apache/cassandra/db/DeletionTime;)Lorg/apache/cassandra/db/rows/Row;
        55: .line 330
            aload 12 /* updateRow */
        56: .line 331
            aload 6 /* generators */
        57: .line 332
            iload 4 /* nowInSec */
        58: .line 329
            invokestatic org.apache.cassandra.db.view.TableViews.addToViewUpdateGenerators:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;Ljava/util/Collection;I)V
        end local 12 // org.apache.cassandra.db.rows.Row updateRow
        end local 11 // org.apache.cassandra.db.rows.Unfiltered update
        59: .line 321
      StackMap locals:
      StackMap stack:
            aload 10 /* updatesIter */
            invokeinterface com.google.common.collect.PeekingIterator.hasNext:()Z
            ifne 50
        60: .line 335
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.baseTableMetadata:Lorg/apache/cassandra/config/CFMetaData;
            aload 6 /* generators */
            invokevirtual org.apache.cassandra.db.view.TableViews.buildMutations:(Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List;)Ljava/util/Collection;
            invokestatic com.google.common.collect.Iterators.singletonIterator:(Ljava/lang/Object;)Lcom/google/common/collect/UnmodifiableIterator;
            areturn
        end local 10 // com.google.common.collect.PeekingIterator updatesIter
        end local 9 // com.google.common.collect.PeekingIterator existingsIter
        end local 8 // org.apache.cassandra.db.view.TableViews$DeletionTracker updatesDeletion
        end local 7 // org.apache.cassandra.db.view.TableViews$DeletionTracker existingsDeletion
        end local 6 // java.util.List generators
        end local 5 // boolean separateUpdates
        end local 4 // int nowInSec
        end local 3 // org.apache.cassandra.db.rows.UnfilteredRowIterator existings
        end local 2 // org.apache.cassandra.db.rows.UnfilteredRowIterator updates
        end local 1 // java.util.Collection views
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   61     0               this  Lorg/apache/cassandra/db/view/TableViews;
            0   61     1              views  Ljava/util/Collection<Lorg/apache/cassandra/db/view/View;>;
            0   61     2            updates  Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
            0   61     3          existings  Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;
            0   61     4           nowInSec  I
            0   61     5    separateUpdates  Z
            2   61     6         generators  Ljava/util/List<Lorg/apache/cassandra/db/view/ViewUpdateGenerator;>;
            4    5     7               view  Lorg/apache/cassandra/db/view/View;
            7   61     7  existingsDeletion  Lorg/apache/cassandra/db/view/TableViews$DeletionTracker;
            8   61     8    updatesDeletion  Lorg/apache/cassandra/db/view/TableViews$DeletionTracker;
            9   61     9      existingsIter  Lcom/google/common/collect/PeekingIterator<Lorg/apache/cassandra/db/rows/Unfiltered;>;
           10   61    10        updatesIter  Lcom/google/common/collect/PeekingIterator<Lorg/apache/cassandra/db/rows/Unfiltered;>;
           12   38    11           existing  Lorg/apache/cassandra/db/rows/Unfiltered;
           13   38    12             update  Lorg/apache/cassandra/db/rows/Unfiltered;
           20   21    13        existingRow  Lorg/apache/cassandra/db/rows/Row;
           26   29    13        existingRow  Lorg/apache/cassandra/db/rows/Row;
           36   38    13        existingRow  Lorg/apache/cassandra/db/rows/Row;
           19   21    14          updateRow  Lorg/apache/cassandra/db/rows/Row;
           27   29    14          updateRow  Lorg/apache/cassandra/db/rows/Row;
           37   38    14          updateRow  Lorg/apache/cassandra/db/rows/Row;
           14   38    15                cmp  I
           42   46    11           existing  Lorg/apache/cassandra/db/rows/Unfiltered;
           45   46    12        existingRow  Lorg/apache/cassandra/db/rows/Row;
           49   50    11         firstBuild  Ljava/util/Collection<Lorg/apache/cassandra/db/Mutation;>;
           51   59    11             update  Lorg/apache/cassandra/db/rows/Unfiltered;
           54   59    12          updateRow  Lorg/apache/cassandra/db/rows/Row;
    Signature: (Ljava/util/Collection<Lorg/apache/cassandra/db/view/View;>;Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;Lorg/apache/cassandra/db/rows/UnfilteredRowIterator;IZ)Ljava/util/Iterator<Ljava/util/Collection<Lorg/apache/cassandra/db/Mutation;>;>;
    MethodParameters:
                 Name  Flags
      views            
      updates          
      existings        
      nowInSec         
      separateUpdates  

  public java.util.Collection<org.apache.cassandra.db.view.View> updatedViews(org.apache.cassandra.db.partitions.PartitionUpdate);
    descriptor: (Lorg/apache/cassandra/db/partitions/PartitionUpdate;)Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // org.apache.cassandra.db.view.TableViews this
        start local 1 // org.apache.cassandra.db.partitions.PartitionUpdate updates
         0: .line 347
            new java.util.ArrayList
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.views:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* matchingViews */
        start local 2 // java.util.List matchingViews
         1: .line 349
            aload 0 /* this */
            getfield org.apache.cassandra.db.view.TableViews.views:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 7
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate java.util.List top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.view.View
            astore 3 /* view */
        start local 3 // org.apache.cassandra.db.view.View view
         3: .line 351
            aload 3 /* view */
            invokevirtual org.apache.cassandra.db.view.View.getReadQuery:()Lorg/apache/cassandra/db/ReadQuery;
            astore 5 /* selectQuery */
        start local 5 // org.apache.cassandra.db.ReadQuery selectQuery
         4: .line 352
            aload 5 /* selectQuery */
            aload 1 /* updates */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.partitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
            invokeinterface org.apache.cassandra.db.ReadQuery.selectsKey:(Lorg/apache/cassandra/db/DecoratedKey;)Z
            ifne 6
         5: .line 353
            goto 7
         6: .line 355
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate java.util.List org.apache.cassandra.db.view.View java.util.Iterator org.apache.cassandra.db.ReadQuery
      StackMap stack:
            aload 2 /* matchingViews */
            aload 3 /* view */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // org.apache.cassandra.db.ReadQuery selectQuery
        end local 3 // org.apache.cassandra.db.view.View view
         7: .line 349
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate java.util.List top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         8: .line 357
            aload 2 /* matchingViews */
            areturn
        end local 2 // java.util.List matchingViews
        end local 1 // org.apache.cassandra.db.partitions.PartitionUpdate updates
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0           this  Lorg/apache/cassandra/db/view/TableViews;
            0    9     1        updates  Lorg/apache/cassandra/db/partitions/PartitionUpdate;
            1    9     2  matchingViews  Ljava/util/List<Lorg/apache/cassandra/db/view/View;>;
            3    7     3           view  Lorg/apache/cassandra/db/view/View;
            4    7     5    selectQuery  Lorg/apache/cassandra/db/ReadQuery;
    Signature: (Lorg/apache/cassandra/db/partitions/PartitionUpdate;)Ljava/util/Collection<Lorg/apache/cassandra/db/view/View;>;
    MethodParameters:
         Name  Flags
      updates  

  private org.apache.cassandra.db.SinglePartitionReadCommand readExistingRowsCommand(org.apache.cassandra.db.partitions.PartitionUpdate, java.util.Collection<org.apache.cassandra.db.view.View>, int);
    descriptor: (Lorg/apache/cassandra/db/partitions/PartitionUpdate;Ljava/util/Collection;I)Lorg/apache/cassandra/db/SinglePartitionReadCommand;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=13, args_size=4
        start local 0 // org.apache.cassandra.db.view.TableViews this
        start local 1 // org.apache.cassandra.db.partitions.PartitionUpdate updates
        start local 2 // java.util.Collection views
        start local 3 // int nowInSec
         0: .line 371
            aconst_null
            astore 4 /* sliceBuilder */
        start local 4 // org.apache.cassandra.db.Slices$Builder sliceBuilder
         1: .line 372
            aload 1 /* updates */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.deletionInfo:()Lorg/apache/cassandra/db/DeletionInfo;
            astore 5 /* deletionInfo */
        start local 5 // org.apache.cassandra.db.DeletionInfo deletionInfo
         2: .line 373
            aload 1 /* updates */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.metadata:()Lorg/apache/cassandra/config/CFMetaData;
            astore 6 /* metadata */
        start local 6 // org.apache.cassandra.config.CFMetaData metadata
         3: .line 374
            aload 1 /* updates */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.partitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
            astore 7 /* key */
        start local 7 // org.apache.cassandra.db.DecoratedKey key
         4: .line 376
            aload 5 /* deletionInfo */
            invokeinterface org.apache.cassandra.db.DeletionInfo.isLive:()Z
            ifne 17
         5: .line 378
            new org.apache.cassandra.db.Slices$Builder
            dup
            aload 6 /* metadata */
            getfield org.apache.cassandra.config.CFMetaData.comparator:Lorg/apache/cassandra/db/ClusteringComparator;
            invokespecial org.apache.cassandra.db.Slices$Builder.<init>:(Lorg/apache/cassandra/db/ClusteringComparator;)V
            astore 4 /* sliceBuilder */
         6: .line 389
            aload 5 /* deletionInfo */
            invokeinterface org.apache.cassandra.db.DeletionInfo.getPartitionDeletion:()Lorg/apache/cassandra/db/DeletionTime;
            invokevirtual org.apache.cassandra.db.DeletionTime.isLive:()Z
            ifne 12
         7: .line 391
            aload 2 /* views */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 9
            goto 10
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate java.util.Collection int org.apache.cassandra.db.Slices$Builder org.apache.cassandra.db.DeletionInfo org.apache.cassandra.config.CFMetaData org.apache.cassandra.db.DecoratedKey top java.util.Iterator
      StackMap stack:
         8: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.view.View
            astore 8 /* view */
        start local 8 // org.apache.cassandra.db.view.View view
         9: .line 392
            aload 4 /* sliceBuilder */
            aload 8 /* view */
            invokevirtual org.apache.cassandra.db.view.View.getSelectStatement:()Lorg/apache/cassandra/cql3/statements/SelectStatement;
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.clusteringIndexFilterAsSlices:()Lorg/apache/cassandra/db/Slices;
            invokevirtual org.apache.cassandra.db.Slices$Builder.addAll:(Lorg/apache/cassandra/db/Slices;)Lorg/apache/cassandra/db/Slices$Builder;
            pop
        end local 8 // org.apache.cassandra.db.view.View view
        10: .line 391
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        11: .line 393
            goto 17
        12: .line 396
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate java.util.Collection int org.apache.cassandra.db.Slices$Builder org.apache.cassandra.db.DeletionInfo org.apache.cassandra.config.CFMetaData org.apache.cassandra.db.DecoratedKey
      StackMap stack:
            getstatic org.apache.cassandra.db.view.TableViews.$assertionsDisabled:Z
            ifne 13
            aload 5 /* deletionInfo */
            invokeinterface org.apache.cassandra.db.DeletionInfo.hasRanges:()Z
            ifne 13
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        13: .line 397
      StackMap locals:
      StackMap stack:
            aload 5 /* deletionInfo */
            iconst_0
            invokeinterface org.apache.cassandra.db.DeletionInfo.rangeIterator:(Z)Ljava/util/Iterator;
            astore 8 /* iter */
        start local 8 // java.util.Iterator iter
        14: .line 398
            goto 16
        15: .line 399
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 4 /* sliceBuilder */
            aload 8 /* iter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.RangeTombstone
            invokevirtual org.apache.cassandra.db.RangeTombstone.deletedSlice:()Lorg/apache/cassandra/db/Slice;
            invokevirtual org.apache.cassandra.db.Slices$Builder.add:(Lorg/apache/cassandra/db/Slice;)Lorg/apache/cassandra/db/Slices$Builder;
            pop
        16: .line 398
      StackMap locals:
      StackMap stack:
            aload 8 /* iter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 15
        end local 8 // java.util.Iterator iter
        17: .line 407
      StackMap locals:
      StackMap stack:
            aload 4 /* sliceBuilder */
            ifnonnull 18
            aload 6 /* metadata */
            getfield org.apache.cassandra.config.CFMetaData.comparator:Lorg/apache/cassandra/db/ClusteringComparator;
            invokestatic org.apache.cassandra.utils.btree.BTreeSet.builder:(Ljava/util/Comparator;)Lorg/apache/cassandra/utils/btree/BTreeSet$Builder;
            goto 19
      StackMap locals:
      StackMap stack:
        18: aconst_null
      StackMap locals:
      StackMap stack: org.apache.cassandra.utils.btree.BTreeSet$Builder
        19: astore 8 /* namesBuilder */
        start local 8 // org.apache.cassandra.utils.btree.BTreeSet$Builder namesBuilder
        20: .line 408
            aload 1 /* updates */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.iterator:()Ljava/util/Iterator;
            astore 10
            goto 27
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate java.util.Collection int org.apache.cassandra.db.Slices$Builder org.apache.cassandra.db.DeletionInfo org.apache.cassandra.config.CFMetaData org.apache.cassandra.db.DecoratedKey org.apache.cassandra.utils.btree.BTreeSet$Builder top java.util.Iterator
      StackMap stack:
        21: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.rows.Row
            astore 9 /* row */
        start local 9 // org.apache.cassandra.db.rows.Row row
        22: .line 411
            aload 0 /* this */
            aload 7 /* key */
            aload 9 /* row */
            aload 2 /* views */
            invokevirtual org.apache.cassandra.db.view.TableViews.affectsAnyViews:(Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/rows/Row;Ljava/util/Collection;)Z
            ifne 24
        23: .line 412
            goto 27
        24: .line 414
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate java.util.Collection int org.apache.cassandra.db.Slices$Builder org.apache.cassandra.db.DeletionInfo org.apache.cassandra.config.CFMetaData org.apache.cassandra.db.DecoratedKey org.apache.cassandra.utils.btree.BTreeSet$Builder org.apache.cassandra.db.rows.Row java.util.Iterator
      StackMap stack:
            aload 8 /* namesBuilder */
            ifnonnull 26
        25: .line 415
            aload 4 /* sliceBuilder */
            aload 9 /* row */
            invokeinterface org.apache.cassandra.db.rows.Row.clustering:()Lorg/apache/cassandra/db/Clustering;
            invokestatic org.apache.cassandra.db.Slice.make:(Lorg/apache/cassandra/db/Clustering;)Lorg/apache/cassandra/db/Slice;
            invokevirtual org.apache.cassandra.db.Slices$Builder.add:(Lorg/apache/cassandra/db/Slice;)Lorg/apache/cassandra/db/Slices$Builder;
            pop
            goto 27
        26: .line 417
      StackMap locals:
      StackMap stack:
            aload 8 /* namesBuilder */
            aload 9 /* row */
            invokeinterface org.apache.cassandra.db.rows.Row.clustering:()Lorg/apache/cassandra/db/Clustering;
            invokevirtual org.apache.cassandra.utils.btree.BTreeSet$Builder.add:(Ljava/lang/Object;)Lorg/apache/cassandra/utils/btree/BTreeSet$Builder;
            pop
        end local 9 // org.apache.cassandra.db.rows.Row row
        27: .line 408
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate java.util.Collection int org.apache.cassandra.db.Slices$Builder org.apache.cassandra.db.DeletionInfo org.apache.cassandra.config.CFMetaData org.apache.cassandra.db.DecoratedKey org.apache.cassandra.utils.btree.BTreeSet$Builder top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 21
        28: .line 420
            aload 8 /* namesBuilder */
            ifnonnull 29
            aconst_null
            goto 30
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.partitions.PartitionUpdate java.util.Collection int org.apache.cassandra.db.Slices$Builder org.apache.cassandra.db.DeletionInfo org.apache.cassandra.config.CFMetaData org.apache.cassandra.db.DecoratedKey org.apache.cassandra.utils.btree.BTreeSet$Builder
      StackMap stack:
        29: aload 8 /* namesBuilder */
            invokevirtual org.apache.cassandra.utils.btree.BTreeSet$Builder.build:()Lorg/apache/cassandra/utils/btree/BTreeSet;
      StackMap locals:
      StackMap stack: org.apache.cassandra.utils.btree.BTreeSet
        30: astore 9 /* names */
        start local 9 // java.util.NavigableSet names
        31: .line 424
            aload 9 /* names */
            ifnull 33
            aload 9 /* names */
            invokeinterface java.util.NavigableSet.isEmpty:()Z
            ifeq 33
        32: .line 425
            aconst_null
            areturn
        33: .line 427
      StackMap locals: java.util.NavigableSet
      StackMap stack:
            aload 9 /* names */
            ifnonnull 35
        34: .line 428
            new org.apache.cassandra.db.filter.ClusteringIndexSliceFilter
            dup
            aload 4 /* sliceBuilder */
            invokevirtual org.apache.cassandra.db.Slices$Builder.build:()Lorg/apache/cassandra/db/Slices;
            iconst_0
            invokespecial org.apache.cassandra.db.filter.ClusteringIndexSliceFilter.<init>:(Lorg/apache/cassandra/db/Slices;Z)V
            goto 36
        35: .line 429
      StackMap locals:
      StackMap stack:
            new org.apache.cassandra.db.filter.ClusteringIndexNamesFilter
            dup
            aload 9 /* names */
            iconst_0
            invokespecial org.apache.cassandra.db.filter.ClusteringIndexNamesFilter.<init>:(Ljava/util/NavigableSet;Z)V
        36: .line 427
      StackMap locals:
      StackMap stack: org.apache.cassandra.db.filter.AbstractClusteringIndexFilter
            astore 10 /* clusteringFilter */
        start local 10 // org.apache.cassandra.db.filter.ClusteringIndexFilter clusteringFilter
        37: .line 433
            aload 2 /* views */
            invokeinterface java.util.Collection.size:()I
            iconst_1
            if_icmpne 39
            aload 6 /* metadata */
            invokevirtual org.apache.cassandra.config.CFMetaData.enforceStrictLiveness:()Z
            ifeq 39
        38: .line 434
            aload 2 /* views */
            invokestatic com.google.common.collect.Iterables.getOnlyElement:(Ljava/lang/Iterable;)Ljava/lang/Object;
            checkcast org.apache.cassandra.db.view.View
            invokevirtual org.apache.cassandra.db.view.View.getSelectStatement:()Lorg/apache/cassandra/cql3/statements/SelectStatement;
            invokevirtual org.apache.cassandra.cql3.statements.SelectStatement.queriedColumns:()Lorg/apache/cassandra/db/filter/ColumnFilter;
            goto 40
        39: .line 435
      StackMap locals: org.apache.cassandra.db.filter.ClusteringIndexFilter
      StackMap stack:
            aload 6 /* metadata */
            invokestatic org.apache.cassandra.db.filter.ColumnFilter.all:(Lorg/apache/cassandra/config/CFMetaData;)Lorg/apache/cassandra/db/filter/ColumnFilter;
        40: .line 433
      StackMap locals:
      StackMap stack: org.apache.cassandra.db.filter.ColumnFilter
            astore 11 /* queriedColumns */
        start local 11 // org.apache.cassandra.db.filter.ColumnFilter queriedColumns
        41: .line 442
            getstatic org.apache.cassandra.db.filter.RowFilter.NONE:Lorg/apache/cassandra/db/filter/RowFilter;
            astore 12 /* rowFilter */
        start local 12 // org.apache.cassandra.db.filter.RowFilter rowFilter
        42: .line 443
            aload 6 /* metadata */
            iload 3 /* nowInSec */
            aload 11 /* queriedColumns */
            aload 12 /* rowFilter */
            getstatic org.apache.cassandra.db.filter.DataLimits.NONE:Lorg/apache/cassandra/db/filter/DataLimits;
            aload 7 /* key */
            aload 10 /* clusteringFilter */
            invokestatic org.apache.cassandra.db.SinglePartitionReadCommand.create:(Lorg/apache/cassandra/config/CFMetaData;ILorg/apache/cassandra/db/filter/ColumnFilter;Lorg/apache/cassandra/db/filter/RowFilter;Lorg/apache/cassandra/db/filter/DataLimits;Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;)Lorg/apache/cassandra/db/SinglePartitionReadCommand;
            areturn
        end local 12 // org.apache.cassandra.db.filter.RowFilter rowFilter
        end local 11 // org.apache.cassandra.db.filter.ColumnFilter queriedColumns
        end local 10 // org.apache.cassandra.db.filter.ClusteringIndexFilter clusteringFilter
        end local 9 // java.util.NavigableSet names
        end local 8 // org.apache.cassandra.utils.btree.BTreeSet$Builder namesBuilder
        end local 7 // org.apache.cassandra.db.DecoratedKey key
        end local 6 // org.apache.cassandra.config.CFMetaData metadata
        end local 5 // org.apache.cassandra.db.DeletionInfo deletionInfo
        end local 4 // org.apache.cassandra.db.Slices$Builder sliceBuilder
        end local 3 // int nowInSec
        end local 2 // java.util.Collection views
        end local 1 // org.apache.cassandra.db.partitions.PartitionUpdate updates
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   43     0              this  Lorg/apache/cassandra/db/view/TableViews;
            0   43     1           updates  Lorg/apache/cassandra/db/partitions/PartitionUpdate;
            0   43     2             views  Ljava/util/Collection<Lorg/apache/cassandra/db/view/View;>;
            0   43     3          nowInSec  I
            1   43     4      sliceBuilder  Lorg/apache/cassandra/db/Slices$Builder;
            2   43     5      deletionInfo  Lorg/apache/cassandra/db/DeletionInfo;
            3   43     6          metadata  Lorg/apache/cassandra/config/CFMetaData;
            4   43     7               key  Lorg/apache/cassandra/db/DecoratedKey;
            9   10     8              view  Lorg/apache/cassandra/db/view/View;
           14   17     8              iter  Ljava/util/Iterator<Lorg/apache/cassandra/db/RangeTombstone;>;
           20   43     8      namesBuilder  Lorg/apache/cassandra/utils/btree/BTreeSet$Builder<Lorg/apache/cassandra/db/Clustering;>;
           22   27     9               row  Lorg/apache/cassandra/db/rows/Row;
           31   43     9             names  Ljava/util/NavigableSet<Lorg/apache/cassandra/db/Clustering;>;
           37   43    10  clusteringFilter  Lorg/apache/cassandra/db/filter/ClusteringIndexFilter;
           41   43    11    queriedColumns  Lorg/apache/cassandra/db/filter/ColumnFilter;
           42   43    12         rowFilter  Lorg/apache/cassandra/db/filter/RowFilter;
    Signature: (Lorg/apache/cassandra/db/partitions/PartitionUpdate;Ljava/util/Collection<Lorg/apache/cassandra/db/view/View;>;I)Lorg/apache/cassandra/db/SinglePartitionReadCommand;
    MethodParameters:
          Name  Flags
      updates   
      views     
      nowInSec  

  private boolean affectsAnyViews(org.apache.cassandra.db.DecoratedKey, org.apache.cassandra.db.rows.Row, java.util.Collection<org.apache.cassandra.db.view.View>);
    descriptor: (Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/rows/Row;Ljava/util/Collection;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.apache.cassandra.db.view.TableViews this
        start local 1 // org.apache.cassandra.db.DecoratedKey partitionKey
        start local 2 // org.apache.cassandra.db.rows.Row update
        start local 3 // java.util.Collection views
         0: .line 448
            aload 3 /* views */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 5
            goto 4
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.db.DecoratedKey org.apache.cassandra.db.rows.Row java.util.Collection top java.util.Iterator
      StackMap stack:
         1: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.view.View
            astore 4 /* view */
        start local 4 // org.apache.cassandra.db.view.View view
         2: .line 450
            aload 4 /* view */
            aload 1 /* partitionKey */
            aload 2 /* update */
            invokevirtual org.apache.cassandra.db.view.View.mayBeAffectedBy:(Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/rows/Row;)Z
            ifeq 4
         3: .line 451
            iconst_1
            ireturn
        end local 4 // org.apache.cassandra.db.view.View view
         4: .line 448
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 453
            iconst_0
            ireturn
        end local 3 // java.util.Collection views
        end local 2 // org.apache.cassandra.db.rows.Row update
        end local 1 // org.apache.cassandra.db.DecoratedKey partitionKey
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Lorg/apache/cassandra/db/view/TableViews;
            0    6     1  partitionKey  Lorg/apache/cassandra/db/DecoratedKey;
            0    6     2        update  Lorg/apache/cassandra/db/rows/Row;
            0    6     3         views  Ljava/util/Collection<Lorg/apache/cassandra/db/view/View;>;
            2    4     4          view  Lorg/apache/cassandra/db/view/View;
    Signature: (Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/rows/Row;Ljava/util/Collection<Lorg/apache/cassandra/db/view/View;>;)Z
    MethodParameters:
              Name  Flags
      partitionKey  
      update        
      views         

  private static void addToViewUpdateGenerators(org.apache.cassandra.db.rows.Row, org.apache.cassandra.db.rows.Row, java.util.Collection<org.apache.cassandra.db.view.ViewUpdateGenerator>, );
    descriptor: (Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;Ljava/util/Collection;I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=4
        start local 0 // org.apache.cassandra.db.rows.Row existingBaseRow
        start local 1 // org.apache.cassandra.db.rows.Row updateBaseRow
        start local 2 // java.util.Collection generators
        start local 3 // int nowInSec
         0: .line 469
            getstatic org.apache.cassandra.db.view.TableViews.$assertionsDisabled:Z
            ifne 1
            aload 1 /* updateBaseRow */
            invokeinterface org.apache.cassandra.db.rows.Row.isEmpty:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 473
      StackMap locals:
      StackMap stack:
            aload 0 /* existingBaseRow */
            ifnonnull 2
            aload 1 /* updateBaseRow */
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* existingBaseRow */
            aload 1 /* updateBaseRow */
            iload 3 /* nowInSec */
            invokestatic org.apache.cassandra.db.rows.Rows.merge:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;I)Lorg/apache/cassandra/db/rows/Row;
      StackMap locals:
      StackMap stack: org.apache.cassandra.db.rows.Row
         3: astore 4 /* mergedBaseRow */
        start local 4 // org.apache.cassandra.db.rows.Row mergedBaseRow
         4: .line 474
            aload 2 /* generators */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 6
            goto 7
      StackMap locals: org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row java.util.Collection int org.apache.cassandra.db.rows.Row top java.util.Iterator
      StackMap stack:
         5: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.view.ViewUpdateGenerator
            astore 5 /* generator */
        start local 5 // org.apache.cassandra.db.view.ViewUpdateGenerator generator
         6: .line 475
            aload 5 /* generator */
            aload 0 /* existingBaseRow */
            aload 4 /* mergedBaseRow */
            invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.addBaseTableUpdate:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
        end local 5 // org.apache.cassandra.db.view.ViewUpdateGenerator generator
         7: .line 474
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 476
            return
        end local 4 // org.apache.cassandra.db.rows.Row mergedBaseRow
        end local 3 // int nowInSec
        end local 2 // java.util.Collection generators
        end local 1 // org.apache.cassandra.db.rows.Row updateBaseRow
        end local 0 // org.apache.cassandra.db.rows.Row existingBaseRow
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    9     0  existingBaseRow  Lorg/apache/cassandra/db/rows/Row;
            0    9     1    updateBaseRow  Lorg/apache/cassandra/db/rows/Row;
            0    9     2       generators  Ljava/util/Collection<Lorg/apache/cassandra/db/view/ViewUpdateGenerator;>;
            0    9     3         nowInSec  I
            4    9     4    mergedBaseRow  Lorg/apache/cassandra/db/rows/Row;
            6    7     5        generator  Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
    Signature: (Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;Ljava/util/Collection<Lorg/apache/cassandra/db/view/ViewUpdateGenerator;>;I)V
    MethodParameters:
                 Name  Flags
      existingBaseRow  
      updateBaseRow    
      generators       
      nowInSec         

  private static org.apache.cassandra.db.rows.Row emptyRow(org.apache.cassandra.db.Clustering, org.apache.cassandra.db.DeletionTime);
    descriptor: (Lorg/apache/cassandra/db/Clustering;Lorg/apache/cassandra/db/DeletionTime;)Lorg/apache/cassandra/db/rows/Row;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.cassandra.db.Clustering clustering
        start local 1 // org.apache.cassandra.db.DeletionTime deletion
         0: .line 483
            aload 1 /* deletion */
            invokevirtual org.apache.cassandra.db.DeletionTime.isLive:()Z
            ifeq 1
            aconst_null
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* clustering */
            aload 1 /* deletion */
            invokestatic org.apache.cassandra.db.rows.Row$Deletion.regular:(Lorg/apache/cassandra/db/DeletionTime;)Lorg/apache/cassandra/db/rows/Row$Deletion;
            invokestatic org.apache.cassandra.db.rows.BTreeRow.emptyDeletedRow:(Lorg/apache/cassandra/db/Clustering;Lorg/apache/cassandra/db/rows/Row$Deletion;)Lorg/apache/cassandra/db/rows/BTreeRow;
      StackMap locals:
      StackMap stack: org.apache.cassandra.db.rows.BTreeRow
         2: areturn
        end local 1 // org.apache.cassandra.db.DeletionTime deletion
        end local 0 // org.apache.cassandra.db.Clustering clustering
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0  clustering  Lorg/apache/cassandra/db/Clustering;
            0    3     1    deletion  Lorg/apache/cassandra/db/DeletionTime;
    MethodParameters:
            Name  Flags
      clustering  
      deletion    

  private java.util.Collection<org.apache.cassandra.db.Mutation> buildMutations(org.apache.cassandra.config.CFMetaData, java.util.List<org.apache.cassandra.db.view.ViewUpdateGenerator>);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List;)Ljava/util/Collection;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=3
        start local 0 // org.apache.cassandra.db.view.TableViews this
        start local 1 // org.apache.cassandra.config.CFMetaData baseTableMetadata
        start local 2 // java.util.List generators
         0: .line 498
            aload 2 /* generators */
            invokeinterface java.util.List.size:()I
            iconst_1
            if_icmpne 10
         1: .line 500
            aload 2 /* generators */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.apache.cassandra.db.view.ViewUpdateGenerator
            astore 3 /* generator */
        start local 3 // org.apache.cassandra.db.view.ViewUpdateGenerator generator
         2: .line 501
            aload 3 /* generator */
            invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.generateViewUpdates:()Ljava/util/Collection;
            astore 4 /* updates */
        start local 4 // java.util.Collection updates
         3: .line 502
            new java.util.ArrayList
            dup
            aload 4 /* updates */
            invokeinterface java.util.Collection.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 5 /* mutations */
        start local 5 // java.util.List mutations
         4: .line 503
            aload 4 /* updates */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 7
            goto 7
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.config.CFMetaData java.util.List org.apache.cassandra.db.view.ViewUpdateGenerator java.util.Collection java.util.List top java.util.Iterator
      StackMap stack:
         5: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.partitions.PartitionUpdate
            astore 6 /* update */
        start local 6 // org.apache.cassandra.db.partitions.PartitionUpdate update
         6: .line 504
            aload 5 /* mutations */
            new org.apache.cassandra.db.Mutation
            dup
            aload 6 /* update */
            invokespecial org.apache.cassandra.db.Mutation.<init>:(Lorg/apache/cassandra/db/partitions/PartitionUpdate;)V
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // org.apache.cassandra.db.partitions.PartitionUpdate update
         7: .line 503
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
         8: .line 506
            aload 3 /* generator */
            invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.clear:()V
         9: .line 507
            aload 5 /* mutations */
            areturn
        end local 5 // java.util.List mutations
        end local 4 // java.util.Collection updates
        end local 3 // org.apache.cassandra.db.view.ViewUpdateGenerator generator
        10: .line 510
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.config.CFMetaData java.util.List
      StackMap stack:
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* mutations */
        start local 3 // java.util.Map mutations
        11: .line 511
            aload 2 /* generators */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 5
            goto 23
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.config.CFMetaData java.util.List java.util.Map top java.util.Iterator
      StackMap stack:
        12: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.view.ViewUpdateGenerator
            astore 4 /* generator */
        start local 4 // org.apache.cassandra.db.view.ViewUpdateGenerator generator
        13: .line 513
            aload 4 /* generator */
            invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.generateViewUpdates:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 7
            goto 21
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.config.CFMetaData java.util.List java.util.Map org.apache.cassandra.db.view.ViewUpdateGenerator java.util.Iterator top java.util.Iterator
      StackMap stack:
        14: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.db.partitions.PartitionUpdate
            astore 6 /* update */
        start local 6 // org.apache.cassandra.db.partitions.PartitionUpdate update
        15: .line 515
            aload 6 /* update */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.partitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
            astore 8 /* key */
        start local 8 // org.apache.cassandra.db.DecoratedKey key
        16: .line 516
            aload 3 /* mutations */
            aload 8 /* key */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.cassandra.db.Mutation
            astore 9 /* mutation */
        start local 9 // org.apache.cassandra.db.Mutation mutation
        17: .line 517
            aload 9 /* mutation */
            ifnonnull 20
        18: .line 519
            new org.apache.cassandra.db.Mutation
            dup
            aload 1 /* baseTableMetadata */
            getfield org.apache.cassandra.config.CFMetaData.ksName:Ljava/lang/String;
            aload 8 /* key */
            invokespecial org.apache.cassandra.db.Mutation.<init>:(Ljava/lang/String;Lorg/apache/cassandra/db/DecoratedKey;)V
            astore 9 /* mutation */
        19: .line 520
            aload 3 /* mutations */
            aload 8 /* key */
            aload 9 /* mutation */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 522
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.config.CFMetaData java.util.List java.util.Map org.apache.cassandra.db.view.ViewUpdateGenerator java.util.Iterator org.apache.cassandra.db.partitions.PartitionUpdate java.util.Iterator org.apache.cassandra.db.DecoratedKey org.apache.cassandra.db.Mutation
      StackMap stack:
            aload 9 /* mutation */
            aload 6 /* update */
            invokevirtual org.apache.cassandra.db.Mutation.add:(Lorg/apache/cassandra/db/partitions/PartitionUpdate;)Lorg/apache/cassandra/db/Mutation;
            pop
        end local 9 // org.apache.cassandra.db.Mutation mutation
        end local 8 // org.apache.cassandra.db.DecoratedKey key
        end local 6 // org.apache.cassandra.db.partitions.PartitionUpdate update
        21: .line 513
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.config.CFMetaData java.util.List java.util.Map org.apache.cassandra.db.view.ViewUpdateGenerator java.util.Iterator top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        22: .line 524
            aload 4 /* generator */
            invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.clear:()V
        end local 4 // org.apache.cassandra.db.view.ViewUpdateGenerator generator
        23: .line 511
      StackMap locals: org.apache.cassandra.db.view.TableViews org.apache.cassandra.config.CFMetaData java.util.List java.util.Map top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        24: .line 526
            aload 3 /* mutations */
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            areturn
        end local 3 // java.util.Map mutations
        end local 2 // java.util.List generators
        end local 1 // org.apache.cassandra.config.CFMetaData baseTableMetadata
        end local 0 // org.apache.cassandra.db.view.TableViews this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   25     0               this  Lorg/apache/cassandra/db/view/TableViews;
            0   25     1  baseTableMetadata  Lorg/apache/cassandra/config/CFMetaData;
            0   25     2         generators  Ljava/util/List<Lorg/apache/cassandra/db/view/ViewUpdateGenerator;>;
            2   10     3          generator  Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
            3   10     4            updates  Ljava/util/Collection<Lorg/apache/cassandra/db/partitions/PartitionUpdate;>;
            4   10     5          mutations  Ljava/util/List<Lorg/apache/cassandra/db/Mutation;>;
            6    7     6             update  Lorg/apache/cassandra/db/partitions/PartitionUpdate;
           11   25     3          mutations  Ljava/util/Map<Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/Mutation;>;
           13   23     4          generator  Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
           15   21     6             update  Lorg/apache/cassandra/db/partitions/PartitionUpdate;
           16   21     8                key  Lorg/apache/cassandra/db/DecoratedKey;
           17   21     9           mutation  Lorg/apache/cassandra/db/Mutation;
    Signature: (Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List<Lorg/apache/cassandra/db/view/ViewUpdateGenerator;>;)Ljava/util/Collection<Lorg/apache/cassandra/db/Mutation;>;
    MethodParameters:
                   Name  Flags
      baseTableMetadata  
      generators         

  public boolean add(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast org.apache.cassandra.db.view.View
            invokevirtual org.apache.cassandra.db.view.TableViews.add:(Lorg/apache/cassandra/db/view/View;)Z
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static boolean lambda$0(java.lang.String, org.apache.cassandra.db.view.View);
    descriptor: (Ljava/lang/String;Lorg/apache/cassandra/db/view/View;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // org.apache.cassandra.db.view.View view
         0: .line 70
            aload 1 /* view */
            getfield org.apache.cassandra.db.view.View.name:Ljava/lang/String;
            aload 0
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // org.apache.cassandra.db.view.View view
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1  view  Lorg/apache/cassandra/db/view/View;

  private static org.apache.cassandra.db.ColumnFamilyStore lambda$1(org.apache.cassandra.db.Keyspace, org.apache.cassandra.db.view.View);
    descriptor: (Lorg/apache/cassandra/db/Keyspace;Lorg/apache/cassandra/db/view/View;)Lorg/apache/cassandra/db/ColumnFamilyStore;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // org.apache.cassandra.db.view.View view
         0: .line 83
            aload 0
            aload 1 /* view */
            invokevirtual org.apache.cassandra.db.view.View.getDefinition:()Lorg/apache/cassandra/config/ViewDefinition;
            getfield org.apache.cassandra.config.ViewDefinition.viewName:Ljava/lang/String;
            invokevirtual org.apache.cassandra.db.Keyspace.getColumnFamilyStore:(Ljava/lang/String;)Lorg/apache/cassandra/db/ColumnFamilyStore;
            areturn
        end local 1 // org.apache.cassandra.db.view.View view
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1  view  Lorg/apache/cassandra/db/view/View;

  private static boolean lambda$2(java.lang.String, org.apache.cassandra.db.view.View);
    descriptor: (Ljava/lang/String;Lorg/apache/cassandra/db/view/View;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // org.apache.cassandra.db.view.View v
         0: .line 109
            aload 1 /* v */
            getfield org.apache.cassandra.db.view.View.name:Ljava/lang/String;
            aload 0
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // org.apache.cassandra.db.view.View v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     v  Lorg/apache/cassandra/db/view/View;
}
Signature: Ljava/util/AbstractCollection<Lorg/apache/cassandra/db/view/View;>;
SourceFile: "TableViews.java"
NestMembers:
  org.apache.cassandra.db.view.TableViews$1  org.apache.cassandra.db.view.TableViews$DeletionTracker
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public Builder = org.apache.cassandra.db.Slices$Builder of org.apache.cassandra.db.Slices
  public Deletion = org.apache.cassandra.db.rows.Row$Deletion of org.apache.cassandra.db.rows.Row
  org.apache.cassandra.db.view.TableViews$1
  private DeletionTracker = org.apache.cassandra.db.view.TableViews$DeletionTracker of org.apache.cassandra.db.view.TableViews
  public TableTimer = org.apache.cassandra.metrics.TableMetrics$TableTimer of org.apache.cassandra.metrics.TableMetrics
  public Builder = org.apache.cassandra.utils.btree.BTreeSet$Builder of org.apache.cassandra.utils.btree.BTreeSet