public final class org.apache.cassandra.batchlog.LegacyBatchlogMigrator
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.apache.cassandra.batchlog.LegacyBatchlogMigrator
super_class: java.lang.Object
{
private static final org.slf4j.Logger logger;
descriptor: Lorg/slf4j/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/apache/cassandra/batchlog/LegacyBatchlogMigrator;
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.logger:Lorg/slf4j/Logger;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/batchlog/LegacyBatchlogMigrator;
public static void migrate();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=7, args_size=0
0: ldc "system"
invokestatic org.apache.cassandra.db.Keyspace.open:(Ljava/lang/String;)Lorg/apache/cassandra/db/Keyspace;
ldc "batchlog"
invokevirtual org.apache.cassandra.db.Keyspace.getColumnFamilyStore:(Ljava/lang/String;)Lorg/apache/cassandra/db/ColumnFamilyStore;
astore 0
start local 0 1: aload 0
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.isEmpty:()Z
ifeq 3
2: return
3: StackMap locals: org.apache.cassandra.db.ColumnFamilyStore
StackMap stack:
getstatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.logger:Lorg/slf4j/Logger;
ldc "Migrating legacy batchlog to new storage"
invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;)V
4: iconst_0
istore 1
start local 1 5: ldc "SELECT id, data, written_at, version FROM %s.%s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
6: ldc "system"
aastore
dup
iconst_1
7: ldc "batchlog"
aastore
8: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 2
start local 2 9: aload 0
invokestatic org.apache.cassandra.batchlog.BatchlogManager.calculatePageSize:(Lorg/apache/cassandra/db/ColumnFamilyStore;)I
istore 3
start local 3 10: aload 2
iload 3
iconst_0
anewarray java.lang.Object
invokestatic org.apache.cassandra.cql3.QueryProcessor.executeInternalWithPaging:(Ljava/lang/String;I[Ljava/lang/Object;)Lorg/apache/cassandra/cql3/UntypedResultSet;
astore 4
start local 4 11: aload 4
invokevirtual org.apache.cassandra.cql3.UntypedResultSet.iterator:()Ljava/util/Iterator;
astore 6
goto 15
StackMap locals: org.apache.cassandra.db.ColumnFamilyStore int java.lang.String int org.apache.cassandra.cql3.UntypedResultSet top java.util.Iterator
StackMap stack:
12: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.cql3.UntypedResultSet$Row
astore 5
start local 5 13: aload 5
iload 1
i2l
invokestatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.apply:(Lorg/apache/cassandra/cql3/UntypedResultSet$Row;J)Z
ifeq 15
14: iinc 1 1
end local 5 15: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 12
16: iload 1
ifle 18
17: getstatic org.apache.cassandra.db.SystemKeyspace.LegacyBatchlog:Lorg/apache/cassandra/config/CFMetaData;
invokestatic org.apache.cassandra.db.Keyspace.openAndGetStore:(Lorg/apache/cassandra/config/CFMetaData;)Lorg/apache/cassandra/db/ColumnFamilyStore;
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.truncateBlocking:()V
18: StackMap locals: org.apache.cassandra.db.ColumnFamilyStore int java.lang.String int org.apache.cassandra.cql3.UntypedResultSet
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 19 0 store Lorg/apache/cassandra/db/ColumnFamilyStore;
5 19 1 convertedBatches I
9 19 2 query Ljava/lang/String;
10 19 3 pageSize I
11 19 4 rows Lorg/apache/cassandra/cql3/UntypedResultSet;
13 15 5 row Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
public static boolean isLegacyBatchlogMutation(org.apache.cassandra.db.Mutation);
descriptor: (Lorg/apache/cassandra/db/Mutation;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.cassandra.db.Mutation.getKeyspaceName:()Ljava/lang/String;
ldc "system"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 3
1: aload 0
getstatic org.apache.cassandra.db.SystemKeyspace.LegacyBatchlog:Lorg/apache/cassandra/config/CFMetaData;
getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
invokevirtual org.apache.cassandra.db.Mutation.getPartitionUpdate:(Ljava/util/UUID;)Lorg/apache/cassandra/db/partitions/PartitionUpdate;
ifnull 3
2: iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 mutation Lorg/apache/cassandra/db/Mutation;
MethodParameters:
Name Flags
mutation
public static void handleLegacyMutation(org.apache.cassandra.db.Mutation);
descriptor: (Lorg/apache/cassandra/db/Mutation;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getstatic org.apache.cassandra.db.SystemKeyspace.LegacyBatchlog:Lorg/apache/cassandra/config/CFMetaData;
getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
invokevirtual org.apache.cassandra.db.Mutation.getPartitionUpdate:(Ljava/util/UUID;)Lorg/apache/cassandra/db/partitions/PartitionUpdate;
astore 1
start local 1 1: getstatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.logger:Lorg/slf4j/Logger;
ldc "Applying legacy batchlog mutation {}"
aload 1
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
2: aload 1
aload 1
invokedynamic accept(Lorg/apache/cassandra/db/partitions/PartitionUpdate;)Ljava/util/function/Consumer;
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;)V
org/apache/cassandra/batchlog/LegacyBatchlogMigrator.lambda$0(Lorg/apache/cassandra/db/partitions/PartitionUpdate;Lorg/apache/cassandra/db/rows/Row;)V (6)
(Lorg/apache/cassandra/db/rows/Row;)V
invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.forEach:(Ljava/util/function/Consumer;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 mutation Lorg/apache/cassandra/db/Mutation;
1 4 1 update Lorg/apache/cassandra/db/partitions/PartitionUpdate;
MethodParameters:
Name Flags
mutation
private static boolean apply(org.apache.cassandra.cql3.UntypedResultSet$Row, long);
descriptor: (Lorg/apache/cassandra/cql3/UntypedResultSet$Row;J)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=13, args_size=2
start local 0 start local 1 0: aload 0
ldc "id"
invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getUUID:(Ljava/lang/String;)Ljava/util/UUID;
astore 3
start local 3 1: aload 3
invokevirtual java.util.UUID.version:()I
iconst_1
if_icmpne 2
aload 3
invokestatic org.apache.cassandra.utils.UUIDGen.unixTimestamp:(Ljava/util/UUID;)J
goto 3
StackMap locals: java.util.UUID
StackMap stack:
2: aload 0
ldc "written_at"
invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getLong:(Ljava/lang/String;)J
StackMap locals:
StackMap stack: long
3: lstore 4
start local 4 4: aload 0
ldc "version"
invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.has:(Ljava/lang/String;)Z
ifeq 5
aload 0
ldc "version"
invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getInt:(Ljava/lang/String;)I
goto 6
StackMap locals: long
StackMap stack:
5: bipush 6
StackMap locals:
StackMap stack: int
6: istore 6
start local 6 7: aload 3
invokevirtual java.util.UUID.version:()I
iconst_1
if_icmpeq 9
8: lload 4
lload 1
invokestatic org.apache.cassandra.utils.UUIDGen.getTimeUUID:(JJ)Ljava/util/UUID;
astore 3
9: StackMap locals: int
StackMap stack:
getstatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.logger:Lorg/slf4j/Logger;
ldc "Converting mutation at {}"
lload 4
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
10: aconst_null
astore 7
aconst_null
astore 8
11: new org.apache.cassandra.io.util.DataInputBuffer
dup
aload 0
ldc "data"
invokevirtual org.apache.cassandra.cql3.UntypedResultSet$Row.getBytes:(Ljava/lang/String;)Ljava/nio/ByteBuffer;
iconst_0
invokespecial org.apache.cassandra.io.util.DataInputBuffer.<init>:(Ljava/nio/ByteBuffer;Z)V
astore 9
start local 9 12: aload 9
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.readInt:()I
istore 10
start local 10 13: new java.util.ArrayList
dup
iload 10
invokespecial java.util.ArrayList.<init>:(I)V
astore 11
start local 11 14: iconst_0
istore 12
start local 12 15: goto 18
16: StackMap locals: org.apache.cassandra.cql3.UntypedResultSet$Row long java.util.UUID long int java.lang.Throwable java.lang.Throwable org.apache.cassandra.io.util.DataInputBuffer int java.util.List int
StackMap stack:
aload 11
getstatic org.apache.cassandra.db.Mutation.serializer:Lorg/apache/cassandra/db/Mutation$MutationSerializer;
aload 9
iload 6
invokevirtual org.apache.cassandra.db.Mutation$MutationSerializer.deserialize:(Lorg/apache/cassandra/io/util/DataInputPlus;I)Lorg/apache/cassandra/db/Mutation;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
17: iinc 12 1
StackMap locals:
StackMap stack:
18: iload 12
iload 10
if_icmplt 16
end local 12 19: aload 3
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
lload 4
invokevirtual java.util.concurrent.TimeUnit.toMicros:(J)J
aload 11
invokestatic org.apache.cassandra.batchlog.Batch.createLocal:(Ljava/util/UUID;JLjava/util/Collection;)Lorg/apache/cassandra/batchlog/Batch;
invokestatic org.apache.cassandra.batchlog.BatchlogManager.store:(Lorg/apache/cassandra/batchlog/Batch;)V
20: aload 9
ifnull 21
aload 9
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.close:()V
21: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 11 end local 10 StackMap locals: org.apache.cassandra.cql3.UntypedResultSet$Row long java.util.UUID long int java.lang.Throwable java.lang.Throwable org.apache.cassandra.io.util.DataInputBuffer
StackMap stack: java.lang.Throwable
22: astore 7
23: aload 9
ifnull 24
aload 9
invokevirtual org.apache.cassandra.io.util.DataInputBuffer.close:()V
end local 9 StackMap locals:
StackMap stack:
24: aload 7
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
25: astore 8
aload 7
ifnonnull 26
aload 8
astore 7
goto 27
StackMap locals:
StackMap stack:
26: aload 7
aload 8
if_acmpeq 27
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
27: aload 7
athrow
28: StackMap locals: org.apache.cassandra.cql3.UntypedResultSet$Row long java.util.UUID long int
StackMap stack: java.lang.Throwable
astore 7
start local 7 29: getstatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.logger:Lorg/slf4j/Logger;
ldc "Failed to convert mutation {} at timestamp {}"
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 3
aastore
dup
iconst_1
lload 4
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aastore
dup
iconst_2
aload 7
aastore
invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;[Ljava/lang/Object;)V
30: iconst_0
ireturn
end local 7 end local 6 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 row Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
0 31 1 counter J
1 31 3 id Ljava/util/UUID;
4 31 4 timestamp J
7 31 6 version I
12 24 9 in Lorg/apache/cassandra/io/util/DataInputBuffer;
13 22 10 numMutations I
14 22 11 mutations Ljava/util/List<Lorg/apache/cassandra/db/Mutation;>;
15 19 12 i I
29 31 7 t Ljava/lang/Throwable;
Exception table:
from to target type
12 20 22 any
11 21 25 any
22 25 25 any
10 21 28 Class java.lang.Throwable
22 28 28 Class java.lang.Throwable
MethodParameters:
Name Flags
row
counter
public static void syncWriteToBatchlog(org.apache.cassandra.service.WriteResponseHandler<?>, org.apache.cassandra.batchlog.Batch, java.util.Collection<java.net.InetAddress>);
descriptor: (Lorg/apache/cassandra/service/WriteResponseHandler;Lorg/apache/cassandra/batchlog/Batch;Ljava/util/Collection;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 9
StackMap locals: org.apache.cassandra.service.WriteResponseHandler org.apache.cassandra.batchlog.Batch java.util.Collection top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.net.InetAddress
astore 3
start local 3 2: getstatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.logger:Lorg/slf4j/Logger;
ldc "Sending legacy batchlog store request {} to {} for {} mutations"
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 1
getfield org.apache.cassandra.batchlog.Batch.id:Ljava/util/UUID;
aastore
dup
iconst_1
aload 3
aastore
dup
iconst_2
aload 1
invokevirtual org.apache.cassandra.batchlog.Batch.size:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;[Ljava/lang/Object;)V
3: invokestatic org.apache.cassandra.net.MessagingService.instance:()Lorg/apache/cassandra/net/MessagingService;
aload 3
invokevirtual org.apache.cassandra.net.MessagingService.getVersion:(Ljava/net/InetAddress;)I
istore 5
start local 5 4: invokestatic org.apache.cassandra.net.MessagingService.instance:()Lorg/apache/cassandra/net/MessagingService;
aload 1
iload 5
invokestatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.getStoreMutation:(Lorg/apache/cassandra/batchlog/Batch;I)Lorg/apache/cassandra/db/Mutation;
getstatic org.apache.cassandra.net.MessagingService$Verb.MUTATION:Lorg/apache/cassandra/net/MessagingService$Verb;
invokevirtual org.apache.cassandra.db.Mutation.createMessage:(Lorg/apache/cassandra/net/MessagingService$Verb;)Lorg/apache/cassandra/net/MessageOut;
5: aload 3
6: aload 0
7: iconst_0
8: invokevirtual org.apache.cassandra.net.MessagingService.sendRR:(Lorg/apache/cassandra/net/MessageOut;Ljava/net/InetAddress;Lorg/apache/cassandra/service/AbstractWriteResponseHandler;Z)I
pop
end local 5 end local 3 9: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 handler Lorg/apache/cassandra/service/WriteResponseHandler<*>;
0 11 1 batch Lorg/apache/cassandra/batchlog/Batch;
0 11 2 endpoints Ljava/util/Collection<Ljava/net/InetAddress;>;
2 9 3 target Ljava/net/InetAddress;
4 9 5 targetVersion I
Exceptions:
throws org.apache.cassandra.exceptions.WriteTimeoutException, org.apache.cassandra.exceptions.WriteFailureException
Signature: (Lorg/apache/cassandra/service/WriteResponseHandler<*>;Lorg/apache/cassandra/batchlog/Batch;Ljava/util/Collection<Ljava/net/InetAddress;>;)V
MethodParameters:
Name Flags
handler
batch
endpoints
public static void asyncRemoveFromBatchlog(java.util.Collection<java.net.InetAddress>, java.util.UUID, );
descriptor: (Ljava/util/Collection;Ljava/util/UUID;J)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=10, locals=8, args_size=3
start local 0 start local 1 start local 2 0: new org.apache.cassandra.service.WriteResponseHandler
dup
aload 0
1: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
2: getstatic org.apache.cassandra.db.ConsistencyLevel.ANY:Lorg/apache/cassandra/db/ConsistencyLevel;
3: ldc "system"
invokestatic org.apache.cassandra.db.Keyspace.open:(Ljava/lang/String;)Lorg/apache/cassandra/db/Keyspace;
4: aconst_null
5: getstatic org.apache.cassandra.db.WriteType.SIMPLE:Lorg/apache/cassandra/db/WriteType;
6: lload 2
7: invokespecial org.apache.cassandra.service.WriteResponseHandler.<init>:(Ljava/util/Collection;Ljava/util/Collection;Lorg/apache/cassandra/db/ConsistencyLevel;Lorg/apache/cassandra/db/Keyspace;Ljava/lang/Runnable;Lorg/apache/cassandra/db/WriteType;J)V
astore 4
start local 4 8: aload 1
invokestatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.getRemoveMutation:(Ljava/util/UUID;)Lorg/apache/cassandra/db/Mutation;
astore 5
start local 5 9: aload 0
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 7
goto 13
StackMap locals: java.util.Collection java.util.UUID long org.apache.cassandra.service.AbstractWriteResponseHandler org.apache.cassandra.db.Mutation top java.util.Iterator
StackMap stack:
10: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.net.InetAddress
astore 6
start local 6 11: getstatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.logger:Lorg/slf4j/Logger;
ldc "Sending legacy batchlog remove request {} to {}"
aload 1
aload 6
invokeinterface org.slf4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
12: invokestatic org.apache.cassandra.net.MessagingService.instance:()Lorg/apache/cassandra/net/MessagingService;
aload 5
getstatic org.apache.cassandra.net.MessagingService$Verb.MUTATION:Lorg/apache/cassandra/net/MessagingService$Verb;
invokevirtual org.apache.cassandra.db.Mutation.createMessage:(Lorg/apache/cassandra/net/MessagingService$Verb;)Lorg/apache/cassandra/net/MessageOut;
aload 6
aload 4
iconst_0
invokevirtual org.apache.cassandra.net.MessagingService.sendRR:(Lorg/apache/cassandra/net/MessageOut;Ljava/net/InetAddress;Lorg/apache/cassandra/service/AbstractWriteResponseHandler;Z)I
pop
end local 6 13: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
14: return
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 endpoints Ljava/util/Collection<Ljava/net/InetAddress;>;
0 15 1 uuid Ljava/util/UUID;
0 15 2 queryStartNanoTime J
8 15 4 handler Lorg/apache/cassandra/service/AbstractWriteResponseHandler<Lorg/apache/cassandra/db/IMutation;>;
9 15 5 mutation Lorg/apache/cassandra/db/Mutation;
11 13 6 target Ljava/net/InetAddress;
Signature: (Ljava/util/Collection<Ljava/net/InetAddress;>;Ljava/util/UUID;J)V
MethodParameters:
Name Flags
endpoints
uuid
queryStartNanoTime
static void store(org.apache.cassandra.batchlog.Batch, int);
descriptor: (Lorg/apache/cassandra/batchlog/Batch;I)V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokestatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.getStoreMutation:(Lorg/apache/cassandra/batchlog/Batch;I)Lorg/apache/cassandra/db/Mutation;
invokevirtual org.apache.cassandra.db.Mutation.apply:()V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 batch Lorg/apache/cassandra/batchlog/Batch;
0 2 1 version I
MethodParameters:
Name Flags
batch
version
static org.apache.cassandra.db.Mutation getStoreMutation(org.apache.cassandra.batchlog.Batch, int);
descriptor: (Lorg/apache/cassandra/batchlog/Batch;I)Lorg/apache/cassandra/db/Mutation;
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: getstatic org.apache.cassandra.db.SystemKeyspace.LegacyBatchlog:Lorg/apache/cassandra/config/CFMetaData;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.apache.cassandra.batchlog.Batch.id:Ljava/util/UUID;
aastore
invokestatic org.apache.cassandra.db.partitions.PartitionUpdate.simpleBuilder:(Lorg/apache/cassandra/config/CFMetaData;[Ljava/lang/Object;)Lorg/apache/cassandra/db/partitions/PartitionUpdate$SimpleBuilder;
astore 2
start local 2 1: aload 2
iconst_0
anewarray java.lang.Object
invokeinterface org.apache.cassandra.db.partitions.PartitionUpdate$SimpleBuilder.row:([Ljava/lang/Object;)Lorg/apache/cassandra/db/rows/Row$SimpleBuilder;
2: aload 0
getfield org.apache.cassandra.batchlog.Batch.creationTime:J
invokeinterface org.apache.cassandra.db.rows.Row$SimpleBuilder.timestamp:(J)Lorg/apache/cassandra/db/rows/Row$SimpleBuilder;
3: ldc "written_at"
new java.util.Date
dup
aload 0
getfield org.apache.cassandra.batchlog.Batch.creationTime:J
ldc 1000
ldiv
invokespecial java.util.Date.<init>:(J)V
invokeinterface org.apache.cassandra.db.rows.Row$SimpleBuilder.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/apache/cassandra/db/rows/Row$SimpleBuilder;
4: ldc "data"
iload 1
aload 0
getfield org.apache.cassandra.batchlog.Batch.decodedMutations:Ljava/util/Collection;
invokestatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.getSerializedMutations:(ILjava/util/Collection;)Ljava/nio/ByteBuffer;
invokeinterface org.apache.cassandra.db.rows.Row$SimpleBuilder.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/apache/cassandra/db/rows/Row$SimpleBuilder;
5: ldc "version"
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface org.apache.cassandra.db.rows.Row$SimpleBuilder.add:(Ljava/lang/String;Ljava/lang/Object;)Lorg/apache/cassandra/db/rows/Row$SimpleBuilder;
pop
6: aload 2
invokeinterface org.apache.cassandra.db.partitions.PartitionUpdate$SimpleBuilder.buildAsMutation:()Lorg/apache/cassandra/db/Mutation;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 batch Lorg/apache/cassandra/batchlog/Batch;
0 7 1 version I
1 7 2 builder Lorg/apache/cassandra/db/partitions/PartitionUpdate$SimpleBuilder;
MethodParameters:
Name Flags
batch
version
private static org.apache.cassandra.db.Mutation getRemoveMutation(java.util.UUID);
descriptor: (Ljava/util/UUID;)Lorg/apache/cassandra/db/Mutation;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: new org.apache.cassandra.db.Mutation
dup
getstatic org.apache.cassandra.db.SystemKeyspace.LegacyBatchlog:Lorg/apache/cassandra/config/CFMetaData;
1: getstatic org.apache.cassandra.db.marshal.UUIDType.instance:Lorg/apache/cassandra/db/marshal/UUIDType;
aload 0
invokevirtual org.apache.cassandra.db.marshal.UUIDType.decompose:(Ljava/lang/Object;)Ljava/nio/ByteBuffer;
2: invokestatic org.apache.cassandra.utils.FBUtilities.timestampMicros:()J
3: invokestatic org.apache.cassandra.utils.FBUtilities.nowInSeconds:()I
4: invokestatic org.apache.cassandra.db.partitions.PartitionUpdate.fullPartitionDelete:(Lorg/apache/cassandra/config/CFMetaData;Ljava/nio/ByteBuffer;JI)Lorg/apache/cassandra/db/partitions/PartitionUpdate;
invokespecial org.apache.cassandra.db.Mutation.<init>:(Lorg/apache/cassandra/db/partitions/PartitionUpdate;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 uuid Ljava/util/UUID;
MethodParameters:
Name Flags
uuid
private static java.nio.ByteBuffer getSerializedMutations(int, java.util.Collection<org.apache.cassandra.db.Mutation>);
descriptor: (ILjava/util/Collection;)Ljava/nio/ByteBuffer;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
aconst_null
astore 3
1: new org.apache.cassandra.io.util.DataOutputBuffer
dup
invokespecial org.apache.cassandra.io.util.DataOutputBuffer.<init>:()V
astore 4
start local 4 2: aload 4
aload 1
invokeinterface java.util.Collection.size:()I
invokevirtual org.apache.cassandra.io.util.DataOutputBuffer.writeInt:(I)V
3: aload 1
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 6
goto 6
StackMap locals: int java.util.Collection java.lang.Throwable java.lang.Throwable org.apache.cassandra.io.util.DataOutputBuffer top java.util.Iterator
StackMap stack:
4: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.Mutation
astore 5
start local 5 5: getstatic org.apache.cassandra.db.Mutation.serializer:Lorg/apache/cassandra/db/Mutation$MutationSerializer;
aload 5
aload 4
iload 0
invokevirtual org.apache.cassandra.db.Mutation$MutationSerializer.serialize:(Lorg/apache/cassandra/db/Mutation;Lorg/apache/cassandra/io/util/DataOutputPlus;I)V
end local 5 6: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: aload 4
invokevirtual org.apache.cassandra.io.util.DataOutputBuffer.buffer:()Ljava/nio/ByteBuffer;
8: aload 4
ifnull 9
aload 4
invokevirtual org.apache.cassandra.io.util.DataOutputBuffer.close:()V
9: StackMap locals: int java.util.Collection java.lang.Throwable java.lang.Throwable org.apache.cassandra.io.util.DataOutputBuffer
StackMap stack: java.nio.ByteBuffer
areturn
StackMap locals:
StackMap stack: java.lang.Throwable
10: astore 2
11: aload 4
ifnull 12
aload 4
invokevirtual org.apache.cassandra.io.util.DataOutputBuffer.close:()V
end local 4 StackMap locals:
StackMap stack:
12: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 3
aload 2
ifnonnull 14
aload 3
astore 2
goto 15
StackMap locals:
StackMap stack:
14: aload 2
aload 3
if_acmpeq 15
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
15: aload 2
athrow
16: StackMap locals: int java.util.Collection
StackMap stack: java.io.IOException
astore 2
start local 2 17: new java.lang.RuntimeException
dup
aload 2
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 version I
0 18 1 mutations Ljava/util/Collection<Lorg/apache/cassandra/db/Mutation;>;
2 12 4 buf Lorg/apache/cassandra/io/util/DataOutputBuffer;
5 6 5 mutation Lorg/apache/cassandra/db/Mutation;
17 18 2 e Ljava/io/IOException;
Exception table:
from to target type
2 8 10 any
1 9 13 any
10 13 13 any
0 9 16 Class java.io.IOException
10 16 16 Class java.io.IOException
Signature: (ILjava/util/Collection<Lorg/apache/cassandra/db/Mutation;>;)Ljava/nio/ByteBuffer;
MethodParameters:
Name Flags
version
mutations
private static void lambda$0(org.apache.cassandra.db.partitions.PartitionUpdate, org.apache.cassandra.db.rows.Row);
descriptor: (Lorg/apache/cassandra/db/partitions/PartitionUpdate;Lorg/apache/cassandra/db/rows/Row;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=2
start local 1 0: aload 0
invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.metadata:()Lorg/apache/cassandra/config/CFMetaData;
aload 0
invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.partitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
aload 1
invokestatic org.apache.cassandra.cql3.UntypedResultSet$Row.fromInternalRow:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/db/rows/Row;)Lorg/apache/cassandra/cql3/UntypedResultSet$Row;
ldc -1
invokestatic org.apache.cassandra.batchlog.LegacyBatchlogMigrator.apply:(Lorg/apache/cassandra/cql3/UntypedResultSet$Row;J)Z
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 row Lorg/apache/cassandra/db/rows/Row;
}
SourceFile: "LegacyBatchlogMigrator.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public Row = org.apache.cassandra.cql3.UntypedResultSet$Row of org.apache.cassandra.cql3.UntypedResultSet
public MutationSerializer = org.apache.cassandra.db.Mutation$MutationSerializer of org.apache.cassandra.db.Mutation
public abstract SimpleBuilder = org.apache.cassandra.db.partitions.PartitionUpdate$SimpleBuilder of org.apache.cassandra.db.partitions.PartitionUpdate
public abstract SimpleBuilder = org.apache.cassandra.db.rows.Row$SimpleBuilder of org.apache.cassandra.db.rows.Row
public Verb = org.apache.cassandra.net.MessagingService$Verb of org.apache.cassandra.net.MessagingService