public class org.apache.cassandra.tools.StandaloneSSTableUtil
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.cassandra.tools.StandaloneSSTableUtil
super_class: java.lang.Object
{
private static final java.lang.String TOOL_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "sstableutil"
private static final java.lang.String TYPE_OPTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "type"
private static final java.lang.String OP_LOG_OPTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "oplog"
private static final java.lang.String VERBOSE_OPTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "verbose"
private static final java.lang.String DEBUG_OPTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "debug"
private static final java.lang.String HELP_OPTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "help"
private static final java.lang.String CLEANUP_OPTION;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "cleanup"
private static volatile int[] $SWITCH_TABLE$org$apache$cassandra$db$Directories$FileType;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/tools/StandaloneSSTableUtil;
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=4, args_size=1
start local 0 0: aload 0
invokestatic org.apache.cassandra.tools.StandaloneSSTableUtil$Options.parseArgs:([Ljava/lang/String;)Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;
astore 1
start local 1 1: invokestatic org.apache.cassandra.tools.Util.initDatabaseDescriptor:()V
2: getstatic org.apache.cassandra.config.Schema.instance:Lorg/apache/cassandra/config/Schema;
iconst_0
invokevirtual org.apache.cassandra.config.Schema.loadFromDisk:(Z)Lorg/apache/cassandra/config/Schema;
pop
3: getstatic org.apache.cassandra.config.Schema.instance:Lorg/apache/cassandra/config/Schema;
aload 1
getfield org.apache.cassandra.tools.StandaloneSSTableUtil$Options.keyspaceName:Ljava/lang/String;
aload 1
getfield org.apache.cassandra.tools.StandaloneSSTableUtil$Options.cfName:Ljava/lang/String;
invokevirtual org.apache.cassandra.config.Schema.getCFMetaData:(Ljava/lang/String;Ljava/lang/String;)Lorg/apache/cassandra/config/CFMetaData;
astore 2
start local 2 4: aload 2
ifnonnull 9
5: new java.lang.IllegalArgumentException
dup
ldc "Unknown keyspace/table %s.%s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
6: aload 1
getfield org.apache.cassandra.tools.StandaloneSSTableUtil$Options.keyspaceName:Ljava/lang/String;
aastore
dup
iconst_1
7: aload 1
getfield org.apache.cassandra.tools.StandaloneSSTableUtil$Options.cfName:Ljava/lang/String;
aastore
8: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals: org.apache.cassandra.tools.StandaloneSSTableUtil$Options org.apache.cassandra.config.CFMetaData
StackMap stack:
new org.apache.cassandra.utils.OutputHandler$SystemOutput
dup
aload 1
getfield org.apache.cassandra.tools.StandaloneSSTableUtil$Options.verbose:Z
aload 1
getfield org.apache.cassandra.tools.StandaloneSSTableUtil$Options.debug:Z
invokespecial org.apache.cassandra.utils.OutputHandler$SystemOutput.<init>:(ZZ)V
astore 3
start local 3 10: aload 1
getfield org.apache.cassandra.tools.StandaloneSSTableUtil$Options.cleanup:Z
ifeq 14
11: aload 3
ldc "Cleanuping up..."
invokeinterface org.apache.cassandra.utils.OutputHandler.output:(Ljava/lang/String;)V
12: aload 2
invokestatic org.apache.cassandra.db.lifecycle.LifecycleTransaction.removeUnfinishedLeftovers:(Lorg/apache/cassandra/config/CFMetaData;)Z
pop
13: goto 16
14: StackMap locals: org.apache.cassandra.utils.OutputHandler
StackMap stack:
aload 3
ldc "Listing files..."
invokeinterface org.apache.cassandra.utils.OutputHandler.output:(Ljava/lang/String;)V
15: aload 1
aload 2
aload 3
invokestatic org.apache.cassandra.tools.StandaloneSSTableUtil.listFiles:(Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/utils/OutputHandler;)V
16: StackMap locals:
StackMap stack:
iconst_0
invokestatic java.lang.System.exit:(I)V
end local 3 end local 2 17: goto 23
18: StackMap locals: java.lang.String[] org.apache.cassandra.tools.StandaloneSSTableUtil$Options
StackMap stack: java.lang.Exception
astore 2
start local 2 19: getstatic java.lang.System.err:Ljava/io/PrintStream;
aload 2
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
20: aload 1
getfield org.apache.cassandra.tools.StandaloneSSTableUtil$Options.debug:Z
ifeq 22
21: aload 2
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
22: StackMap locals: java.lang.Exception
StackMap stack:
iconst_1
invokestatic java.lang.System.exit:(I)V
end local 2 23: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 args [Ljava/lang/String;
1 24 1 options Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;
4 17 2 metadata Lorg/apache/cassandra/config/CFMetaData;
10 17 3 handler Lorg/apache/cassandra/utils/OutputHandler;
19 23 2 e Ljava/lang/Exception;
Exception table:
from to target type
1 17 18 Class java.lang.Exception
MethodParameters:
Name Flags
args
private static void listFiles(org.apache.cassandra.tools.StandaloneSSTableUtil$Options, org.apache.cassandra.config.CFMetaData, org.apache.cassandra.utils.OutputHandler);
descriptor: (Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/utils/OutputHandler;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: new org.apache.cassandra.db.Directories
dup
aload 1
invokestatic org.apache.cassandra.db.ColumnFamilyStore.getInitialDirectories:()[Lorg/apache/cassandra/db/Directories$DataDirectory;
invokespecial org.apache.cassandra.db.Directories.<init>:(Lorg/apache/cassandra/config/CFMetaData;[Lorg/apache/cassandra/db/Directories$DataDirectory;)V
astore 3
start local 3 1: aload 3
invokevirtual org.apache.cassandra.db.Directories.getCFDirectories:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 7
StackMap locals: org.apache.cassandra.tools.StandaloneSSTableUtil$Options org.apache.cassandra.config.CFMetaData org.apache.cassandra.utils.OutputHandler org.apache.cassandra.db.Directories top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.io.File
astore 4
start local 4 3: aload 4
invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
aload 0
invokestatic org.apache.cassandra.tools.StandaloneSSTableUtil.getFilter:(Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;)Ljava/util/function/BiFunction;
getstatic org.apache.cassandra.db.Directories$OnTxnErr.THROW:Lorg/apache/cassandra/db/Directories$OnTxnErr;
invokestatic org.apache.cassandra.db.lifecycle.LifecycleTransaction.getFiles:(Ljava/nio/file/Path;Ljava/util/function/BiFunction;Lorg/apache/cassandra/db/Directories$OnTxnErr;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 6
StackMap locals: org.apache.cassandra.tools.StandaloneSSTableUtil$Options org.apache.cassandra.config.CFMetaData org.apache.cassandra.utils.OutputHandler org.apache.cassandra.db.Directories java.io.File java.util.Iterator top java.util.Iterator
StackMap stack:
4: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.io.File
astore 6
start local 6 5: aload 2
aload 6
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
invokeinterface org.apache.cassandra.utils.OutputHandler.output:(Ljava/lang/String;)V
end local 6 6: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
end local 4 7: StackMap locals: org.apache.cassandra.tools.StandaloneSSTableUtil$Options org.apache.cassandra.config.CFMetaData org.apache.cassandra.utils.OutputHandler org.apache.cassandra.db.Directories top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 options Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;
0 9 1 metadata Lorg/apache/cassandra/config/CFMetaData;
0 9 2 handler Lorg/apache/cassandra/utils/OutputHandler;
1 9 3 directories Lorg/apache/cassandra/db/Directories;
3 7 4 dir Ljava/io/File;
5 6 6 file Ljava/io/File;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
options
metadata
handler
private static java.util.function.BiFunction<java.io.File, org.apache.cassandra.db.Directories$FileType, java.lang.Boolean> getFilter(org.apache.cassandra.tools.StandaloneSSTableUtil$Options);
descriptor: (Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;)Ljava/util/function/BiFunction;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokedynamic apply(Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;)Ljava/util/function/BiFunction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
org/apache/cassandra/tools/StandaloneSSTableUtil.lambda$0(Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;Ljava/io/File;Lorg/apache/cassandra/db/Directories$FileType;)Ljava/lang/Boolean; (6)
(Ljava/io/File;Lorg/apache/cassandra/db/Directories$FileType;)Ljava/lang/Boolean;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 options Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;
Signature: (Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;)Ljava/util/function/BiFunction<Ljava/io/File;Lorg/apache/cassandra/db/Directories$FileType;Ljava/lang/Boolean;>;
MethodParameters:
Name Flags
options
static int[] $SWITCH_TABLE$org$apache$cassandra$db$Directories$FileType();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.apache.cassandra.tools.StandaloneSSTableUtil.$SWITCH_TABLE$org$apache$cassandra$db$Directories$FileType:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.apache.cassandra.db.Directories$FileType.values:()[Lorg/apache/cassandra/db/Directories$FileType;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.apache.cassandra.db.Directories$FileType.FINAL:Lorg/apache/cassandra/db/Directories$FileType;
invokevirtual org.apache.cassandra.db.Directories$FileType.ordinal:()I
iconst_1
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.Directories$FileType.TEMPORARY:Lorg/apache/cassandra/db/Directories$FileType;
invokevirtual org.apache.cassandra.db.Directories$FileType.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.Directories$FileType.TXN_LOG:Lorg/apache/cassandra/db/Directories$FileType;
invokevirtual org.apache.cassandra.db.Directories$FileType.ordinal:()I
iconst_3
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
dup
putstatic org.apache.cassandra.tools.StandaloneSSTableUtil.$SWITCH_TABLE$org$apache$cassandra$db$Directories$FileType:[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
private static java.lang.Boolean lambda$0(org.apache.cassandra.tools.StandaloneSSTableUtil$Options, java.io.File, org.apache.cassandra.db.Directories$FileType);
descriptor: (Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options;Ljava/io/File;Lorg/apache/cassandra/db/Directories$FileType;)Ljava/lang/Boolean;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=3
start local 1 start local 2 0: invokestatic org.apache.cassandra.tools.StandaloneSSTableUtil.$SWITCH_TABLE$org$apache$cassandra$db$Directories$FileType:()[I
aload 2
invokevirtual org.apache.cassandra.db.Directories$FileType.ordinal:()I
iaload
tableswitch { // 1 - 3
1: 1
2: 3
3: 5
default: 6
}
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.tools.StandaloneSSTableUtil$Options.type:Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options$FileType;
getstatic org.apache.cassandra.tools.StandaloneSSTableUtil$Options$FileType.TMP:Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options$FileType;
if_acmpeq 2
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
StackMap locals:
StackMap stack:
2: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.tools.StandaloneSSTableUtil$Options.type:Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options$FileType;
getstatic org.apache.cassandra.tools.StandaloneSSTableUtil$Options$FileType.FINAL:Lorg/apache/cassandra/tools/StandaloneSSTableUtil$Options$FileType;
if_acmpeq 4
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
StackMap locals:
StackMap stack:
4: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
5: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.tools.StandaloneSSTableUtil$Options.oplogs:Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
6: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 2 end local 1 LocalVariableTable:
Start End Slot Name Signature
0 7 1 file Ljava/io/File;
0 7 2 type Lorg/apache/cassandra/db/Directories$FileType;
}
SourceFile: "StandaloneSSTableUtil.java"
NestMembers:
org.apache.cassandra.tools.StandaloneSSTableUtil$Options org.apache.cassandra.tools.StandaloneSSTableUtil$Options$FileType
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public DataDirectory = org.apache.cassandra.db.Directories$DataDirectory of org.apache.cassandra.db.Directories
public final FileType = org.apache.cassandra.db.Directories$FileType of org.apache.cassandra.db.Directories
public final OnTxnErr = org.apache.cassandra.db.Directories$OnTxnErr of org.apache.cassandra.db.Directories
private Options = org.apache.cassandra.tools.StandaloneSSTableUtil$Options of org.apache.cassandra.tools.StandaloneSSTableUtil
public final FileType = org.apache.cassandra.tools.StandaloneSSTableUtil$Options$FileType of org.apache.cassandra.tools.StandaloneSSTableUtil$Options
public SystemOutput = org.apache.cassandra.utils.OutputHandler$SystemOutput of org.apache.cassandra.utils.OutputHandler