class org.apache.cassandra.tools.StandaloneScrubber$Options
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.apache.cassandra.tools.StandaloneScrubber$Options
super_class: java.lang.Object
{
public final java.lang.String keyspaceName;
descriptor: Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final java.lang.String cfName;
descriptor: Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public boolean debug;
descriptor: Z
flags: (0x0001) ACC_PUBLIC
public boolean verbose;
descriptor: Z
flags: (0x0001) ACC_PUBLIC
public boolean manifestCheckOnly;
descriptor: Z
flags: (0x0001) ACC_PUBLIC
public boolean skipCorrupted;
descriptor: Z
flags: (0x0001) ACC_PUBLIC
public boolean noValidate;
descriptor: Z
flags: (0x0001) ACC_PUBLIC
public boolean reinserOverflowedTTL;
descriptor: Z
flags: (0x0001) ACC_PUBLIC
private void <init>(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.apache.cassandra.tools.StandaloneScrubber$Options.keyspaceName:Ljava/lang/String;
2: aload 0
aload 2
putfield org.apache.cassandra.tools.StandaloneScrubber$Options.cfName:Ljava/lang/String;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/cassandra/tools/StandaloneScrubber$Options;
0 4 1 keyspaceName Ljava/lang/String;
0 4 2 cfName Ljava/lang/String;
MethodParameters:
Name Flags
keyspaceName
cfName
public static org.apache.cassandra.tools.StandaloneScrubber$Options parseArgs(java.lang.String[]);
descriptor: ([Ljava/lang/String;)Lorg/apache/cassandra/tools/StandaloneScrubber$Options;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=1
start local 0 0: new org.apache.commons.cli.GnuParser
dup
invokespecial org.apache.commons.cli.GnuParser.<init>:()V
astore 1
start local 1 1: invokestatic org.apache.cassandra.tools.StandaloneScrubber$Options.getCmdLineOptions:()Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;
astore 2
start local 2 2: aload 1
aload 2
aload 0
iconst_0
invokeinterface org.apache.commons.cli.CommandLineParser.parse:(Lorg/apache/commons/cli/Options;[Ljava/lang/String;Z)Lorg/apache/commons/cli/CommandLine;
astore 3
start local 3 3: aload 3
ldc "help"
invokevirtual org.apache.commons.cli.CommandLine.hasOption:(Ljava/lang/String;)Z
ifeq 6
4: aload 2
invokestatic org.apache.cassandra.tools.StandaloneScrubber$Options.printUsage:(Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;)V
5: iconst_0
invokestatic java.lang.System.exit:(I)V
6: StackMap locals: org.apache.commons.cli.CommandLineParser org.apache.cassandra.tools.BulkLoader$CmdLineOptions org.apache.commons.cli.CommandLine
StackMap stack:
aload 3
invokevirtual org.apache.commons.cli.CommandLine.getArgs:()[Ljava/lang/String;
astore 4
start local 4 7: aload 4
arraylength
iconst_2
if_icmpeq 14
8: aload 4
arraylength
iconst_2
if_icmpge 9
ldc "Missing arguments"
goto 10
StackMap locals: java.lang.String[]
StackMap stack:
9: ldc "Too many arguments"
StackMap locals:
StackMap stack: java.lang.String
10: astore 5
start local 5 11: getstatic java.lang.System.err:Ljava/io/PrintStream;
aload 5
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
12: aload 2
invokestatic org.apache.cassandra.tools.StandaloneScrubber$Options.printUsage:(Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;)V
13: iconst_1
invokestatic java.lang.System.exit:(I)V
end local 5 14: StackMap locals:
StackMap stack:
aload 4
iconst_0
aaload
astore 5
start local 5 15: aload 4
iconst_1
aaload
astore 6
start local 6 16: new org.apache.cassandra.tools.StandaloneScrubber$Options
dup
aload 5
aload 6
invokespecial org.apache.cassandra.tools.StandaloneScrubber$Options.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 7
start local 7 17: aload 7
aload 3
ldc "debug"
invokevirtual org.apache.commons.cli.CommandLine.hasOption:(Ljava/lang/String;)Z
putfield org.apache.cassandra.tools.StandaloneScrubber$Options.debug:Z
18: aload 7
aload 3
ldc "verbose"
invokevirtual org.apache.commons.cli.CommandLine.hasOption:(Ljava/lang/String;)Z
putfield org.apache.cassandra.tools.StandaloneScrubber$Options.verbose:Z
19: aload 7
aload 3
ldc "manifest-check"
invokevirtual org.apache.commons.cli.CommandLine.hasOption:(Ljava/lang/String;)Z
putfield org.apache.cassandra.tools.StandaloneScrubber$Options.manifestCheckOnly:Z
20: aload 7
aload 3
ldc "skip-corrupted"
invokevirtual org.apache.commons.cli.CommandLine.hasOption:(Ljava/lang/String;)Z
putfield org.apache.cassandra.tools.StandaloneScrubber$Options.skipCorrupted:Z
21: aload 7
aload 3
ldc "no-validate"
invokevirtual org.apache.commons.cli.CommandLine.hasOption:(Ljava/lang/String;)Z
putfield org.apache.cassandra.tools.StandaloneScrubber$Options.noValidate:Z
22: aload 7
aload 3
ldc "reinsert-overflowed-ttl"
invokevirtual org.apache.commons.cli.CommandLine.hasOption:(Ljava/lang/String;)Z
putfield org.apache.cassandra.tools.StandaloneScrubber$Options.reinserOverflowedTTL:Z
23: aload 7
24: areturn
end local 7 end local 6 end local 5 end local 4 end local 3 25: StackMap locals: java.lang.String[] org.apache.commons.cli.CommandLineParser org.apache.cassandra.tools.BulkLoader$CmdLineOptions
StackMap stack: org.apache.commons.cli.ParseException
astore 3
start local 3 26: aload 3
invokevirtual org.apache.commons.cli.ParseException.getMessage:()Ljava/lang/String;
aload 2
invokestatic org.apache.cassandra.tools.StandaloneScrubber$Options.errorMsg:(Ljava/lang/String;Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;)V
27: aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 cmdArgs [Ljava/lang/String;
1 28 1 parser Lorg/apache/commons/cli/CommandLineParser;
2 28 2 options Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;
3 25 3 cmd Lorg/apache/commons/cli/CommandLine;
7 25 4 args [Ljava/lang/String;
11 14 5 msg Ljava/lang/String;
15 25 5 keyspaceName Ljava/lang/String;
16 25 6 cfName Ljava/lang/String;
17 25 7 opts Lorg/apache/cassandra/tools/StandaloneScrubber$Options;
26 28 3 e Lorg/apache/commons/cli/ParseException;
Exception table:
from to target type
2 24 25 Class org.apache.commons.cli.ParseException
MethodParameters:
Name Flags
cmdArgs
private static void errorMsg(java.lang.String, org.apache.cassandra.tools.BulkLoader$CmdLineOptions);
descriptor: (Ljava/lang/String;Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic java.lang.System.err:Ljava/io/PrintStream;
aload 0
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
1: aload 1
invokestatic org.apache.cassandra.tools.StandaloneScrubber$Options.printUsage:(Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;)V
2: iconst_1
invokestatic java.lang.System.exit:(I)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 msg Ljava/lang/String;
0 4 1 options Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;
MethodParameters:
Name Flags
msg
options
private static org.apache.cassandra.tools.BulkLoader$CmdLineOptions getCmdLineOptions();
descriptor: ()Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=1, args_size=0
0: new org.apache.cassandra.tools.BulkLoader$CmdLineOptions
dup
invokespecial org.apache.cassandra.tools.BulkLoader$CmdLineOptions.<init>:()V
astore 0
start local 0 1: aload 0
aconst_null
ldc "debug"
ldc "display stack traces"
invokevirtual org.apache.cassandra.tools.BulkLoader$CmdLineOptions.addOption:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/commons/cli/Options;
pop
2: aload 0
ldc "v"
ldc "verbose"
ldc "verbose output"
invokevirtual org.apache.cassandra.tools.BulkLoader$CmdLineOptions.addOption:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/commons/cli/Options;
pop
3: aload 0
ldc "h"
ldc "help"
ldc "display this help message"
invokevirtual org.apache.cassandra.tools.BulkLoader$CmdLineOptions.addOption:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/commons/cli/Options;
pop
4: aload 0
ldc "m"
ldc "manifest-check"
ldc "only check and repair the leveled manifest, without actually scrubbing the sstables"
invokevirtual org.apache.cassandra.tools.BulkLoader$CmdLineOptions.addOption:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/commons/cli/Options;
pop
5: aload 0
ldc "s"
ldc "skip-corrupted"
ldc "skip corrupt rows in counter tables"
invokevirtual org.apache.cassandra.tools.BulkLoader$CmdLineOptions.addOption:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/commons/cli/Options;
pop
6: aload 0
ldc "n"
ldc "no-validate"
ldc "do not validate columns using column validator"
invokevirtual org.apache.cassandra.tools.BulkLoader$CmdLineOptions.addOption:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/commons/cli/Options;
pop
7: aload 0
ldc "r"
ldc "reinsert-overflowed-ttl"
ldc "Rewrites rows with overflowed expiration date affected by CASSANDRA-14092 with the maximum supported expiration date of 2038-01-19T03:14:06+00:00. The rows are rewritten with the original timestamp incremented by one millisecond to override/supersede any potential tombstone that may have been generated during compaction of the affected rows."
invokevirtual org.apache.cassandra.tools.BulkLoader$CmdLineOptions.addOption:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lorg/apache/commons/cli/Options;
pop
8: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 9 0 options Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;
public static void printUsage(org.apache.cassandra.tools.BulkLoader$CmdLineOptions);
descriptor: (Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: ldc "%s [options] <keyspace> <column_family>"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "sstablescrub"
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 1
start local 1 1: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 2: aload 2
ldc "--\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
3: aload 2
ldc "Scrub the sstable for the provided table."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
4: aload 2
ldc "\n--\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: aload 2
ldc "Options are:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: new org.apache.commons.cli.HelpFormatter
dup
invokespecial org.apache.commons.cli.HelpFormatter.<init>:()V
aload 1
aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 0
ldc ""
invokevirtual org.apache.commons.cli.HelpFormatter.printHelp:(Ljava/lang/String;Ljava/lang/String;Lorg/apache/commons/cli/Options;Ljava/lang/String;)V
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 options Lorg/apache/cassandra/tools/BulkLoader$CmdLineOptions;
1 8 1 usage Ljava/lang/String;
2 8 2 header Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
options
}
SourceFile: "StandaloneScrubber.java"
NestHost: org.apache.cassandra.tools.StandaloneScrubber
InnerClasses:
public CmdLineOptions = org.apache.cassandra.tools.BulkLoader$CmdLineOptions of org.apache.cassandra.tools.BulkLoader
private Options = org.apache.cassandra.tools.StandaloneScrubber$Options of org.apache.cassandra.tools.StandaloneScrubber