public class org.apache.cassandra.service.ActiveRepairService implements org.apache.cassandra.gms.IEndpointStateChangeSubscriber, org.apache.cassandra.gms.IFailureDetectionEventListener
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.cassandra.service.ActiveRepairService
super_class: java.lang.Object
{
private boolean registeredForEndpointChanges;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public static org.apache.cassandra.utils.CassandraVersion SUPPORTS_GLOBAL_PREPARE_FLAG_VERSION;
descriptor: Lorg/apache/cassandra/utils/CassandraVersion;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
private static final org.slf4j.Logger logger;
descriptor: Lorg/slf4j/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final org.apache.cassandra.service.ActiveRepairService instance;
descriptor: Lorg/apache/cassandra/service/ActiveRepairService;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final long UNREPAIRED_SSTABLE;
descriptor: J
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private final java.util.concurrent.ConcurrentMap<java.util.UUID, org.apache.cassandra.repair.RepairSession> sessions;
descriptor: Ljava/util/concurrent/ConcurrentMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/util/UUID;Lorg/apache/cassandra/repair/RepairSession;>;
private final java.util.concurrent.ConcurrentMap<java.util.UUID, org.apache.cassandra.service.ActiveRepairService$ParentRepairSession> parentRepairSessions;
descriptor: Ljava/util/concurrent/ConcurrentMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/util/UUID;Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;>;
private final org.apache.cassandra.gms.IFailureDetector failureDetector;
descriptor: Lorg/apache/cassandra/gms/IFailureDetector;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.apache.cassandra.gms.Gossiper gossiper;
descriptor: Lorg/apache/cassandra/gms/Gossiper;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$org$apache$cassandra$repair$messages$RepairMessage$Type;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: ldc Lorg/apache/cassandra/service/ActiveRepairService;
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.service.ActiveRepairService.$assertionsDisabled:Z
3: new org.apache.cassandra.utils.CassandraVersion
dup
ldc "2.2.1"
invokespecial org.apache.cassandra.utils.CassandraVersion.<init>:(Ljava/lang/String;)V
putstatic org.apache.cassandra.service.ActiveRepairService.SUPPORTS_GLOBAL_PREPARE_FLAG_VERSION:Lorg/apache/cassandra/utils/CassandraVersion;
4: ldc Lorg/apache/cassandra/service/ActiveRepairService;
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic org.apache.cassandra.service.ActiveRepairService.logger:Lorg/slf4j/Logger;
5: new org.apache.cassandra.service.ActiveRepairService
dup
getstatic org.apache.cassandra.gms.FailureDetector.instance:Lorg/apache/cassandra/gms/IFailureDetector;
getstatic org.apache.cassandra.gms.Gossiper.instance:Lorg/apache/cassandra/gms/Gossiper;
invokespecial org.apache.cassandra.service.ActiveRepairService.<init>:(Lorg/apache/cassandra/gms/IFailureDetector;Lorg/apache/cassandra/gms/Gossiper;)V
putstatic org.apache.cassandra.service.ActiveRepairService.instance:Lorg/apache/cassandra/service/ActiveRepairService;
6: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.apache.cassandra.gms.IFailureDetector, org.apache.cassandra.gms.Gossiper);
descriptor: (Lorg/apache/cassandra/gms/IFailureDetector;Lorg/apache/cassandra/gms/Gossiper;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, 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
iconst_0
putfield org.apache.cassandra.service.ActiveRepairService.registeredForEndpointChanges:Z
2: aload 0
new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putfield org.apache.cassandra.service.ActiveRepairService.sessions:Ljava/util/concurrent/ConcurrentMap;
3: aload 0
new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putfield org.apache.cassandra.service.ActiveRepairService.parentRepairSessions:Ljava/util/concurrent/ConcurrentMap;
4: aload 0
aload 1
putfield org.apache.cassandra.service.ActiveRepairService.failureDetector:Lorg/apache/cassandra/gms/IFailureDetector;
5: aload 0
aload 2
putfield org.apache.cassandra.service.ActiveRepairService.gossiper:Lorg/apache/cassandra/gms/Gossiper;
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 7 1 failureDetector Lorg/apache/cassandra/gms/IFailureDetector;
0 7 2 gossiper Lorg/apache/cassandra/gms/Gossiper;
MethodParameters:
Name Flags
failureDetector
gossiper
public org.apache.cassandra.repair.RepairSession submitRepairSession(java.util.UUID, java.util.Collection<org.apache.cassandra.dht.Range<org.apache.cassandra.dht.Token>>, java.lang.String, org.apache.cassandra.repair.RepairParallelism, java.util.Set<java.net.InetAddress>, long, boolean, com.google.common.util.concurrent.ListeningExecutorService, java.lang.String[]);
descriptor: (Ljava/util/UUID;Ljava/util/Collection;Ljava/lang/String;Lorg/apache/cassandra/repair/RepairParallelism;Ljava/util/Set;JZLcom/google/common/util/concurrent/ListeningExecutorService;[Ljava/lang/String;)Lorg/apache/cassandra/repair/RepairSession;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=12, locals=12, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 8 start local 9 start local 10 0: aload 5
invokeinterface java.util.Set.isEmpty:()Z
ifeq 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 10
arraylength
ifne 4
3: aconst_null
areturn
4: StackMap locals:
StackMap stack:
new org.apache.cassandra.repair.RepairSession
dup
aload 1
invokestatic org.apache.cassandra.utils.UUIDGen.getTimeUUID:()Ljava/util/UUID;
aload 2
aload 3
aload 4
aload 5
lload 6
iload 8
aload 10
invokespecial org.apache.cassandra.repair.RepairSession.<init>:(Ljava/util/UUID;Ljava/util/UUID;Ljava/util/Collection;Ljava/lang/String;Lorg/apache/cassandra/repair/RepairParallelism;Ljava/util/Set;JZ[Ljava/lang/String;)V
astore 11
start local 11 5: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.sessions:Ljava/util/concurrent/ConcurrentMap;
aload 11
invokevirtual org.apache.cassandra.repair.RepairSession.getId:()Ljava/util/UUID;
aload 11
invokeinterface java.util.concurrent.ConcurrentMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: aload 0
aload 11
invokevirtual org.apache.cassandra.service.ActiveRepairService.registerOnFdAndGossip:(Lcom/google/common/util/concurrent/AbstractFuture;)V
7: aload 11
new org.apache.cassandra.service.ActiveRepairService$1
dup
aload 0
aload 11
invokespecial org.apache.cassandra.service.ActiveRepairService$1.<init>:(Lorg/apache/cassandra/service/ActiveRepairService;Lorg/apache/cassandra/repair/RepairSession;)V
8: invokestatic com.google.common.util.concurrent.MoreExecutors.directExecutor:()Ljava/util/concurrent/Executor;
9: invokevirtual org.apache.cassandra.repair.RepairSession.addListener:(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V
10: aload 11
aload 9
invokevirtual org.apache.cassandra.repair.RepairSession.start:(Lcom/google/common/util/concurrent/ListeningExecutorService;)V
11: aload 11
areturn
end local 11 end local 10 end local 9 end local 8 end local 6 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 12 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 12 1 parentRepairSession Ljava/util/UUID;
0 12 2 range Ljava/util/Collection<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;
0 12 3 keyspace Ljava/lang/String;
0 12 4 parallelismDegree Lorg/apache/cassandra/repair/RepairParallelism;
0 12 5 endpoints Ljava/util/Set<Ljava/net/InetAddress;>;
0 12 6 repairedAt J
0 12 8 pullRepair Z
0 12 9 executor Lcom/google/common/util/concurrent/ListeningExecutorService;
0 12 10 cfnames [Ljava/lang/String;
5 12 11 session Lorg/apache/cassandra/repair/RepairSession;
Signature: (Ljava/util/UUID;Ljava/util/Collection<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;Ljava/lang/String;Lorg/apache/cassandra/repair/RepairParallelism;Ljava/util/Set<Ljava/net/InetAddress;>;JZLcom/google/common/util/concurrent/ListeningExecutorService;[Ljava/lang/String;)Lorg/apache/cassandra/repair/RepairSession;
MethodParameters:
Name Flags
parentRepairSession
range
keyspace
parallelismDegree
endpoints
repairedAt
pullRepair
executor
cfnames
private <T extends com.google.common.util.concurrent.AbstractFuture extends org.apache.cassandra.gms.IEndpointStateChangeSubscriber, org.apache.cassandra.gms.IFailureDetectionEventListener> void registerOnFdAndGossip();
descriptor: (Lcom/google/common/util/concurrent/AbstractFuture;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.gossiper:Lorg/apache/cassandra/gms/Gossiper;
aload 1
checkcast org.apache.cassandra.gms.IEndpointStateChangeSubscriber
invokevirtual org.apache.cassandra.gms.Gossiper.register:(Lorg/apache/cassandra/gms/IEndpointStateChangeSubscriber;)V
1: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.failureDetector:Lorg/apache/cassandra/gms/IFailureDetector;
aload 1
checkcast org.apache.cassandra.gms.IFailureDetectionEventListener
invokeinterface org.apache.cassandra.gms.IFailureDetector.registerFailureDetectionEventListener:(Lorg/apache/cassandra/gms/IFailureDetectionEventListener;)V
2: aload 1
new org.apache.cassandra.service.ActiveRepairService$2
dup
aload 0
aload 1
invokespecial org.apache.cassandra.service.ActiveRepairService$2.<init>:(Lorg/apache/cassandra/service/ActiveRepairService;Lcom/google/common/util/concurrent/AbstractFuture;)V
3: invokestatic com.google.common.util.concurrent.MoreExecutors.sameThreadExecutor:()Lcom/google/common/util/concurrent/ListeningExecutorService;
4: invokevirtual com.google.common.util.concurrent.AbstractFuture.addListener:(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 6 1 task TT;
Signature: <T:Lcom/google/common/util/concurrent/AbstractFuture;:Lorg/apache/cassandra/gms/IEndpointStateChangeSubscriber;:Lorg/apache/cassandra/gms/IFailureDetectionEventListener;>(TT;)V
MethodParameters:
Name Flags
task final
public synchronized void terminateSessions();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=4, args_size=1
start local 0 0: new java.io.IOException
dup
ldc "Terminate session is called"
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
astore 1
start local 1 1: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.sessions:Ljava/util/concurrent/ConcurrentMap;
invokeinterface java.util.concurrent.ConcurrentMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: org.apache.cassandra.service.ActiveRepairService java.lang.Throwable top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.repair.RepairSession
astore 2
start local 2 3: aload 2
aload 1
invokevirtual org.apache.cassandra.repair.RepairSession.forceShutdown:(Ljava/lang/Throwable;)V
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.parentRepairSessions:Ljava/util/concurrent/ConcurrentMap;
invokeinterface java.util.concurrent.ConcurrentMap.clear:()V
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/cassandra/service/ActiveRepairService;
1 7 1 cause Ljava/lang/Throwable;
3 4 2 session Lorg/apache/cassandra/repair/RepairSession;
public static java.util.Set<java.net.InetAddress> getNeighbors(java.lang.String, java.util.Collection<org.apache.cassandra.dht.Range<org.apache.cassandra.dht.Token>>, org.apache.cassandra.dht.Range<org.apache.cassandra.dht.Token>, java.util.Collection<java.lang.String>, java.util.Collection<java.lang.String>);
descriptor: (Ljava/lang/String;Ljava/util/Collection;Lorg/apache/cassandra/dht/Range;Ljava/util/Collection;Ljava/util/Collection;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=15, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic org.apache.cassandra.service.StorageService.instance:Lorg/apache/cassandra/service/StorageService;
astore 5
start local 5 1: aload 5
aload 0
invokevirtual org.apache.cassandra.service.StorageService.getRangeToAddressMap:(Ljava/lang/String;)Ljava/util/Map;
astore 6
start local 6 2: aconst_null
astore 7
start local 7 3: aload 1
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 9
goto 13
StackMap locals: java.lang.String java.util.Collection org.apache.cassandra.dht.Range java.util.Collection java.util.Collection org.apache.cassandra.service.StorageService java.util.Map org.apache.cassandra.dht.Range top java.util.Iterator
StackMap stack:
4: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.dht.Range
astore 8
start local 8 5: aload 8
aload 2
invokevirtual org.apache.cassandra.dht.Range.contains:(Lorg/apache/cassandra/dht/Range;)Z
ifeq 8
6: aload 8
astore 7
7: goto 14
8: StackMap locals: java.lang.String java.util.Collection org.apache.cassandra.dht.Range java.util.Collection java.util.Collection org.apache.cassandra.service.StorageService java.util.Map org.apache.cassandra.dht.Range org.apache.cassandra.dht.Range java.util.Iterator
StackMap stack:
aload 8
aload 2
invokevirtual org.apache.cassandra.dht.Range.intersects:(Lorg/apache/cassandra/dht/Range;)Z
ifeq 13
9: new java.lang.IllegalArgumentException
dup
ldc "Requested range %s intersects a local range (%s) but is not fully contained in one; this would lead to imprecise repair. keyspace: %s"
iconst_3
anewarray java.lang.Object
dup
iconst_0
10: aload 2
invokevirtual org.apache.cassandra.dht.Range.toString:()Ljava/lang/String;
aastore
dup
iconst_1
11: aload 8
invokevirtual org.apache.cassandra.dht.Range.toString:()Ljava/lang/String;
aastore
dup
iconst_2
aload 0
aastore
12: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 8 13: StackMap locals: java.lang.String java.util.Collection org.apache.cassandra.dht.Range java.util.Collection java.util.Collection org.apache.cassandra.service.StorageService java.util.Map org.apache.cassandra.dht.Range top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
14: StackMap locals: java.lang.String java.util.Collection org.apache.cassandra.dht.Range java.util.Collection java.util.Collection org.apache.cassandra.service.StorageService java.util.Map org.apache.cassandra.dht.Range
StackMap stack:
aload 7
ifnull 15
aload 6
aload 7
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 16
15: StackMap locals:
StackMap stack:
invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
16: StackMap locals:
StackMap stack:
new java.util.HashSet
dup
aload 6
aload 7
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Collection
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 8
start local 8 17: aload 8
invokestatic org.apache.cassandra.utils.FBUtilities.getBroadcastAddress:()Ljava/net/InetAddress;
invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
pop
18: aload 3
ifnull 29
aload 3
invokeinterface java.util.Collection.isEmpty:()Z
ifne 29
19: aload 5
invokevirtual org.apache.cassandra.service.StorageService.getTokenMetadata:()Lorg/apache/cassandra/locator/TokenMetadata;
invokevirtual org.apache.cassandra.locator.TokenMetadata.cloneOnlyTokenMap:()Lorg/apache/cassandra/locator/TokenMetadata;
invokevirtual org.apache.cassandra.locator.TokenMetadata.getTopology:()Lorg/apache/cassandra/locator/TokenMetadata$Topology;
astore 9
start local 9 20: invokestatic com.google.common.collect.Sets.newHashSet:()Ljava/util/HashSet;
astore 10
start local 10 21: aload 9
invokevirtual org.apache.cassandra.locator.TokenMetadata$Topology.getDatacenterEndpoints:()Lcom/google/common/collect/Multimap;
astore 11
start local 11 22: aload 3
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 13
goto 27
StackMap locals: java.lang.String java.util.Collection org.apache.cassandra.dht.Range java.util.Collection java.util.Collection org.apache.cassandra.service.StorageService java.util.Map org.apache.cassandra.dht.Range java.util.Set org.apache.cassandra.locator.TokenMetadata$Topology java.util.Set com.google.common.collect.Multimap top java.util.Iterator
StackMap stack:
23: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 12
start local 12 24: aload 11
aload 12
invokeinterface com.google.common.collect.Multimap.get:(Ljava/lang/Object;)Ljava/util/Collection;
astore 14
start local 14 25: aload 14
ifnull 27
26: aload 10
aload 14
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
end local 14 end local 12 27: StackMap locals:
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 23
28: aload 8
aload 10
invokestatic com.google.common.collect.Sets.intersection:(Ljava/util/Set;Ljava/util/Set;)Lcom/google/common/collect/Sets$SetView;
areturn
end local 11 end local 10 end local 9 29: StackMap locals: java.lang.String java.util.Collection org.apache.cassandra.dht.Range java.util.Collection java.util.Collection org.apache.cassandra.service.StorageService java.util.Map org.apache.cassandra.dht.Range java.util.Set
StackMap stack:
aload 4
ifnull 47
aload 4
invokeinterface java.util.Collection.isEmpty:()Z
ifne 47
30: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 9
start local 9 31: aload 4
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 11
goto 39
StackMap locals: java.lang.String java.util.Collection org.apache.cassandra.dht.Range java.util.Collection java.util.Collection org.apache.cassandra.service.StorageService java.util.Map org.apache.cassandra.dht.Range java.util.Set java.util.Set top java.util.Iterator
StackMap stack:
32: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 10
start local 10 33: aload 10
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokestatic java.net.InetAddress.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
astore 12
start local 12 34: aload 12
invokestatic org.apache.cassandra.utils.FBUtilities.getBroadcastAddress:()Ljava/net/InetAddress;
invokevirtual java.net.InetAddress.equals:(Ljava/lang/Object;)Z
ifne 35
aload 8
aload 12
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 39
35: StackMap locals: java.lang.String java.util.Collection org.apache.cassandra.dht.Range java.util.Collection java.util.Collection org.apache.cassandra.service.StorageService java.util.Map org.apache.cassandra.dht.Range java.util.Set java.util.Set java.lang.String java.util.Iterator java.net.InetAddress
StackMap stack:
aload 9
aload 12
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 12 36: goto 39
37: StackMap locals: java.lang.String java.util.Collection org.apache.cassandra.dht.Range java.util.Collection java.util.Collection org.apache.cassandra.service.StorageService java.util.Map org.apache.cassandra.dht.Range java.util.Set java.util.Set java.lang.String java.util.Iterator
StackMap stack: java.net.UnknownHostException
astore 12
start local 12 38: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Unknown host specified "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 12
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 12 end local 10 39: StackMap locals: java.lang.String java.util.Collection org.apache.cassandra.dht.Range java.util.Collection java.util.Collection org.apache.cassandra.service.StorageService java.util.Map org.apache.cassandra.dht.Range java.util.Set java.util.Set top java.util.Iterator
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 32
40: aload 9
invokestatic org.apache.cassandra.utils.FBUtilities.getBroadcastAddress:()Ljava/net/InetAddress;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 42
41: new java.lang.IllegalArgumentException
dup
ldc "The current host must be part of the repair"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
42: StackMap locals: java.lang.String java.util.Collection org.apache.cassandra.dht.Range java.util.Collection java.util.Collection org.apache.cassandra.service.StorageService java.util.Map org.apache.cassandra.dht.Range java.util.Set java.util.Set
StackMap stack:
aload 9
invokeinterface java.util.Set.size:()I
iconst_1
if_icmpgt 45
43: ldc "Specified hosts %s do not share range %s needed for repair. Either restrict repair ranges with -st/-et options, or specify one of the neighbors that share this range with this node: %s."
astore 10
start local 10 44: new java.lang.IllegalArgumentException
dup
aload 10
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
dup
iconst_1
aload 2
aastore
dup
iconst_2
aload 8
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 10 45: StackMap locals:
StackMap stack:
aload 9
invokestatic org.apache.cassandra.utils.FBUtilities.getBroadcastAddress:()Ljava/net/InetAddress;
invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
pop
46: aload 9
areturn
end local 9 47: StackMap locals:
StackMap stack:
aload 8
areturn
end local 8 end local 7 end local 6 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 48 0 keyspaceName Ljava/lang/String;
0 48 1 keyspaceLocalRanges Ljava/util/Collection<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;
0 48 2 toRepair Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;
0 48 3 dataCenters Ljava/util/Collection<Ljava/lang/String;>;
0 48 4 hosts Ljava/util/Collection<Ljava/lang/String;>;
1 48 5 ss Lorg/apache/cassandra/service/StorageService;
2 48 6 replicaSets Ljava/util/Map<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;Ljava/util/List<Ljava/net/InetAddress;>;>;
3 48 7 rangeSuperSet Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;
5 13 8 range Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;
17 48 8 neighbors Ljava/util/Set<Ljava/net/InetAddress;>;
20 29 9 topology Lorg/apache/cassandra/locator/TokenMetadata$Topology;
21 29 10 dcEndpoints Ljava/util/Set<Ljava/net/InetAddress;>;
22 29 11 dcEndpointsMap Lcom/google/common/collect/Multimap<Ljava/lang/String;Ljava/net/InetAddress;>;
24 27 12 dc Ljava/lang/String;
25 27 14 c Ljava/util/Collection<Ljava/net/InetAddress;>;
31 47 9 specifiedHost Ljava/util/Set<Ljava/net/InetAddress;>;
33 39 10 host Ljava/lang/String;
34 36 12 endpoint Ljava/net/InetAddress;
38 39 12 e Ljava/net/UnknownHostException;
44 45 10 msg Ljava/lang/String;
Exception table:
from to target type
33 36 37 Class java.net.UnknownHostException
Signature: (Ljava/lang/String;Ljava/util/Collection<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;Ljava/util/Collection<Ljava/lang/String;>;Ljava/util/Collection<Ljava/lang/String;>;)Ljava/util/Set<Ljava/net/InetAddress;>;
MethodParameters:
Name Flags
keyspaceName
keyspaceLocalRanges
toRepair
dataCenters
hosts
public java.util.UUID prepareForRepair(java.util.UUID, java.net.InetAddress, java.util.Set<java.net.InetAddress>, org.apache.cassandra.repair.messages.RepairOption, java.util.List<org.apache.cassandra.db.ColumnFamilyStore>);
descriptor: (Ljava/util/UUID;Ljava/net/InetAddress;Ljava/util/Set;Lorg/apache/cassandra/repair/messages/RepairOption;Ljava/util/List;)Ljava/util/UUID;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=17, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: getstatic org.apache.cassandra.utils.Clock.instance:Lorg/apache/cassandra/utils/Clock;
invokevirtual org.apache.cassandra.utils.Clock.currentTimeMillis:()J
lstore 6
start local 6 1: aload 0
aload 1
aload 2
aload 5
aload 4
invokevirtual org.apache.cassandra.repair.messages.RepairOption.getRanges:()Ljava/util/Collection;
aload 4
invokevirtual org.apache.cassandra.repair.messages.RepairOption.isIncremental:()Z
lload 6
aload 4
invokevirtual org.apache.cassandra.repair.messages.RepairOption.isGlobal:()Z
invokevirtual org.apache.cassandra.service.ActiveRepairService.registerParentRepairSession:(Ljava/util/UUID;Ljava/net/InetAddress;Ljava/util/List;Ljava/util/Collection;ZJZ)V
2: new java.util.concurrent.CountDownLatch
dup
aload 3
invokeinterface java.util.Set.size:()I
invokespecial java.util.concurrent.CountDownLatch.<init>:(I)V
astore 8
start local 8 3: new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_1
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
astore 9
start local 9 4: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
invokestatic java.util.Collections.synchronizedSet:(Ljava/util/Set;)Ljava/util/Set;
astore 10
start local 10 5: new org.apache.cassandra.service.ActiveRepairService$3
dup
aload 0
aload 8
aload 9
aload 10
invokespecial org.apache.cassandra.service.ActiveRepairService$3.<init>:(Lorg/apache/cassandra/service/ActiveRepairService;Ljava/util/concurrent/CountDownLatch;Ljava/util/concurrent/atomic/AtomicBoolean;Ljava/util/Set;)V
astore 11
start local 11 6: new java.util.ArrayList
dup
aload 5
invokeinterface java.util.List.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 12
start local 12 7: aload 5
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 14
goto 10
StackMap locals: org.apache.cassandra.service.ActiveRepairService java.util.UUID java.net.InetAddress java.util.Set org.apache.cassandra.repair.messages.RepairOption java.util.List long java.util.concurrent.CountDownLatch java.util.concurrent.atomic.AtomicBoolean java.util.Set org.apache.cassandra.net.IAsyncCallbackWithFailure java.util.List top java.util.Iterator
StackMap stack:
8: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.ColumnFamilyStore
astore 13
start local 13 9: aload 12
aload 13
getfield org.apache.cassandra.db.ColumnFamilyStore.metadata:Lorg/apache/cassandra/config/CFMetaData;
getfield org.apache.cassandra.config.CFMetaData.cfId:Ljava/util/UUID;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 13 10: StackMap locals:
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
11: aload 3
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 14
goto 19
StackMap locals:
StackMap stack:
12: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.net.InetAddress
astore 13
start local 13 13: getstatic org.apache.cassandra.gms.FailureDetector.instance:Lorg/apache/cassandra/gms/IFailureDetector;
aload 13
invokeinterface org.apache.cassandra.gms.IFailureDetector.isAlive:(Ljava/net/InetAddress;)Z
ifeq 18
14: new org.apache.cassandra.repair.messages.PrepareMessage
dup
aload 1
aload 12
aload 4
invokevirtual org.apache.cassandra.repair.messages.RepairOption.getRanges:()Ljava/util/Collection;
aload 4
invokevirtual org.apache.cassandra.repair.messages.RepairOption.isIncremental:()Z
lload 6
aload 4
invokevirtual org.apache.cassandra.repair.messages.RepairOption.isGlobal:()Z
invokespecial org.apache.cassandra.repair.messages.PrepareMessage.<init>:(Ljava/util/UUID;Ljava/util/List;Ljava/util/Collection;ZJZ)V
astore 15
start local 15 15: aload 15
invokevirtual org.apache.cassandra.repair.messages.PrepareMessage.createMessage:()Lorg/apache/cassandra/net/MessageOut;
astore 16
start local 16 16: invokestatic org.apache.cassandra.net.MessagingService.instance:()Lorg/apache/cassandra/net/MessagingService;
aload 16
aload 13
aload 11
getstatic java.util.concurrent.TimeUnit.HOURS:Ljava/util/concurrent/TimeUnit;
lconst_1
invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
iconst_1
invokevirtual org.apache.cassandra.net.MessagingService.sendRR:(Lorg/apache/cassandra/net/MessageOut;Ljava/net/InetAddress;Lorg/apache/cassandra/net/IAsyncCallback;JZ)I
pop
end local 16 end local 15 17: goto 19
18: StackMap locals: org.apache.cassandra.service.ActiveRepairService java.util.UUID java.net.InetAddress java.util.Set org.apache.cassandra.repair.messages.RepairOption java.util.List long java.util.concurrent.CountDownLatch java.util.concurrent.atomic.AtomicBoolean java.util.Set org.apache.cassandra.net.IAsyncCallbackWithFailure java.util.List java.net.InetAddress java.util.Iterator
StackMap stack:
aload 0
aload 1
new java.lang.StringBuilder
dup
ldc "Endpoint not alive: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 13
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.apache.cassandra.service.ActiveRepairService.failRepair:(Ljava/util/UUID;Ljava/lang/String;)V
end local 13 19: StackMap locals: org.apache.cassandra.service.ActiveRepairService java.util.UUID java.net.InetAddress java.util.Set org.apache.cassandra.repair.messages.RepairOption java.util.List long java.util.concurrent.CountDownLatch java.util.concurrent.atomic.AtomicBoolean java.util.Set org.apache.cassandra.net.IAsyncCallbackWithFailure java.util.List top java.util.Iterator
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 12
20: aload 8
lconst_1
getstatic java.util.concurrent.TimeUnit.HOURS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.CountDownLatch.await:(JLjava/util/concurrent/TimeUnit;)Z
ifne 25
21: aload 0
aload 1
ldc "Did not get replies from all endpoints."
invokevirtual org.apache.cassandra.service.ActiveRepairService.failRepair:(Ljava/util/UUID;Ljava/lang/String;)V
22: goto 25
23: StackMap locals: org.apache.cassandra.service.ActiveRepairService java.util.UUID java.net.InetAddress java.util.Set org.apache.cassandra.repair.messages.RepairOption java.util.List long java.util.concurrent.CountDownLatch java.util.concurrent.atomic.AtomicBoolean java.util.Set org.apache.cassandra.net.IAsyncCallbackWithFailure java.util.List
StackMap stack: java.lang.InterruptedException
pop
24: aload 0
aload 1
ldc "Interrupted while waiting for prepare repair response."
invokevirtual org.apache.cassandra.service.ActiveRepairService.failRepair:(Ljava/util/UUID;Ljava/lang/String;)V
25: StackMap locals:
StackMap stack:
aload 9
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifne 27
26: aload 0
aload 1
new java.lang.StringBuilder
dup
ldc "Got negative replies from endpoints "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.apache.cassandra.service.ActiveRepairService.failRepair:(Ljava/util/UUID;Ljava/lang/String;)V
27: StackMap locals:
StackMap stack:
aload 1
areturn
end local 12 end local 11 end local 10 end local 9 end local 8 end local 6 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 28 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 28 1 parentRepairSession Ljava/util/UUID;
0 28 2 coordinator Ljava/net/InetAddress;
0 28 3 endpoints Ljava/util/Set<Ljava/net/InetAddress;>;
0 28 4 options Lorg/apache/cassandra/repair/messages/RepairOption;
0 28 5 columnFamilyStores Ljava/util/List<Lorg/apache/cassandra/db/ColumnFamilyStore;>;
1 28 6 timestamp J
3 28 8 prepareLatch Ljava/util/concurrent/CountDownLatch;
4 28 9 status Ljava/util/concurrent/atomic/AtomicBoolean;
5 28 10 failedNodes Ljava/util/Set<Ljava/lang/String;>;
6 28 11 callback Lorg/apache/cassandra/net/IAsyncCallbackWithFailure;
7 28 12 cfIds Ljava/util/List<Ljava/util/UUID;>;
9 10 13 cfs Lorg/apache/cassandra/db/ColumnFamilyStore;
13 19 13 neighbour Ljava/net/InetAddress;
15 17 15 message Lorg/apache/cassandra/repair/messages/PrepareMessage;
16 17 16 msg Lorg/apache/cassandra/net/MessageOut<Lorg/apache/cassandra/repair/messages/RepairMessage;>;
Exception table:
from to target type
20 22 23 Class java.lang.InterruptedException
Signature: (Ljava/util/UUID;Ljava/net/InetAddress;Ljava/util/Set<Ljava/net/InetAddress;>;Lorg/apache/cassandra/repair/messages/RepairOption;Ljava/util/List<Lorg/apache/cassandra/db/ColumnFamilyStore;>;)Ljava/util/UUID;
MethodParameters:
Name Flags
parentRepairSession
coordinator
endpoints
options
columnFamilyStores
private void failRepair(java.util.UUID, java.lang.String);
descriptor: (Ljava/util/UUID;Ljava/lang/String;)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.service.ActiveRepairService.removeParentRepairSession:(Ljava/util/UUID;)Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;
pop
1: new java.lang.RuntimeException
dup
aload 2
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 2 1 parentRepairSession Ljava/util/UUID;
0 2 2 errorMsg Ljava/lang/String;
MethodParameters:
Name Flags
parentRepairSession
errorMsg
public synchronized void registerParentRepairSession(java.util.UUID, java.net.InetAddress, java.util.List<org.apache.cassandra.db.ColumnFamilyStore>, java.util.Collection<org.apache.cassandra.dht.Range<org.apache.cassandra.dht.Token>>, boolean, long, );
descriptor: (Ljava/util/UUID;Ljava/net/InetAddress;Ljava/util/List;Ljava/util/Collection;ZJZ)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=11, locals=9, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 8 0: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.registeredForEndpointChanges:Z
ifne 4
1: getstatic org.apache.cassandra.gms.Gossiper.instance:Lorg/apache/cassandra/gms/Gossiper;
aload 0
invokevirtual org.apache.cassandra.gms.Gossiper.register:(Lorg/apache/cassandra/gms/IEndpointStateChangeSubscriber;)V
2: getstatic org.apache.cassandra.gms.FailureDetector.instance:Lorg/apache/cassandra/gms/IFailureDetector;
aload 0
invokeinterface org.apache.cassandra.gms.IFailureDetector.registerFailureDetectionEventListener:(Lorg/apache/cassandra/gms/IFailureDetectionEventListener;)V
3: aload 0
iconst_1
putfield org.apache.cassandra.service.ActiveRepairService.registeredForEndpointChanges:Z
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.service.ActiveRepairService.parentRepairSessions:Ljava/util/concurrent/ConcurrentMap;
aload 1
invokeinterface java.util.concurrent.ConcurrentMap.containsKey:(Ljava/lang/Object;)Z
ifne 6
5: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.parentRepairSessions:Ljava/util/concurrent/ConcurrentMap;
aload 1
new org.apache.cassandra.service.ActiveRepairService$ParentRepairSession
dup
aload 2
aload 3
aload 4
iload 5
lload 6
iload 8
invokespecial org.apache.cassandra.service.ActiveRepairService$ParentRepairSession.<init>:(Ljava/net/InetAddress;Ljava/util/List;Ljava/util/Collection;ZJZ)V
invokeinterface java.util.concurrent.ConcurrentMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: StackMap locals:
StackMap stack:
return
end local 8 end local 6 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 7 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 7 1 parentRepairSession Ljava/util/UUID;
0 7 2 coordinator Ljava/net/InetAddress;
0 7 3 columnFamilyStores Ljava/util/List<Lorg/apache/cassandra/db/ColumnFamilyStore;>;
0 7 4 ranges Ljava/util/Collection<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;
0 7 5 isIncremental Z
0 7 6 timestamp J
0 7 8 isGlobal Z
Signature: (Ljava/util/UUID;Ljava/net/InetAddress;Ljava/util/List<Lorg/apache/cassandra/db/ColumnFamilyStore;>;Ljava/util/Collection<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;ZJZ)V
MethodParameters:
Name Flags
parentRepairSession
coordinator
columnFamilyStores
ranges
isIncremental
timestamp
isGlobal
public java.util.Set<org.apache.cassandra.io.sstable.format.SSTableReader> currentlyRepairing(java.util.UUID, java.util.UUID);
descriptor: (Ljava/util/UUID;Ljava/util/UUID;)Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=7, args_size=3
start local 0 start local 1 start local 2 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 3
start local 3 1: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.parentRepairSessions:Ljava/util/concurrent/ConcurrentMap;
invokeinterface java.util.concurrent.ConcurrentMap.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 6
StackMap locals: org.apache.cassandra.service.ActiveRepairService java.util.UUID java.util.UUID java.util.Set top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 4
start local 4 3: aload 4
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast org.apache.cassandra.service.ActiveRepairService$ParentRepairSession
aload 1
invokevirtual org.apache.cassandra.service.ActiveRepairService$ParentRepairSession.getActiveSSTables:(Ljava/util/UUID;)Ljava/util/Set;
astore 6
start local 6 4: aload 6
ifnull 6
aload 4
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.util.UUID
aload 2
invokevirtual java.util.UUID.equals:(Ljava/lang/Object;)Z
ifne 6
5: aload 3
aload 6
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
end local 6 end local 4 6: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
7: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 8 1 cfId Ljava/util/UUID;
0 8 2 parentRepairSession Ljava/util/UUID;
1 8 3 repairing Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
3 6 4 entry Ljava/util/Map$Entry<Ljava/util/UUID;Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;>;
4 6 6 sstables Ljava/util/Collection<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
Signature: (Ljava/util/UUID;Ljava/util/UUID;)Ljava/util/Set<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
MethodParameters:
Name Flags
cfId
parentRepairSession
public synchronized com.google.common.util.concurrent.ListenableFuture finishParentSession(java.util.UUID, java.util.Set<java.net.InetAddress>, java.util.Collection<org.apache.cassandra.dht.Range<org.apache.cassandra.dht.Token>>);
descriptor: (Ljava/util/UUID;Ljava/util/Set;Ljava/util/Collection;)Lcom/google/common/util/concurrent/ListenableFuture;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.util.ArrayList
dup
aload 2
invokeinterface java.util.Set.size:()I
iconst_1
iadd
invokespecial java.util.ArrayList.<init>:(I)V
astore 4
start local 4 1: aload 2
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 7
StackMap locals: org.apache.cassandra.service.ActiveRepairService java.util.UUID java.util.Set java.util.Collection java.util.List top java.util.Iterator
StackMap stack:
2: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.net.InetAddress
astore 5
start local 5 3: new org.apache.cassandra.repair.AnticompactionTask
dup
aload 1
aload 5
aload 3
invokespecial org.apache.cassandra.repair.AnticompactionTask.<init>:(Ljava/util/UUID;Ljava/net/InetAddress;Ljava/util/Collection;)V
astore 7
start local 7 4: aload 0
aload 7
invokevirtual org.apache.cassandra.service.ActiveRepairService.registerOnFdAndGossip:(Lcom/google/common/util/concurrent/AbstractFuture;)V
5: aload 4
aload 7
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
6: aload 7
invokevirtual org.apache.cassandra.repair.AnticompactionTask.run:()V
end local 7 end local 5 7: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
8: aload 4
aload 0
aload 1
aload 3
invokevirtual org.apache.cassandra.service.ActiveRepairService.doAntiCompaction:(Ljava/util/UUID;Ljava/util/Collection;)Lcom/google/common/util/concurrent/ListenableFuture;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
9: aload 4
invokestatic com.google.common.util.concurrent.Futures.successfulAsList:(Ljava/lang/Iterable;)Lcom/google/common/util/concurrent/ListenableFuture;
areturn
end local 4 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/service/ActiveRepairService;
0 10 1 parentSession Ljava/util/UUID;
0 10 2 neighbors Ljava/util/Set<Ljava/net/InetAddress;>;
0 10 3 successfulRanges Ljava/util/Collection<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;
1 10 4 tasks Ljava/util/List<Lcom/google/common/util/concurrent/ListenableFuture<*>;>;
3 7 5 neighbor Ljava/net/InetAddress;
4 7 7 task Lorg/apache/cassandra/repair/AnticompactionTask;
Signature: (Ljava/util/UUID;Ljava/util/Set<Ljava/net/InetAddress;>;Ljava/util/Collection<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;)Lcom/google/common/util/concurrent/ListenableFuture;
MethodParameters:
Name Flags
parentSession
neighbors
successfulRanges
public org.apache.cassandra.service.ActiveRepairService$ParentRepairSession getParentRepairSession(java.util.UUID);
descriptor: (Ljava/util/UUID;)Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.parentRepairSessions:Ljava/util/concurrent/ConcurrentMap;
aload 1
invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.cassandra.service.ActiveRepairService$ParentRepairSession
astore 2
start local 2 1: aload 2
ifnonnull 3
2: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "Parent repair session with id = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " has failed."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: org.apache.cassandra.service.ActiveRepairService$ParentRepairSession
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 4 1 parentSessionId Ljava/util/UUID;
1 4 2 session Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;
MethodParameters:
Name Flags
parentSessionId
public synchronized org.apache.cassandra.service.ActiveRepairService$ParentRepairSession removeParentRepairSession(java.util.UUID);
descriptor: (Ljava/util/UUID;)Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.util.UUID.toString:()Ljava/lang/String;
astore 2
start local 2 1: aload 0
aload 1
invokevirtual org.apache.cassandra.service.ActiveRepairService.getParentRepairSession:(Ljava/util/UUID;)Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;
getfield org.apache.cassandra.service.ActiveRepairService$ParentRepairSession.columnFamilyStores:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 5
StackMap locals: org.apache.cassandra.service.ActiveRepairService java.util.UUID java.lang.String top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.ColumnFamilyStore
astore 3
start local 3 3: aload 3
aload 2
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.snapshotExists:(Ljava/lang/String;)Z
ifeq 5
4: aload 3
aload 2
invokevirtual org.apache.cassandra.db.ColumnFamilyStore.clearSnapshot:(Ljava/lang/String;)V
end local 3 5: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
6: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.parentRepairSessions:Ljava/util/concurrent/ConcurrentMap;
aload 1
invokeinterface java.util.concurrent.ConcurrentMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.cassandra.service.ActiveRepairService$ParentRepairSession
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 7 1 parentSessionId Ljava/util/UUID;
1 7 2 snapshotName Ljava/lang/String;
3 5 3 cfs Lorg/apache/cassandra/db/ColumnFamilyStore;
MethodParameters:
Name Flags
parentSessionId
public com.google.common.util.concurrent.ListenableFuture<java.util.List<java.lang.Object>> doAntiCompaction(java.util.UUID, java.util.Collection<org.apache.cassandra.dht.Range<org.apache.cassandra.dht.Token>>);
descriptor: (Ljava/util/UUID;Ljava/util/Collection;)Lcom/google/common/util/concurrent/ListenableFuture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=9, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.apache.cassandra.service.ActiveRepairService.$assertionsDisabled:Z
ifne 1
aload 1
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.apache.cassandra.service.ActiveRepairService.getParentRepairSession:(Ljava/util/UUID;)Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;
astore 3
start local 3 2: aload 3
getfield org.apache.cassandra.service.ActiveRepairService$ParentRepairSession.isGlobal:Z
ifne 6
3: getstatic org.apache.cassandra.service.ActiveRepairService.logger:Lorg/slf4j/Logger;
ldc "[repair #{}] Not a global repair, will not do anticompaction"
aload 1
invokeinterface org.slf4j.Logger.info:(Ljava/lang/String;Ljava/lang/Object;)V
4: aload 0
aload 1
invokevirtual org.apache.cassandra.service.ActiveRepairService.removeParentRepairSession:(Ljava/util/UUID;)Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;
pop
5: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
invokestatic com.google.common.util.concurrent.Futures.immediateFuture:(Ljava/lang/Object;)Lcom/google/common/util/concurrent/ListenableFuture;
areturn
6: StackMap locals: org.apache.cassandra.service.ActiveRepairService$ParentRepairSession
StackMap stack:
getstatic org.apache.cassandra.service.ActiveRepairService.$assertionsDisabled:Z
ifne 7
aload 3
getfield org.apache.cassandra.service.ActiveRepairService$ParentRepairSession.ranges:Ljava/util/Collection;
aload 2
invokeinterface java.util.Collection.containsAll:(Ljava/util/Collection;)Z
ifne 7
new java.lang.AssertionError
dup
ldc "Trying to perform anticompaction on unknown ranges"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
7: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 8: aload 2
invokeinterface java.util.Collection.isEmpty:()Z
ifne 15
9: aload 3
getfield org.apache.cassandra.service.ActiveRepairService$ParentRepairSession.columnFamilyStores:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 14
StackMap locals: org.apache.cassandra.service.ActiveRepairService java.util.UUID java.util.Collection org.apache.cassandra.service.ActiveRepairService$ParentRepairSession java.util.List top java.util.Iterator
StackMap stack:
10: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 5
start local 5 11: aload 3
aload 5
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.util.UUID
aload 1
invokevirtual org.apache.cassandra.service.ActiveRepairService$ParentRepairSession.getActiveRepairedSSTableRefsForAntiCompaction:(Ljava/util/UUID;Ljava/util/UUID;)Lorg/apache/cassandra/utils/concurrent/Refs;
astore 7
start local 7 12: aload 5
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast org.apache.cassandra.db.ColumnFamilyStore
astore 8
start local 8 13: aload 4
getstatic org.apache.cassandra.db.compaction.CompactionManager.instance:Lorg/apache/cassandra/db/compaction/CompactionManager;
aload 8
aload 2
aload 7
aload 3
getfield org.apache.cassandra.service.ActiveRepairService$ParentRepairSession.repairedAt:J
aload 1
invokevirtual org.apache.cassandra.db.compaction.CompactionManager.submitAntiCompaction:(Lorg/apache/cassandra/db/ColumnFamilyStore;Ljava/util/Collection;Lorg/apache/cassandra/utils/concurrent/Refs;JLjava/util/UUID;)Lcom/google/common/util/concurrent/ListenableFuture;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 7 end local 5 14: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
15: StackMap locals: org.apache.cassandra.service.ActiveRepairService java.util.UUID java.util.Collection org.apache.cassandra.service.ActiveRepairService$ParentRepairSession java.util.List
StackMap stack:
aload 4
invokestatic com.google.common.util.concurrent.Futures.successfulAsList:(Ljava/lang/Iterable;)Lcom/google/common/util/concurrent/ListenableFuture;
astore 5
start local 5 16: aload 5
new org.apache.cassandra.service.ActiveRepairService$4
dup
aload 0
aload 1
invokespecial org.apache.cassandra.service.ActiveRepairService$4.<init>:(Lorg/apache/cassandra/service/ActiveRepairService;Ljava/util/UUID;)V
17: invokestatic com.google.common.util.concurrent.MoreExecutors.directExecutor:()Ljava/util/concurrent/Executor;
18: invokeinterface com.google.common.util.concurrent.ListenableFuture.addListener:(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V
19: aload 5
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 20 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 20 1 parentRepairSession Ljava/util/UUID;
0 20 2 successfulRanges Ljava/util/Collection<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;
2 20 3 prs Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;
8 20 4 futures Ljava/util/List<Lcom/google/common/util/concurrent/ListenableFuture<*>;>;
11 14 5 columnFamilyStoreEntry Ljava/util/Map$Entry<Ljava/util/UUID;Lorg/apache/cassandra/db/ColumnFamilyStore;>;
12 14 7 sstables Lorg/apache/cassandra/utils/concurrent/Refs<Lorg/apache/cassandra/io/sstable/format/SSTableReader;>;
13 14 8 cfs Lorg/apache/cassandra/db/ColumnFamilyStore;
16 20 5 allAntiCompactionResults Lcom/google/common/util/concurrent/ListenableFuture<Ljava/util/List<Ljava/lang/Object;>;>;
Signature: (Ljava/util/UUID;Ljava/util/Collection<Lorg/apache/cassandra/dht/Range<Lorg/apache/cassandra/dht/Token;>;>;)Lcom/google/common/util/concurrent/ListenableFuture<Ljava/util/List<Ljava/lang/Object;>;>;
MethodParameters:
Name Flags
parentRepairSession final
successfulRanges
public void handleMessage(java.net.InetAddress, org.apache.cassandra.repair.messages.RepairMessage);
descriptor: (Ljava/net/InetAddress;Lorg/apache/cassandra/repair/messages/RepairMessage;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
getfield org.apache.cassandra.repair.messages.RepairMessage.desc:Lorg/apache/cassandra/repair/RepairJobDesc;
astore 3
start local 3 1: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.sessions:Ljava/util/concurrent/ConcurrentMap;
aload 3
getfield org.apache.cassandra.repair.RepairJobDesc.sessionId:Ljava/util/UUID;
invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.cassandra.repair.RepairSession
astore 4
start local 4 2: aload 4
ifnonnull 4
3: return
4: StackMap locals: org.apache.cassandra.repair.RepairJobDesc org.apache.cassandra.repair.RepairSession
StackMap stack:
invokestatic org.apache.cassandra.service.ActiveRepairService.$SWITCH_TABLE$org$apache$cassandra$repair$messages$RepairMessage$Type:()[I
aload 2
getfield org.apache.cassandra.repair.messages.RepairMessage.messageType:Lorg/apache/cassandra/repair/messages/RepairMessage$Type;
invokevirtual org.apache.cassandra.repair.messages.RepairMessage$Type.ordinal:()I
iaload
tableswitch { // 2 - 4
2: 5
3: 11
4: 8
default: 11
}
5: StackMap locals:
StackMap stack:
aload 2
checkcast org.apache.cassandra.repair.messages.ValidationComplete
astore 5
start local 5 6: aload 4
aload 3
aload 1
aload 5
getfield org.apache.cassandra.repair.messages.ValidationComplete.trees:Lorg/apache/cassandra/utils/MerkleTrees;
invokevirtual org.apache.cassandra.repair.RepairSession.validationComplete:(Lorg/apache/cassandra/repair/RepairJobDesc;Ljava/net/InetAddress;Lorg/apache/cassandra/utils/MerkleTrees;)V
7: goto 11
end local 5 8: StackMap locals:
StackMap stack:
aload 2
checkcast org.apache.cassandra.repair.messages.SyncComplete
astore 6
start local 6 9: aload 4
aload 3
aload 6
getfield org.apache.cassandra.repair.messages.SyncComplete.nodes:Lorg/apache/cassandra/repair/NodePair;
aload 6
getfield org.apache.cassandra.repair.messages.SyncComplete.success:Z
invokevirtual org.apache.cassandra.repair.RepairSession.syncComplete:(Lorg/apache/cassandra/repair/RepairJobDesc;Lorg/apache/cassandra/repair/NodePair;Z)V
10: goto 11
end local 6 11: StackMap locals:
StackMap stack:
return
end local 4 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/service/ActiveRepairService;
0 12 1 endpoint Ljava/net/InetAddress;
0 12 2 message Lorg/apache/cassandra/repair/messages/RepairMessage;
1 12 3 desc Lorg/apache/cassandra/repair/RepairJobDesc;
2 12 4 session Lorg/apache/cassandra/repair/RepairSession;
6 8 5 validation Lorg/apache/cassandra/repair/messages/ValidationComplete;
9 11 6 sync Lorg/apache/cassandra/repair/messages/SyncComplete;
MethodParameters:
Name Flags
endpoint
message
public void onJoin(java.net.InetAddress, org.apache.cassandra.gms.EndpointState);
descriptor: (Ljava/net/InetAddress;Lorg/apache/cassandra/gms/EndpointState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=3, args_size=3
start local 0 start local 1 start local 2 0: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 1 1 endpoint Ljava/net/InetAddress;
0 1 2 epState Lorg/apache/cassandra/gms/EndpointState;
MethodParameters:
Name Flags
endpoint
epState
public void beforeChange(java.net.InetAddress, org.apache.cassandra.gms.EndpointState, org.apache.cassandra.gms.ApplicationState, org.apache.cassandra.gms.VersionedValue);
descriptor: (Ljava/net/InetAddress;Lorg/apache/cassandra/gms/EndpointState;Lorg/apache/cassandra/gms/ApplicationState;Lorg/apache/cassandra/gms/VersionedValue;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 1 1 endpoint Ljava/net/InetAddress;
0 1 2 currentState Lorg/apache/cassandra/gms/EndpointState;
0 1 3 newStateKey Lorg/apache/cassandra/gms/ApplicationState;
0 1 4 newValue Lorg/apache/cassandra/gms/VersionedValue;
MethodParameters:
Name Flags
endpoint
currentState
newStateKey
newValue
public void onChange(java.net.InetAddress, org.apache.cassandra.gms.ApplicationState, org.apache.cassandra.gms.VersionedValue);
descriptor: (Ljava/net/InetAddress;Lorg/apache/cassandra/gms/ApplicationState;Lorg/apache/cassandra/gms/VersionedValue;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 1 1 endpoint Ljava/net/InetAddress;
0 1 2 state Lorg/apache/cassandra/gms/ApplicationState;
0 1 3 value Lorg/apache/cassandra/gms/VersionedValue;
MethodParameters:
Name Flags
endpoint
state
value
public void onAlive(java.net.InetAddress, org.apache.cassandra.gms.EndpointState);
descriptor: (Ljava/net/InetAddress;Lorg/apache/cassandra/gms/EndpointState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=3, args_size=3
start local 0 start local 1 start local 2 0: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 1 1 endpoint Ljava/net/InetAddress;
0 1 2 state Lorg/apache/cassandra/gms/EndpointState;
MethodParameters:
Name Flags
endpoint
state
public void onDead(java.net.InetAddress, org.apache.cassandra.gms.EndpointState);
descriptor: (Ljava/net/InetAddress;Lorg/apache/cassandra/gms/EndpointState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=3, args_size=3
start local 0 start local 1 start local 2 0: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 1 1 endpoint Ljava/net/InetAddress;
0 1 2 state Lorg/apache/cassandra/gms/EndpointState;
MethodParameters:
Name Flags
endpoint
state
public void onRemove(java.net.InetAddress);
descriptor: (Ljava/net/InetAddress;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc 1.7976931348623157E308
invokevirtual org.apache.cassandra.service.ActiveRepairService.convict:(Ljava/net/InetAddress;D)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 2 1 endpoint Ljava/net/InetAddress;
MethodParameters:
Name Flags
endpoint
public void onRestart(java.net.InetAddress, org.apache.cassandra.gms.EndpointState);
descriptor: (Ljava/net/InetAddress;Lorg/apache/cassandra/gms/EndpointState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
ldc 1.7976931348623157E308
invokevirtual org.apache.cassandra.service.ActiveRepairService.convict:(Ljava/net/InetAddress;D)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 2 1 endpoint Ljava/net/InetAddress;
0 2 2 state Lorg/apache/cassandra/gms/EndpointState;
MethodParameters:
Name Flags
endpoint
state
public void convict(java.net.InetAddress, double);
descriptor: (Ljava/net/InetAddress;D)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 2 0: dload 2
ldc 2.0
invokestatic org.apache.cassandra.config.DatabaseDescriptor.getPhiConvictThreshold:()D
dmul
dcmpg
iflt 1
aload 0
getfield org.apache.cassandra.service.ActiveRepairService.parentRepairSessions:Ljava/util/concurrent/ConcurrentMap;
invokeinterface java.util.concurrent.ConcurrentMap.isEmpty:()Z
ifeq 2
1: StackMap locals:
StackMap stack:
return
2: StackMap locals:
StackMap stack:
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 4
start local 4 3: aload 0
getfield org.apache.cassandra.service.ActiveRepairService.parentRepairSessions:Ljava/util/concurrent/ConcurrentMap;
invokeinterface java.util.concurrent.ConcurrentMap.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 7
StackMap locals: org.apache.cassandra.service.ActiveRepairService java.net.InetAddress double java.util.Set top java.util.Iterator
StackMap stack:
4: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 5
start local 5 5: aload 5
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast org.apache.cassandra.service.ActiveRepairService$ParentRepairSession
getfield org.apache.cassandra.service.ActiveRepairService$ParentRepairSession.coordinator:Ljava/net/InetAddress;
aload 1
invokevirtual java.net.InetAddress.equals:(Ljava/lang/Object;)Z
ifeq 7
6: aload 4
aload 5
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.util.UUID
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 5 7: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
8: aload 4
invokeinterface java.util.Set.isEmpty:()Z
ifne 14
9: getstatic org.apache.cassandra.service.ActiveRepairService.logger:Lorg/slf4j/Logger;
ldc "Removing {} in parent repair sessions"
aload 4
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
10: aload 4
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 13
StackMap locals:
StackMap stack:
11: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.UUID
astore 5
start local 5 12: aload 0
aload 5
invokevirtual org.apache.cassandra.service.ActiveRepairService.removeParentRepairSession:(Ljava/util/UUID;)Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;
pop
end local 5 13: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
14: StackMap locals: org.apache.cassandra.service.ActiveRepairService java.net.InetAddress double java.util.Set
StackMap stack:
return
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/cassandra/service/ActiveRepairService;
0 15 1 ep Ljava/net/InetAddress;
0 15 2 phi D
3 15 4 toRemove Ljava/util/Set<Ljava/util/UUID;>;
5 7 5 repairSessionEntry Ljava/util/Map$Entry<Ljava/util/UUID;Lorg/apache/cassandra/service/ActiveRepairService$ParentRepairSession;>;
12 13 5 id Ljava/util/UUID;
MethodParameters:
Name Flags
ep
phi
static int[] $SWITCH_TABLE$org$apache$cassandra$repair$messages$RepairMessage$Type();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.apache.cassandra.service.ActiveRepairService.$SWITCH_TABLE$org$apache$cassandra$repair$messages$RepairMessage$Type:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.apache.cassandra.repair.messages.RepairMessage$Type.values:()[Lorg/apache/cassandra/repair/messages/RepairMessage$Type;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.apache.cassandra.repair.messages.RepairMessage$Type.ANTICOMPACTION_REQUEST:Lorg/apache/cassandra/repair/messages/RepairMessage$Type;
invokevirtual org.apache.cassandra.repair.messages.RepairMessage$Type.ordinal:()I
iconst_5
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.repair.messages.RepairMessage$Type.CLEANUP:Lorg/apache/cassandra/repair/messages/RepairMessage$Type;
invokevirtual org.apache.cassandra.repair.messages.RepairMessage$Type.ordinal:()I
bipush 8
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.apache.cassandra.repair.messages.RepairMessage$Type.PREPARE_MESSAGE:Lorg/apache/cassandra/repair/messages/RepairMessage$Type;
invokevirtual org.apache.cassandra.repair.messages.RepairMessage$Type.ordinal:()I
bipush 6
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.apache.cassandra.repair.messages.RepairMessage$Type.SNAPSHOT:Lorg/apache/cassandra/repair/messages/RepairMessage$Type;
invokevirtual org.apache.cassandra.repair.messages.RepairMessage$Type.ordinal:()I
bipush 7
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic org.apache.cassandra.repair.messages.RepairMessage$Type.SYNC_COMPLETE:Lorg/apache/cassandra/repair/messages/RepairMessage$Type;
invokevirtual org.apache.cassandra.repair.messages.RepairMessage$Type.ordinal:()I
iconst_4
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic org.apache.cassandra.repair.messages.RepairMessage$Type.SYNC_REQUEST:Lorg/apache/cassandra/repair/messages/RepairMessage$Type;
invokevirtual org.apache.cassandra.repair.messages.RepairMessage$Type.ordinal:()I
iconst_3
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic org.apache.cassandra.repair.messages.RepairMessage$Type.VALIDATION_COMPLETE:Lorg/apache/cassandra/repair/messages/RepairMessage$Type;
invokevirtual org.apache.cassandra.repair.messages.RepairMessage$Type.ordinal:()I
iconst_2
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic org.apache.cassandra.repair.messages.RepairMessage$Type.VALIDATION_REQUEST:Lorg/apache/cassandra/repair/messages/RepairMessage$Type;
invokevirtual org.apache.cassandra.repair.messages.RepairMessage$Type.ordinal:()I
iconst_1
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
dup
putstatic org.apache.cassandra.service.ActiveRepairService.$SWITCH_TABLE$org$apache$cassandra$repair$messages$RepairMessage$Type:[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
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
}
SourceFile: "ActiveRepairService.java"
NestMembers:
org.apache.cassandra.service.ActiveRepairService$1 org.apache.cassandra.service.ActiveRepairService$2 org.apache.cassandra.service.ActiveRepairService$3 org.apache.cassandra.service.ActiveRepairService$4 org.apache.cassandra.service.ActiveRepairService$ParentRepairSession org.apache.cassandra.service.ActiveRepairService$ParentRepairSession$1 org.apache.cassandra.service.ActiveRepairService$Status
InnerClasses:
public abstract SetView = com.google.common.collect.Sets$SetView of com.google.common.collect.Sets
public abstract Entry = java.util.Map$Entry of java.util.Map
public Topology = org.apache.cassandra.locator.TokenMetadata$Topology of org.apache.cassandra.locator.TokenMetadata
public final Type = org.apache.cassandra.repair.messages.RepairMessage$Type of org.apache.cassandra.repair.messages.RepairMessage
org.apache.cassandra.service.ActiveRepairService$1
org.apache.cassandra.service.ActiveRepairService$2
org.apache.cassandra.service.ActiveRepairService$3
org.apache.cassandra.service.ActiveRepairService$4
public ParentRepairSession = org.apache.cassandra.service.ActiveRepairService$ParentRepairSession of org.apache.cassandra.service.ActiveRepairService
public final Status = org.apache.cassandra.service.ActiveRepairService$Status of org.apache.cassandra.service.ActiveRepairService