public class org.apache.cassandra.db.view.ViewUpdateGenerator
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.cassandra.db.view.ViewUpdateGenerator
super_class: java.lang.Object
{
private final org.apache.cassandra.db.view.View view;
descriptor: Lorg/apache/cassandra/db/view/View;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int nowInSec;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.apache.cassandra.config.CFMetaData baseMetadata;
descriptor: Lorg/apache/cassandra/config/CFMetaData;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.apache.cassandra.db.DecoratedKey baseDecoratedKey;
descriptor: Lorg/apache/cassandra/db/DecoratedKey;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.nio.ByteBuffer[] basePartitionKey;
descriptor: [Ljava/nio/ByteBuffer;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.apache.cassandra.config.CFMetaData viewMetadata;
descriptor: Lorg/apache/cassandra/config/CFMetaData;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean baseEnforceStrictLiveness;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Map<org.apache.cassandra.db.DecoratedKey, org.apache.cassandra.db.partitions.PartitionUpdate> updates;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/partitions/PartitionUpdate;>;
private final java.nio.ByteBuffer[] currentViewEntryPartitionKey;
descriptor: [Ljava/nio/ByteBuffer;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.apache.cassandra.db.rows.Row$Builder currentViewEntryBuilder;
descriptor: Lorg/apache/cassandra/db/rows/Row$Builder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$org$apache$cassandra$db$view$ViewUpdateGenerator$UpdateAction;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$org$apache$cassandra$config$ColumnDefinition$Kind;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
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.ViewUpdateGenerator.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.apache.cassandra.db.view.View, org.apache.cassandra.db.DecoratedKey, int);
descriptor: (Lorg/apache/cassandra/db/view/View;Lorg/apache/cassandra/db/DecoratedKey;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.apache.cassandra.db.view.ViewUpdateGenerator.updates:Ljava/util/Map;
2: aload 0
aload 1
putfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
3: aload 0
iload 3
putfield org.apache.cassandra.db.view.ViewUpdateGenerator.nowInSec:I
4: aload 0
aload 1
invokevirtual org.apache.cassandra.db.view.View.getDefinition:()Lorg/apache/cassandra/config/ViewDefinition;
invokevirtual org.apache.cassandra.config.ViewDefinition.baseTableMetadata:()Lorg/apache/cassandra/config/CFMetaData;
putfield org.apache.cassandra.db.view.ViewUpdateGenerator.baseMetadata:Lorg/apache/cassandra/config/CFMetaData;
5: aload 0
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.baseMetadata:Lorg/apache/cassandra/config/CFMetaData;
invokevirtual org.apache.cassandra.config.CFMetaData.enforceStrictLiveness:()Z
putfield org.apache.cassandra.db.view.ViewUpdateGenerator.baseEnforceStrictLiveness:Z
6: aload 0
aload 2
putfield org.apache.cassandra.db.view.ViewUpdateGenerator.baseDecoratedKey:Lorg/apache/cassandra/db/DecoratedKey;
7: aload 0
aload 2
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.baseMetadata:Lorg/apache/cassandra/config/CFMetaData;
invokevirtual org.apache.cassandra.config.CFMetaData.getKeyValidator:()Lorg/apache/cassandra/db/marshal/AbstractType;
invokestatic org.apache.cassandra.db.view.ViewUpdateGenerator.extractKeyComponents:(Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/marshal/AbstractType;)[Ljava/nio/ByteBuffer;
putfield org.apache.cassandra.db.view.ViewUpdateGenerator.basePartitionKey:[Ljava/nio/ByteBuffer;
8: aload 0
aload 1
invokevirtual org.apache.cassandra.db.view.View.getDefinition:()Lorg/apache/cassandra/config/ViewDefinition;
getfield org.apache.cassandra.config.ViewDefinition.metadata:Lorg/apache/cassandra/config/CFMetaData;
putfield org.apache.cassandra.db.view.ViewUpdateGenerator.viewMetadata:Lorg/apache/cassandra/config/CFMetaData;
9: aload 0
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.viewMetadata:Lorg/apache/cassandra/config/CFMetaData;
invokevirtual org.apache.cassandra.config.CFMetaData.partitionKeyColumns:()Ljava/util/List;
invokeinterface java.util.List.size:()I
anewarray java.nio.ByteBuffer
putfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryPartitionKey:[Ljava/nio/ByteBuffer;
10: aload 0
invokestatic org.apache.cassandra.db.rows.BTreeRow.sortedBuilder:()Lorg/apache/cassandra/db/rows/Row$Builder;
putfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
11: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 12 1 view Lorg/apache/cassandra/db/view/View;
0 12 2 basePartitionKey Lorg/apache/cassandra/db/DecoratedKey;
0 12 3 nowInSec I
MethodParameters:
Name Flags
view
basePartitionKey
nowInSec
private static java.nio.ByteBuffer[] extractKeyComponents(org.apache.cassandra.db.DecoratedKey, org.apache.cassandra.db.marshal.AbstractType<?>);
descriptor: (Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/marshal/AbstractType;)[Ljava/nio/ByteBuffer;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.apache.cassandra.db.marshal.CompositeType
ifeq 2
1: aload 1
checkcast org.apache.cassandra.db.marshal.CompositeType
aload 0
invokevirtual org.apache.cassandra.db.DecoratedKey.getKey:()Ljava/nio/ByteBuffer;
invokevirtual org.apache.cassandra.db.marshal.CompositeType.split:(Ljava/nio/ByteBuffer;)[Ljava/nio/ByteBuffer;
goto 3
2: StackMap locals:
StackMap stack:
iconst_1
anewarray java.nio.ByteBuffer
dup
iconst_0
aload 0
invokevirtual org.apache.cassandra.db.DecoratedKey.getKey:()Ljava/nio/ByteBuffer;
aastore
3: StackMap locals:
StackMap stack: java.nio.ByteBuffer[]
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 partitionKey Lorg/apache/cassandra/db/DecoratedKey;
0 4 1 type Lorg/apache/cassandra/db/marshal/AbstractType<*>;
Signature: (Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/marshal/AbstractType<*>;)[Ljava/nio/ByteBuffer;
MethodParameters:
Name Flags
partitionKey
type
public void addBaseTableUpdate(org.apache.cassandra.db.rows.Row, org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.apache.cassandra.db.view.ViewUpdateGenerator.$SWITCH_TABLE$org$apache$cassandra$db$view$ViewUpdateGenerator$UpdateAction:()[I
aload 0
aload 1
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.updateAction:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.ordinal:()I
iaload
tableswitch { // 1 - 5
1: 1
2: 2
3: 4
4: 6
5: 8
default: 11
}
1: StackMap locals:
StackMap stack:
return
2: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.createEntry:(Lorg/apache/cassandra/db/rows/Row;)V
3: return
4: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.deleteOldEntry:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
5: return
6: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.updateEntry:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
7: return
8: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.createEntry:(Lorg/apache/cassandra/db/rows/Row;)V
9: aload 0
aload 1
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.deleteOldEntry:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
10: return
11: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 12 1 existingBaseRow Lorg/apache/cassandra/db/rows/Row;
0 12 2 mergedBaseRow Lorg/apache/cassandra/db/rows/Row;
MethodParameters:
Name Flags
existingBaseRow
mergedBaseRow
public java.util.Collection<org.apache.cassandra.db.partitions.PartitionUpdate> generateViewUpdates();
descriptor: ()Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.updates:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
Signature: ()Ljava/util/Collection<Lorg/apache/cassandra/db/partitions/PartitionUpdate;>;
public void clear();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.updates:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
private org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction updateAction(org.apache.cassandra.db.rows.Row, org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$assertionsDisabled:Z
ifne 1
aload 2
invokeinterface org.apache.cassandra.db.rows.Row.isEmpty:()Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.baseMetadata:Lorg/apache/cassandra/config/CFMetaData;
invokevirtual org.apache.cassandra.config.CFMetaData.isCompactTable:()Z
ifeq 9
2: aload 2
invokeinterface org.apache.cassandra.db.rows.Row.clustering:()Lorg/apache/cassandra/db/Clustering;
astore 3
start local 3 3: iconst_0
istore 4
start local 4 4: goto 8
5: StackMap locals: org.apache.cassandra.db.Clustering int
StackMap stack:
aload 3
iload 4
invokeinterface org.apache.cassandra.db.Clustering.get:(I)Ljava/nio/ByteBuffer;
ifnonnull 7
6: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.NONE:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
areturn
7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
aload 3
invokeinterface org.apache.cassandra.db.Clustering.size:()I
if_icmplt 5
end local 4 end local 3 9: StackMap locals:
StackMap stack:
getstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$assertionsDisabled:Z
ifne 10
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
getfield org.apache.cassandra.db.view.View.baseNonPKColumnsInViewPK:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
if_icmple 10
new java.lang.AssertionError
dup
ldc "We currently only support one base non-PK column in the view PK"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
10: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
getfield org.apache.cassandra.db.view.View.baseNonPKColumnsInViewPK:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 21
11: aload 1
ifnull 12
aload 1
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.nowInSec:I
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.baseEnforceStrictLiveness:Z
invokeinterface org.apache.cassandra.db.rows.Row.hasLiveData:(IZ)Z
ifeq 12
iconst_1
goto 13
StackMap locals:
StackMap stack:
12: iconst_0
StackMap locals:
StackMap stack: int
13: istore 3
start local 3 14: aload 2
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.nowInSec:I
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.baseEnforceStrictLiveness:Z
invokeinterface org.apache.cassandra.db.rows.Row.hasLiveData:(IZ)Z
istore 4
start local 4 15: iload 3
ifeq 18
16: iload 4
ifeq 17
getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.UPDATE_EXISTING:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
goto 20
StackMap locals: int int
StackMap stack:
17: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.DELETE_OLD:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
goto 20
18: StackMap locals:
StackMap stack:
iload 4
ifeq 19
getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.NEW_ENTRY:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
goto 20
StackMap locals:
StackMap stack:
19: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.NONE:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
20: StackMap locals:
StackMap stack: org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction
areturn
end local 4 end local 3 21: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
getfield org.apache.cassandra.db.view.View.baseNonPKColumnsInViewPK:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.apache.cassandra.config.ColumnDefinition
astore 3
start local 3 22: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$assertionsDisabled:Z
ifne 23
aload 3
invokevirtual org.apache.cassandra.config.ColumnDefinition.isComplex:()Z
ifeq 23
new java.lang.AssertionError
dup
ldc "A complex column couldn't be part of the view PK"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
23: StackMap locals: org.apache.cassandra.config.ColumnDefinition
StackMap stack:
aload 1
ifnonnull 24
aconst_null
goto 25
StackMap locals:
StackMap stack:
24: aload 1
aload 3
invokeinterface org.apache.cassandra.db.rows.Row.getCell:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/db/rows/Cell;
StackMap locals:
StackMap stack: org.apache.cassandra.db.rows.Cell
25: astore 4
start local 4 26: aload 2
aload 3
invokeinterface org.apache.cassandra.db.rows.Row.getCell:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/db/rows/Cell;
astore 5
start local 5 27: aload 4
aload 5
if_acmpne 31
28: aload 0
aload 4
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.isLive:(Lorg/apache/cassandra/db/rows/Cell;)Z
ifeq 29
getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.UPDATE_EXISTING:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
goto 30
StackMap locals: org.apache.cassandra.db.rows.Cell org.apache.cassandra.db.rows.Cell
StackMap stack:
29: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.NONE:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
StackMap locals:
StackMap stack: org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction
30: areturn
31: StackMap locals:
StackMap stack:
aload 0
aload 4
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.isLive:(Lorg/apache/cassandra/db/rows/Cell;)Z
ifne 35
32: aload 0
aload 5
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.isLive:(Lorg/apache/cassandra/db/rows/Cell;)Z
ifeq 33
getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.NEW_ENTRY:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
goto 34
StackMap locals:
StackMap stack:
33: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.NONE:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
StackMap locals:
StackMap stack: org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction
34: areturn
35: StackMap locals:
StackMap stack:
aload 0
aload 5
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.isLive:(Lorg/apache/cassandra/db/rows/Cell;)Z
ifne 37
36: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.DELETE_OLD:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
areturn
37: StackMap locals:
StackMap stack:
aload 3
invokevirtual org.apache.cassandra.config.ColumnDefinition.cellValueType:()Lorg/apache/cassandra/db/marshal/AbstractType;
aload 4
invokevirtual org.apache.cassandra.db.rows.Cell.value:()Ljava/nio/ByteBuffer;
aload 5
invokevirtual org.apache.cassandra.db.rows.Cell.value:()Ljava/nio/ByteBuffer;
invokevirtual org.apache.cassandra.db.marshal.AbstractType.compare:(Ljava/nio/ByteBuffer;Ljava/nio/ByteBuffer;)I
ifne 39
38: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.UPDATE_EXISTING:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
goto 40
39: StackMap locals:
StackMap stack:
getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.SWITCH_ENTRY:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
40: StackMap locals:
StackMap stack: org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 41 1 existingBaseRow Lorg/apache/cassandra/db/rows/Row;
0 41 2 mergedBaseRow Lorg/apache/cassandra/db/rows/Row;
3 9 3 clustering Lorg/apache/cassandra/db/Clustering;
4 9 4 i I
14 21 3 existingHasLiveData Z
15 21 4 mergedHasLiveData Z
22 41 3 baseColumn Lorg/apache/cassandra/config/ColumnDefinition;
26 41 4 before Lorg/apache/cassandra/db/rows/Cell;
27 41 5 after Lorg/apache/cassandra/db/rows/Cell;
MethodParameters:
Name Flags
existingBaseRow
mergedBaseRow
private boolean matchesViewFilter(org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/rows/Row;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.baseDecoratedKey:Lorg/apache/cassandra/db/DecoratedKey;
aload 1
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.nowInSec:I
invokevirtual org.apache.cassandra.db.view.View.matchesViewFilter:(Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/rows/Row;I)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 1 1 baseRow Lorg/apache/cassandra/db/rows/Row;
MethodParameters:
Name Flags
baseRow
private boolean isLive(org.apache.cassandra.db.rows.Cell);
descriptor: (Lorg/apache/cassandra/db/rows/Cell;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
aload 1
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.nowInSec:I
invokevirtual org.apache.cassandra.db.rows.Cell.isLive:(I)Z
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 2 1 cell Lorg/apache/cassandra/db/rows/Cell;
MethodParameters:
Name Flags
cell
private void createEntry(org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/rows/Row;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.matchesViewFilter:(Lorg/apache/cassandra/db/rows/Row;)Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.startNewUpdate:(Lorg/apache/cassandra/db/rows/Row;)V
3: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
aload 0
aload 1
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.computeLivenessInfoForEntry:(Lorg/apache/cassandra/db/rows/Row;)Lorg/apache/cassandra/db/LivenessInfo;
invokeinterface org.apache.cassandra.db.rows.Row$Builder.addPrimaryKeyLivenessInfo:(Lorg/apache/cassandra/db/LivenessInfo;)V
4: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
aload 1
invokeinterface org.apache.cassandra.db.rows.Row.deletion:()Lorg/apache/cassandra/db/rows/Row$Deletion;
invokeinterface org.apache.cassandra.db.rows.Row$Builder.addRowDeletion:(Lorg/apache/cassandra/db/rows/Row$Deletion;)V
5: aload 1
invokeinterface org.apache.cassandra.db.rows.Row.iterator:()Ljava/util/Iterator;
astore 3
goto 11
StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row top java.util.Iterator
StackMap stack:
6: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.rows.ColumnData
astore 2
start local 2 7: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
aload 2
invokevirtual org.apache.cassandra.db.rows.ColumnData.column:()Lorg/apache/cassandra/config/ColumnDefinition;
invokevirtual org.apache.cassandra.db.view.View.getViewColumn:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/config/ColumnDefinition;
astore 4
start local 4 8: aload 4
ifnull 11
aload 4
invokevirtual org.apache.cassandra.config.ColumnDefinition.isPrimaryKeyColumn:()Z
ifeq 10
9: goto 11
10: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.ColumnData java.util.Iterator org.apache.cassandra.config.ColumnDefinition
StackMap stack:
aload 0
aload 4
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.addColumnData:(Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/ColumnData;)V
end local 4 end local 2 11: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
12: aload 0
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.submitUpdate:()V
13: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 14 1 baseRow Lorg/apache/cassandra/db/rows/Row;
7 11 2 data Lorg/apache/cassandra/db/rows/ColumnData;
8 11 4 viewColumn Lorg/apache/cassandra/config/ColumnDefinition;
MethodParameters:
Name Flags
baseRow
private void updateEntry(org.apache.cassandra.db.rows.Row, org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.matchesViewFilter:(Lorg/apache/cassandra/db/rows/Row;)Z
ifne 3
1: aload 0
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.createEntry:(Lorg/apache/cassandra/db/rows/Row;)V
2: return
3: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.matchesViewFilter:(Lorg/apache/cassandra/db/rows/Row;)Z
ifne 6
4: aload 0
aload 1
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.deleteOldEntryInternal:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
5: return
6: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.startNewUpdate:(Lorg/apache/cassandra/db/rows/Row;)V
7: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
aload 0
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.computeLivenessInfoForEntry:(Lorg/apache/cassandra/db/rows/Row;)Lorg/apache/cassandra/db/LivenessInfo;
invokeinterface org.apache.cassandra.db.rows.Row$Builder.addPrimaryKeyLivenessInfo:(Lorg/apache/cassandra/db/LivenessInfo;)V
8: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
aload 2
invokeinterface org.apache.cassandra.db.rows.Row.deletion:()Lorg/apache/cassandra/db/rows/Row$Deletion;
invokeinterface org.apache.cassandra.db.rows.Row$Builder.addRowDeletion:(Lorg/apache/cassandra/db/rows/Row$Deletion;)V
9: aload 0
aload 1
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.addDifferentCells:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
10: aload 0
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.submitUpdate:()V
11: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 12 1 existingBaseRow Lorg/apache/cassandra/db/rows/Row;
0 12 2 mergedBaseRow Lorg/apache/cassandra/db/rows/Row;
MethodParameters:
Name Flags
existingBaseRow
mergedBaseRow
private void addDifferentCells(org.apache.cassandra.db.rows.Row, org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=17, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface org.apache.cassandra.db.rows.Row.iterator:()Ljava/util/Iterator;
invokestatic com.google.common.collect.Iterators.peekingIterator:(Ljava/util/Iterator;)Lcom/google/common/collect/PeekingIterator;
astore 3
start local 3 1: aload 2
invokeinterface org.apache.cassandra.db.rows.Row.iterator:()Ljava/util/Iterator;
astore 5
goto 45
StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row com.google.common.collect.PeekingIterator top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.rows.ColumnData
astore 4
start local 4 3: aload 4
invokevirtual org.apache.cassandra.db.rows.ColumnData.column:()Lorg/apache/cassandra/config/ColumnDefinition;
astore 6
start local 6 4: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
aload 6
invokevirtual org.apache.cassandra.db.view.View.getViewColumn:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/config/ColumnDefinition;
astore 7
start local 7 5: aload 7
ifnull 45
aload 7
invokevirtual org.apache.cassandra.config.ColumnDefinition.isPrimaryKeyColumn:()Z
ifeq 7
6: goto 45
7: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row com.google.common.collect.PeekingIterator org.apache.cassandra.db.rows.ColumnData java.util.Iterator org.apache.cassandra.config.ColumnDefinition org.apache.cassandra.config.ColumnDefinition
StackMap stack:
aconst_null
astore 8
start local 8 8: goto 16
9: StackMap locals: org.apache.cassandra.db.rows.ColumnData
StackMap stack:
aload 6
aload 3
invokeinterface com.google.common.collect.PeekingIterator.peek:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.rows.ColumnData
invokevirtual org.apache.cassandra.db.rows.ColumnData.column:()Lorg/apache/cassandra/config/ColumnDefinition;
invokevirtual org.apache.cassandra.config.ColumnDefinition.compareTo:(Lorg/apache/cassandra/config/ColumnDefinition;)I
istore 9
start local 9 10: iload 9
ifge 12
11: goto 17
12: StackMap locals: int
StackMap stack:
aload 3
invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.rows.ColumnData
astore 10
start local 10 13: iload 9
ifne 16
14: aload 10
astore 8
15: goto 17
end local 10 end local 9 16: StackMap locals:
StackMap stack:
aload 3
invokeinterface com.google.common.collect.PeekingIterator.hasNext:()Z
ifne 9
17: StackMap locals:
StackMap stack:
aload 8
ifnonnull 20
18: aload 0
aload 7
aload 4
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.addColumnData:(Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/ColumnData;)V
19: goto 45
20: StackMap locals:
StackMap stack:
aload 4
aload 8
if_acmpne 22
21: goto 45
22: StackMap locals:
StackMap stack:
aload 6
invokevirtual org.apache.cassandra.config.ColumnDefinition.isComplex:()Z
ifeq 44
23: aload 4
checkcast org.apache.cassandra.db.rows.ComplexColumnData
astore 9
start local 9 24: aload 8
checkcast org.apache.cassandra.db.rows.ComplexColumnData
astore 10
start local 10 25: aload 9
invokevirtual org.apache.cassandra.db.rows.ComplexColumnData.complexDeletion:()Lorg/apache/cassandra/db/DeletionTime;
aload 10
invokevirtual org.apache.cassandra.db.rows.ComplexColumnData.complexDeletion:()Lorg/apache/cassandra/db/DeletionTime;
invokevirtual org.apache.cassandra.db.DeletionTime.supersedes:(Lorg/apache/cassandra/db/DeletionTime;)Z
ifeq 27
26: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
aload 7
aload 9
invokevirtual org.apache.cassandra.db.rows.ComplexColumnData.complexDeletion:()Lorg/apache/cassandra/db/DeletionTime;
invokeinterface org.apache.cassandra.db.rows.Row$Builder.addComplexDeletion:(Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/DeletionTime;)V
27: StackMap locals: org.apache.cassandra.db.rows.ComplexColumnData org.apache.cassandra.db.rows.ComplexColumnData
StackMap stack:
aload 10
invokevirtual org.apache.cassandra.db.rows.ComplexColumnData.iterator:()Ljava/util/Iterator;
invokestatic com.google.common.collect.Iterators.peekingIterator:(Ljava/util/Iterator;)Lcom/google/common/collect/PeekingIterator;
astore 11
start local 11 28: aload 9
invokevirtual org.apache.cassandra.db.rows.ComplexColumnData.iterator:()Ljava/util/Iterator;
astore 13
goto 42
StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row com.google.common.collect.PeekingIterator org.apache.cassandra.db.rows.ColumnData java.util.Iterator org.apache.cassandra.config.ColumnDefinition org.apache.cassandra.config.ColumnDefinition org.apache.cassandra.db.rows.ColumnData org.apache.cassandra.db.rows.ComplexColumnData org.apache.cassandra.db.rows.ComplexColumnData com.google.common.collect.PeekingIterator top java.util.Iterator
StackMap stack:
29: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.rows.Cell
astore 12
start local 12 30: aconst_null
astore 14
start local 14 31: goto 39
32: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row com.google.common.collect.PeekingIterator org.apache.cassandra.db.rows.ColumnData java.util.Iterator org.apache.cassandra.config.ColumnDefinition org.apache.cassandra.config.ColumnDefinition org.apache.cassandra.db.rows.ColumnData org.apache.cassandra.db.rows.ComplexColumnData org.apache.cassandra.db.rows.ComplexColumnData com.google.common.collect.PeekingIterator org.apache.cassandra.db.rows.Cell java.util.Iterator org.apache.cassandra.db.rows.Cell
StackMap stack:
aload 6
invokevirtual org.apache.cassandra.config.ColumnDefinition.cellPathComparator:()Ljava/util/Comparator;
aload 12
invokevirtual org.apache.cassandra.db.rows.Cell.path:()Lorg/apache/cassandra/db/rows/CellPath;
aload 11
invokeinterface com.google.common.collect.PeekingIterator.peek:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.rows.Cell
invokevirtual org.apache.cassandra.db.rows.Cell.path:()Lorg/apache/cassandra/db/rows/CellPath;
invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
istore 15
start local 15 33: iload 15
ifle 35
34: goto 40
35: StackMap locals: int
StackMap stack:
aload 11
invokeinterface com.google.common.collect.PeekingIterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.rows.Cell
astore 16
start local 16 36: iload 15
ifne 39
37: aload 16
astore 14
38: goto 40
end local 16 end local 15 39: StackMap locals:
StackMap stack:
aload 11
invokeinterface com.google.common.collect.PeekingIterator.hasNext:()Z
ifne 32
40: StackMap locals:
StackMap stack:
aload 12
aload 14
if_acmpeq 42
41: aload 0
aload 7
aload 12
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.addCell:(Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/Cell;)V
end local 14 end local 12 42: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row com.google.common.collect.PeekingIterator org.apache.cassandra.db.rows.ColumnData java.util.Iterator org.apache.cassandra.config.ColumnDefinition org.apache.cassandra.config.ColumnDefinition org.apache.cassandra.db.rows.ColumnData org.apache.cassandra.db.rows.ComplexColumnData org.apache.cassandra.db.rows.ComplexColumnData com.google.common.collect.PeekingIterator top java.util.Iterator
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 29
end local 11 end local 10 end local 9 43: goto 45
44: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row com.google.common.collect.PeekingIterator org.apache.cassandra.db.rows.ColumnData java.util.Iterator org.apache.cassandra.config.ColumnDefinition org.apache.cassandra.config.ColumnDefinition org.apache.cassandra.db.rows.ColumnData
StackMap stack:
aload 0
aload 7
aload 4
checkcast org.apache.cassandra.db.rows.Cell
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.addCell:(Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/Cell;)V
end local 8 end local 7 end local 6 end local 4 45: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row com.google.common.collect.PeekingIterator top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
46: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 47 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 47 1 existingBaseRow Lorg/apache/cassandra/db/rows/Row;
0 47 2 mergedBaseRow Lorg/apache/cassandra/db/rows/Row;
1 47 3 existingIter Lcom/google/common/collect/PeekingIterator<Lorg/apache/cassandra/db/rows/ColumnData;>;
3 45 4 mergedData Lorg/apache/cassandra/db/rows/ColumnData;
4 45 6 baseColumn Lorg/apache/cassandra/config/ColumnDefinition;
5 45 7 viewColumn Lorg/apache/cassandra/config/ColumnDefinition;
8 45 8 existingData Lorg/apache/cassandra/db/rows/ColumnData;
10 16 9 cmp I
13 16 10 next Lorg/apache/cassandra/db/rows/ColumnData;
24 43 9 mergedComplexData Lorg/apache/cassandra/db/rows/ComplexColumnData;
25 43 10 existingComplexData Lorg/apache/cassandra/db/rows/ComplexColumnData;
28 43 11 existingCells Lcom/google/common/collect/PeekingIterator<Lorg/apache/cassandra/db/rows/Cell;>;
30 42 12 mergedCell Lorg/apache/cassandra/db/rows/Cell;
31 42 14 existingCell Lorg/apache/cassandra/db/rows/Cell;
33 39 15 cmp I
36 39 16 next Lorg/apache/cassandra/db/rows/Cell;
MethodParameters:
Name Flags
existingBaseRow
mergedBaseRow
private void deleteOldEntry(org.apache.cassandra.db.rows.Row, org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.matchesViewFilter:(Lorg/apache/cassandra/db/rows/Row;)Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.deleteOldEntryInternal:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 4 1 existingBaseRow Lorg/apache/cassandra/db/rows/Row;
0 4 2 mergedBaseRow Lorg/apache/cassandra/db/rows/Row;
MethodParameters:
Name Flags
existingBaseRow
mergedBaseRow
private void deleteOldEntryInternal(org.apache.cassandra.db.rows.Row, org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.startNewUpdate:(Lorg/apache/cassandra/db/rows/Row;)V
1: aload 0
aload 1
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.computeTimestampForEntryDeletion:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)J
lstore 3
start local 3 2: aload 2
invokeinterface org.apache.cassandra.db.rows.Row.deletion:()Lorg/apache/cassandra/db/rows/Row$Deletion;
invokevirtual org.apache.cassandra.db.rows.Row$Deletion.time:()Lorg/apache/cassandra/db/DeletionTime;
invokevirtual org.apache.cassandra.db.DeletionTime.markedForDeleteAt:()J
lstore 5
start local 5 3: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$assertionsDisabled:Z
ifne 4
lload 3
lload 5
lcmp
ifge 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals: long long
StackMap stack:
lload 3
lload 5
lcmp
ifle 7
5: lload 3
ldc 2147483647
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.nowInSec:I
invokestatic org.apache.cassandra.db.LivenessInfo.withExpirationTime:(JII)Lorg/apache/cassandra/db/LivenessInfo;
astore 7
start local 7 6: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
aload 7
invokeinterface org.apache.cassandra.db.rows.Row$Builder.addPrimaryKeyLivenessInfo:(Lorg/apache/cassandra/db/LivenessInfo;)V
end local 7 7: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
aload 2
invokeinterface org.apache.cassandra.db.rows.Row.deletion:()Lorg/apache/cassandra/db/rows/Row$Deletion;
invokeinterface org.apache.cassandra.db.rows.Row$Builder.addRowDeletion:(Lorg/apache/cassandra/db/rows/Row$Deletion;)V
8: aload 0
aload 1
aload 2
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.addDifferentCells:(Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)V
9: aload 0
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.submitUpdate:()V
10: return
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 11 1 existingBaseRow Lorg/apache/cassandra/db/rows/Row;
0 11 2 mergedBaseRow Lorg/apache/cassandra/db/rows/Row;
2 11 3 timestamp J
3 11 5 rowDeletion J
6 7 7 info Lorg/apache/cassandra/db/LivenessInfo;
MethodParameters:
Name Flags
existingBaseRow
mergedBaseRow
private void startNewUpdate(org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/rows/Row;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.viewMetadata:Lorg/apache/cassandra/config/CFMetaData;
invokevirtual org.apache.cassandra.config.CFMetaData.clusteringColumns:()Ljava/util/List;
invokeinterface java.util.List.size:()I
anewarray java.nio.ByteBuffer
astore 2
start local 2 1: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.viewMetadata:Lorg/apache/cassandra/config/CFMetaData;
invokevirtual org.apache.cassandra.config.CFMetaData.primaryKeyColumns:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 4
goto 8
StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row java.nio.ByteBuffer[] top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.config.ColumnDefinition
astore 3
start local 3 3: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
aload 3
invokevirtual org.apache.cassandra.db.view.View.getBaseColumn:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/config/ColumnDefinition;
astore 5
start local 5 4: aload 0
aload 5
aload 1
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.getValueForPK:(Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/Row;)Ljava/nio/ByteBuffer;
astore 6
start local 6 5: aload 3
invokevirtual org.apache.cassandra.config.ColumnDefinition.isPartitionKey:()Z
ifeq 7
6: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryPartitionKey:[Ljava/nio/ByteBuffer;
aload 3
invokevirtual org.apache.cassandra.config.ColumnDefinition.position:()I
aload 6
aastore
goto 8
7: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row java.nio.ByteBuffer[] org.apache.cassandra.config.ColumnDefinition java.util.Iterator org.apache.cassandra.config.ColumnDefinition java.nio.ByteBuffer
StackMap stack:
aload 2
aload 3
invokevirtual org.apache.cassandra.config.ColumnDefinition.position:()I
aload 6
aastore
end local 6 end local 5 end local 3 8: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row java.nio.ByteBuffer[] top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
9: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
aload 2
invokestatic org.apache.cassandra.db.Clustering.make:([Ljava/nio/ByteBuffer;)Lorg/apache/cassandra/db/Clustering;
invokeinterface org.apache.cassandra.db.rows.Row$Builder.newRow:(Lorg/apache/cassandra/db/Clustering;)V
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 11 1 baseRow Lorg/apache/cassandra/db/rows/Row;
1 11 2 clusteringValues [Ljava/nio/ByteBuffer;
3 8 3 viewColumn Lorg/apache/cassandra/config/ColumnDefinition;
4 8 5 baseColumn Lorg/apache/cassandra/config/ColumnDefinition;
5 8 6 value Ljava/nio/ByteBuffer;
MethodParameters:
Name Flags
baseRow
private org.apache.cassandra.db.LivenessInfo computeLivenessInfoForEntry(org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/rows/Row;)Lorg/apache/cassandra/db/LivenessInfo;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$assertionsDisabled:Z
ifne 1
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
getfield org.apache.cassandra.db.view.View.baseNonPKColumnsInViewPK:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
if_icmple 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
invokeinterface org.apache.cassandra.db.rows.Row.primaryKeyLivenessInfo:()Lorg/apache/cassandra/db/LivenessInfo;
astore 2
start local 2 2: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
invokevirtual org.apache.cassandra.db.view.View.hasSamePrimaryKeyColumnsAsBaseTable:()Z
ifeq 35
3: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
invokevirtual org.apache.cassandra.db.view.View.getDefinition:()Lorg/apache/cassandra/config/ViewDefinition;
getfield org.apache.cassandra.config.ViewDefinition.includeAllColumns:Z
ifeq 5
4: aload 2
areturn
5: StackMap locals: org.apache.cassandra.db.LivenessInfo
StackMap stack:
aload 2
invokevirtual org.apache.cassandra.db.LivenessInfo.timestamp:()J
lstore 3
start local 3 6: iconst_0
istore 5
start local 5 7: aconst_null
astore 6
start local 6 8: aload 1
invokeinterface org.apache.cassandra.db.rows.Row.cells:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 8
goto 21
StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.LivenessInfo long int org.apache.cassandra.db.rows.Cell top java.util.Iterator
StackMap stack:
9: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.rows.Cell
astore 7
start local 7 10: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
aload 7
invokevirtual org.apache.cassandra.db.rows.Cell.column:()Lorg/apache/cassandra/config/ColumnDefinition;
invokevirtual org.apache.cassandra.db.view.View.getViewColumn:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/config/ColumnDefinition;
ifnull 12
11: goto 21
12: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.LivenessInfo long int org.apache.cassandra.db.rows.Cell org.apache.cassandra.db.rows.Cell java.util.Iterator
StackMap stack:
aload 0
aload 7
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.isLive:(Lorg/apache/cassandra/db/rows/Cell;)Z
ifne 14
13: goto 21
14: StackMap locals:
StackMap stack:
lload 3
aload 7
invokevirtual org.apache.cassandra.db.rows.Cell.maxTimestamp:()J
invokestatic java.lang.Math.max:(JJ)J
lstore 3
15: aload 7
invokevirtual org.apache.cassandra.db.rows.Cell.isExpiring:()Z
ifne 17
16: iconst_1
istore 5
goto 21
17: StackMap locals:
StackMap stack:
aload 6
ifnonnull 19
18: aload 7
astore 6
goto 21
19: StackMap locals:
StackMap stack:
aload 7
invokevirtual org.apache.cassandra.db.rows.Cell.localDeletionTime:()I
aload 6
invokevirtual org.apache.cassandra.db.rows.Cell.localDeletionTime:()I
if_icmple 21
20: aload 7
astore 6
end local 7 21: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.LivenessInfo long int org.apache.cassandra.db.rows.Cell top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
22: aload 2
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.nowInSec:I
invokevirtual org.apache.cassandra.db.LivenessInfo.isLive:(I)Z
ifeq 24
aload 2
invokevirtual org.apache.cassandra.db.LivenessInfo.isExpiring:()Z
ifne 24
23: lload 3
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.nowInSec:I
invokestatic org.apache.cassandra.db.LivenessInfo.create:(JI)Lorg/apache/cassandra/db/LivenessInfo;
areturn
24: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.LivenessInfo long int org.apache.cassandra.db.rows.Cell
StackMap stack:
iload 5
ifeq 26
25: lload 3
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.nowInSec:I
invokestatic org.apache.cassandra.db.LivenessInfo.create:(JI)Lorg/apache/cassandra/db/LivenessInfo;
areturn
26: StackMap locals:
StackMap stack:
aload 6
ifnonnull 28
27: aload 2
areturn
28: StackMap locals:
StackMap stack:
aload 6
invokevirtual org.apache.cassandra.db.rows.Cell.localDeletionTime:()I
aload 2
invokevirtual org.apache.cassandra.db.LivenessInfo.localExpirationTime:()I
if_icmpgt 30
29: aload 2
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.nowInSec:I
invokevirtual org.apache.cassandra.db.LivenessInfo.isLive:(I)Z
ifne 34
30: StackMap locals:
StackMap stack:
lload 3
31: aload 6
invokevirtual org.apache.cassandra.db.rows.Cell.ttl:()I
32: aload 6
invokevirtual org.apache.cassandra.db.rows.Cell.localDeletionTime:()I
33: invokestatic org.apache.cassandra.db.LivenessInfo.withExpirationTime:(JII)Lorg/apache/cassandra/db/LivenessInfo;
areturn
34: StackMap locals:
StackMap stack:
aload 2
areturn
end local 6 end local 5 end local 3 35: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
getfield org.apache.cassandra.db.view.View.baseNonPKColumnsInViewPK:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.apache.cassandra.config.ColumnDefinition
invokeinterface org.apache.cassandra.db.rows.Row.getCell:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/db/rows/Cell;
astore 3
start local 3 36: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$assertionsDisabled:Z
ifne 37
aload 0
aload 3
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.isLive:(Lorg/apache/cassandra/db/rows/Cell;)Z
ifne 37
new java.lang.AssertionError
dup
ldc "We shouldn't have got there if the base row had no associated entry"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
37: StackMap locals: org.apache.cassandra.db.rows.Cell
StackMap stack:
aload 3
invokevirtual org.apache.cassandra.db.rows.Cell.timestamp:()J
aload 3
invokevirtual org.apache.cassandra.db.rows.Cell.ttl:()I
aload 3
invokevirtual org.apache.cassandra.db.rows.Cell.localDeletionTime:()I
invokestatic org.apache.cassandra.db.LivenessInfo.withExpirationTime:(JII)Lorg/apache/cassandra/db/LivenessInfo;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 38 1 baseRow Lorg/apache/cassandra/db/rows/Row;
2 38 2 baseLiveness Lorg/apache/cassandra/db/LivenessInfo;
6 35 3 timestamp J
7 35 5 hasNonExpiringLiveCell Z
8 35 6 biggestExpirationCell Lorg/apache/cassandra/db/rows/Cell;
10 21 7 cell Lorg/apache/cassandra/db/rows/Cell;
36 38 3 cell Lorg/apache/cassandra/db/rows/Cell;
MethodParameters:
Name Flags
baseRow
private long computeTimestampForEntryDeletion(org.apache.cassandra.db.rows.Row, org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/rows/Row;Lorg/apache/cassandra/db/rows/Row;)J
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface org.apache.cassandra.db.rows.Row.deletion:()Lorg/apache/cassandra/db/rows/Row$Deletion;
invokevirtual org.apache.cassandra.db.rows.Row$Deletion.time:()Lorg/apache/cassandra/db/DeletionTime;
astore 3
start local 3 1: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
invokevirtual org.apache.cassandra.db.view.View.hasSamePrimaryKeyColumnsAsBaseTable:()Z
ifeq 12
2: aload 3
invokevirtual org.apache.cassandra.db.DeletionTime.markedForDeleteAt:()J
aload 1
invokeinterface org.apache.cassandra.db.rows.Row.primaryKeyLivenessInfo:()Lorg/apache/cassandra/db/LivenessInfo;
invokevirtual org.apache.cassandra.db.LivenessInfo.timestamp:()J
invokestatic java.lang.Math.max:(JJ)J
lstore 4
start local 4 3: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
invokevirtual org.apache.cassandra.db.view.View.getDefinition:()Lorg/apache/cassandra/config/ViewDefinition;
getfield org.apache.cassandra.config.ViewDefinition.includeAllColumns:Z
ifeq 5
4: lload 4
lreturn
5: StackMap locals: org.apache.cassandra.db.DeletionTime long
StackMap stack:
aload 1
invokeinterface org.apache.cassandra.db.rows.Row.cells:()Ljava/lang/Iterable;
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 7
goto 10
StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row org.apache.cassandra.db.DeletionTime long top java.util.Iterator
StackMap stack:
6: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.rows.Cell
astore 6
start local 6 7: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
aload 6
invokevirtual org.apache.cassandra.db.rows.Cell.column:()Lorg/apache/cassandra/config/ColumnDefinition;
invokevirtual org.apache.cassandra.db.view.View.getViewColumn:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/config/ColumnDefinition;
ifnull 9
8: goto 10
9: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row org.apache.cassandra.db.DeletionTime long org.apache.cassandra.db.rows.Cell java.util.Iterator
StackMap stack:
lload 4
aload 6
invokevirtual org.apache.cassandra.db.rows.Cell.maxTimestamp:()J
invokestatic java.lang.Math.max:(JJ)J
lstore 4
end local 6 10: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row org.apache.cassandra.db.DeletionTime long top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
11: lload 4
lreturn
end local 4 12: StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.db.rows.Row org.apache.cassandra.db.rows.Row org.apache.cassandra.db.DeletionTime
StackMap stack:
aload 1
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.view:Lorg/apache/cassandra/db/view/View;
getfield org.apache.cassandra.db.view.View.baseNonPKColumnsInViewPK:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.apache.cassandra.config.ColumnDefinition
invokeinterface org.apache.cassandra.db.rows.Row.getCell:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/db/rows/Cell;
astore 4
start local 4 13: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$assertionsDisabled:Z
ifne 14
aload 0
aload 4
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.isLive:(Lorg/apache/cassandra/db/rows/Cell;)Z
ifne 14
new java.lang.AssertionError
dup
ldc "We shouldn't have got there if the base row had no associated entry"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
14: StackMap locals: org.apache.cassandra.db.rows.Cell
StackMap stack:
aload 3
aload 4
invokevirtual org.apache.cassandra.db.DeletionTime.deletes:(Lorg/apache/cassandra/db/rows/Cell;)Z
ifeq 15
aload 3
invokevirtual org.apache.cassandra.db.DeletionTime.markedForDeleteAt:()J
goto 16
StackMap locals:
StackMap stack:
15: aload 4
invokevirtual org.apache.cassandra.db.rows.Cell.timestamp:()J
StackMap locals:
StackMap stack: long
16: lreturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 17 1 existingBaseRow Lorg/apache/cassandra/db/rows/Row;
0 17 2 mergedBaseRow Lorg/apache/cassandra/db/rows/Row;
1 17 3 deletion Lorg/apache/cassandra/db/DeletionTime;
3 12 4 timestamp J
7 10 6 cell Lorg/apache/cassandra/db/rows/Cell;
13 17 4 before Lorg/apache/cassandra/db/rows/Cell;
MethodParameters:
Name Flags
existingBaseRow
mergedBaseRow
private void addColumnData(org.apache.cassandra.config.ColumnDefinition, org.apache.cassandra.db.rows.ColumnData);
descriptor: (Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/ColumnData;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$assertionsDisabled:Z
ifne 1
aload 1
invokevirtual org.apache.cassandra.config.ColumnDefinition.isComplex:()Z
aload 2
invokevirtual org.apache.cassandra.db.rows.ColumnData.column:()Lorg/apache/cassandra/config/ColumnDefinition;
invokevirtual org.apache.cassandra.config.ColumnDefinition.isComplex:()Z
if_icmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.cassandra.config.ColumnDefinition.isComplex:()Z
ifne 4
2: aload 0
aload 1
aload 2
checkcast org.apache.cassandra.db.rows.Cell
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.addCell:(Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/Cell;)V
3: return
4: StackMap locals:
StackMap stack:
aload 2
checkcast org.apache.cassandra.db.rows.ComplexColumnData
astore 3
start local 3 5: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
aload 1
aload 3
invokevirtual org.apache.cassandra.db.rows.ComplexColumnData.complexDeletion:()Lorg/apache/cassandra/db/DeletionTime;
invokeinterface org.apache.cassandra.db.rows.Row$Builder.addComplexDeletion:(Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/DeletionTime;)V
6: aload 3
invokevirtual org.apache.cassandra.db.rows.ComplexColumnData.iterator:()Ljava/util/Iterator;
astore 5
goto 9
StackMap locals: org.apache.cassandra.db.view.ViewUpdateGenerator org.apache.cassandra.config.ColumnDefinition org.apache.cassandra.db.rows.ColumnData org.apache.cassandra.db.rows.ComplexColumnData top java.util.Iterator
StackMap stack:
7: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.rows.Cell
astore 4
start local 4 8: aload 0
aload 1
aload 4
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.addCell:(Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/Cell;)V
end local 4 9: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
10: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 11 1 viewColumn Lorg/apache/cassandra/config/ColumnDefinition;
0 11 2 baseTableData Lorg/apache/cassandra/db/rows/ColumnData;
5 11 3 complexData Lorg/apache/cassandra/db/rows/ComplexColumnData;
8 9 4 cell Lorg/apache/cassandra/db/rows/Cell;
MethodParameters:
Name Flags
viewColumn
baseTableData
private void addCell(org.apache.cassandra.config.ColumnDefinition, org.apache.cassandra.db.rows.Cell);
descriptor: (Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/Cell;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$assertionsDisabled:Z
ifne 1
aload 1
invokevirtual org.apache.cassandra.config.ColumnDefinition.isPrimaryKeyColumn:()Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
aload 2
aload 1
invokevirtual org.apache.cassandra.db.rows.Cell.withUpdatedColumn:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/db/rows/Cell;
invokeinterface org.apache.cassandra.db.rows.Row$Builder.addCell:(Lorg/apache/cassandra/db/rows/Cell;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 3 1 viewColumn Lorg/apache/cassandra/config/ColumnDefinition;
0 3 2 baseTableCell Lorg/apache/cassandra/db/rows/Cell;
MethodParameters:
Name Flags
viewColumn
baseTableCell
private void submitUpdate();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryBuilder:Lorg/apache/cassandra/db/rows/Row$Builder;
invokeinterface org.apache.cassandra.db.rows.Row$Builder.build:()Lorg/apache/cassandra/db/rows/Row;
astore 1
start local 1 1: aload 1
invokeinterface org.apache.cassandra.db.rows.Row.isEmpty:()Z
ifeq 3
2: return
3: StackMap locals: org.apache.cassandra.db.rows.Row
StackMap stack:
aload 0
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator.makeCurrentPartitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
astore 2
start local 2 4: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.updates:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.cassandra.db.partitions.PartitionUpdate
astore 3
start local 3 5: aload 3
ifnonnull 8
6: new org.apache.cassandra.db.partitions.PartitionUpdate
dup
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.viewMetadata:Lorg/apache/cassandra/config/CFMetaData;
aload 2
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.viewMetadata:Lorg/apache/cassandra/config/CFMetaData;
invokevirtual org.apache.cassandra.config.CFMetaData.partitionColumns:()Lorg/apache/cassandra/db/PartitionColumns;
iconst_4
invokespecial org.apache.cassandra.db.partitions.PartitionUpdate.<init>:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/PartitionColumns;I)V
astore 3
7: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.updates:Ljava/util/Map;
aload 2
aload 3
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: StackMap locals: org.apache.cassandra.db.DecoratedKey org.apache.cassandra.db.partitions.PartitionUpdate
StackMap stack:
aload 3
aload 1
invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.add:(Lorg/apache/cassandra/db/rows/Row;)V
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
1 10 1 row Lorg/apache/cassandra/db/rows/Row;
4 10 2 partitionKey Lorg/apache/cassandra/db/DecoratedKey;
5 10 3 update Lorg/apache/cassandra/db/partitions/PartitionUpdate;
private org.apache.cassandra.db.DecoratedKey makeCurrentPartitionKey();
descriptor: ()Lorg/apache/cassandra/db/DecoratedKey;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.viewMetadata:Lorg/apache/cassandra/config/CFMetaData;
invokevirtual org.apache.cassandra.config.CFMetaData.partitionKeyColumns:()Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 2
1: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryPartitionKey:[Ljava/nio/ByteBuffer;
iconst_0
aaload
goto 3
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.currentViewEntryPartitionKey:[Ljava/nio/ByteBuffer;
invokestatic org.apache.cassandra.db.marshal.CompositeType.build:([Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
3: StackMap locals:
StackMap stack: java.nio.ByteBuffer
astore 1
start local 1 4: aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.viewMetadata:Lorg/apache/cassandra/config/CFMetaData;
aload 1
invokevirtual org.apache.cassandra.config.CFMetaData.decorateKey:(Ljava/nio/ByteBuffer;)Lorg/apache/cassandra/db/DecoratedKey;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
4 5 1 rawKey Ljava/nio/ByteBuffer;
private java.nio.ByteBuffer getValueForPK(org.apache.cassandra.config.ColumnDefinition, org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/db/rows/Row;)Ljava/nio/ByteBuffer;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.apache.cassandra.db.view.ViewUpdateGenerator.$SWITCH_TABLE$org$apache$cassandra$config$ColumnDefinition$Kind:()[I
aload 1
getfield org.apache.cassandra.config.ColumnDefinition.kind:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.ordinal:()I
iaload
tableswitch { // 1 - 2
1: 1
2: 2
default: 3
}
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.db.view.ViewUpdateGenerator.basePartitionKey:[Ljava/nio/ByteBuffer;
aload 1
invokevirtual org.apache.cassandra.config.ColumnDefinition.position:()I
aaload
areturn
2: StackMap locals:
StackMap stack:
aload 2
invokeinterface org.apache.cassandra.db.rows.Row.clustering:()Lorg/apache/cassandra/db/Clustering;
aload 1
invokevirtual org.apache.cassandra.config.ColumnDefinition.position:()I
invokeinterface org.apache.cassandra.db.Clustering.get:(I)Ljava/nio/ByteBuffer;
areturn
3: StackMap locals:
StackMap stack:
aload 2
aload 1
invokeinterface org.apache.cassandra.db.rows.Row.getCell:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/db/rows/Cell;
invokevirtual org.apache.cassandra.db.rows.Cell.value:()Ljava/nio/ByteBuffer;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/cassandra/db/view/ViewUpdateGenerator;
0 4 1 column Lorg/apache/cassandra/config/ColumnDefinition;
0 4 2 row Lorg/apache/cassandra/db/rows/Row;
MethodParameters:
Name Flags
column
row
static int[] $SWITCH_TABLE$org$apache$cassandra$db$view$ViewUpdateGenerator$UpdateAction();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$SWITCH_TABLE$org$apache$cassandra$db$view$ViewUpdateGenerator$UpdateAction:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.values:()[Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.DELETE_OLD:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.ordinal:()I
iconst_3
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.NEW_ENTRY:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.ordinal:()I
iconst_2
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.NONE:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.ordinal:()I
iconst_1
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.SWITCH_ENTRY:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.ordinal:()I
iconst_5
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.UPDATE_EXISTING:Lorg/apache/cassandra/db/view/ViewUpdateGenerator$UpdateAction;
invokevirtual org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction.ordinal:()I
iconst_4
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
dup
putstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$SWITCH_TABLE$org$apache$cassandra$db$view$ViewUpdateGenerator$UpdateAction:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
static int[] $SWITCH_TABLE$org$apache$cassandra$config$ColumnDefinition$Kind();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$SWITCH_TABLE$org$apache$cassandra$config$ColumnDefinition$Kind:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.apache.cassandra.config.ColumnDefinition$Kind.values:()[Lorg/apache/cassandra/config/ColumnDefinition$Kind;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.apache.cassandra.config.ColumnDefinition$Kind.CLUSTERING:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.apache.cassandra.config.ColumnDefinition$Kind.PARTITION_KEY:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.ordinal:()I
iconst_1
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.apache.cassandra.config.ColumnDefinition$Kind.REGULAR:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.ordinal:()I
iconst_3
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.apache.cassandra.config.ColumnDefinition$Kind.STATIC:Lorg/apache/cassandra/config/ColumnDefinition$Kind;
invokevirtual org.apache.cassandra.config.ColumnDefinition$Kind.ordinal:()I
iconst_4
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
dup
putstatic org.apache.cassandra.db.view.ViewUpdateGenerator.$SWITCH_TABLE$org$apache$cassandra$config$ColumnDefinition$Kind:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
}
SourceFile: "ViewUpdateGenerator.java"
NestMembers:
org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction
InnerClasses:
public final Kind = org.apache.cassandra.config.ColumnDefinition$Kind of org.apache.cassandra.config.ColumnDefinition
public abstract Builder = org.apache.cassandra.db.rows.Row$Builder of org.apache.cassandra.db.rows.Row
public Deletion = org.apache.cassandra.db.rows.Row$Deletion of org.apache.cassandra.db.rows.Row
private final UpdateAction = org.apache.cassandra.db.view.ViewUpdateGenerator$UpdateAction of org.apache.cassandra.db.view.ViewUpdateGenerator