
com.groupbyinc.flux.discovery.local.LocalDiscovery.class Maven / Gradle / Ivy
???? 3! 2com/groupbyinc/flux/discovery/local/LocalDiscovery ?Lcom/groupbyinc/flux/common/component/AbstractLifecycleComponent;Lcom/groupbyinc/flux/discovery/Discovery; ?com/groupbyinc/flux/common/component/AbstractLifecycleComponent 'com/groupbyinc/flux/discovery/Discovery LocalDiscovery.java ?com/groupbyinc/flux/discovery/local/LocalDiscovery$ClusterGroup ClusterGroup 4com/groupbyinc/flux/discovery/local/LocalDiscovery$4 4com/groupbyinc/flux/discovery/local/LocalDiscovery$3 4com/groupbyinc/flux/discovery/local/LocalDiscovery$2 4com/groupbyinc/flux/discovery/local/LocalDiscovery$1 3com/groupbyinc/flux/discovery/Discovery$AckListener AckListener 0com/groupbyinc/flux/cluster/ClusterState$Builder (com/groupbyinc/flux/cluster/ClusterState Builder ;com/groupbyinc/flux/cluster/ClusterState$ClusterStateStatus ClusterStateStatus
NO_MEMBERS 5[Lcom/groupbyinc/flux/discovery/local/LocalDiscovery; clusterService ,Lcom/groupbyinc/flux/cluster/ClusterService; routingService 4Lcom/groupbyinc/flux/cluster/routing/RoutingService; clusterName )Lcom/groupbyinc/flux/cluster/ClusterName; discoverySettings 1Lcom/groupbyinc/flux/discovery/DiscoverySettings; master Z initialStateSent +Ljava/util/concurrent/atomic/AtomicBoolean; initialStateListeners +Ljava/util/concurrent/CopyOnWriteArrayList; jLjava/util/concurrent/CopyOnWriteArrayList;
clusterGroups $Ljava/util/concurrent/ConcurrentMap; ?Ljava/util/concurrent/ConcurrentMap; lastProcessedClusterState *Lcom/groupbyinc/flux/cluster/ClusterState; $assertionsDisabled ?(Lcom/groupbyinc/flux/common/settings/Settings;Lcom/groupbyinc/flux/cluster/ClusterName;Lcom/groupbyinc/flux/cluster/ClusterService;Lcom/groupbyinc/flux/discovery/DiscoverySettings;)V *Lcom/groupbyinc/flux/common/inject/Inject; 1(Lcom/groupbyinc/flux/common/settings/Settings;)V 6 9
: ) * < )java/util/concurrent/atomic/AtomicBoolean > ()V 6 @
? A + , C )java/util/concurrent/CopyOnWriteArrayList E
F A - . H % & J ! " L ' ( N this 4Lcom/groupbyinc/flux/discovery/local/LocalDiscovery; settings .Lcom/groupbyinc/flux/common/settings/Settings; setNodeService 1(Lcom/groupbyinc/flux/node/service/NodeService;)V 5Lcom/groupbyinc/flux/common/inject/internal/Nullable; nodeService .Lcom/groupbyinc/flux/node/service/NodeService; setRoutingService 7(Lcom/groupbyinc/flux/cluster/routing/RoutingService;)V # $ [ doStart startInitialJoin 0 1 _ "java/util/concurrent/ConcurrentMap a get &(Ljava/lang/Object;)Ljava/lang/Object; c d b e m(Lcom/groupbyinc/flux/discovery/local/LocalDiscovery;Lcom/groupbyinc/flux/discovery/local/LocalDiscovery$1;)V 6 g
h put 8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; j k b l java/lang/Object n logger -Lcom/groupbyinc/flux/common/logging/ESLogger; p q r Connected to cluster [{}] t +com/groupbyinc/flux/common/logging/ESLogger v debug ((Ljava/lang/String;[Ljava/lang/Object;)V x y w z members ()Ljava/util/Queue; | }
~ java/util/Queue ? add (Ljava/lang/Object;)Z ? ? ? ? iterator ()Ljava/util/Iterator; ? ? ? ? java/util/Iterator ? hasNext ()Z ? ? ? ? next ()Ljava/lang/Object; ? ? ? ? localNode 2()Lcom/groupbyinc/flux/cluster/node/DiscoveryNode; ? ?
? .com/groupbyinc/flux/cluster/node/DiscoveryNode ?
masterNode ? ?
? ? equals ? ?
o ? #local-disco-initial_connect(master) ? k(Lcom/groupbyinc/flux/discovery/local/LocalDiscovery;Lcom/groupbyinc/flux/discovery/local/LocalDiscovery;)V 6 ?
? *com/groupbyinc/flux/cluster/ClusterService ? submitStateUpdateTask I(Ljava/lang/String;Lcom/groupbyinc/flux/cluster/ClusterStateUpdateTask;)V ? ? ? ? java/lang/StringBuilder ?
? A local-disco-receive(from node[ ? append -(Ljava/lang/String;)Ljava/lang/StringBuilder; ? ?
? ? -(Ljava/lang/Object;)Ljava/lang/StringBuilder; ? ?
? ? ]) ? toString ()Ljava/lang/String; ? ?
? ?
? java/lang/Throwable ? localDiscovery clusterGroup ALcom/groupbyinc/flux/discovery/local/LocalDiscovery$ClusterGroup; firstMaster doStop kIllegal state, should not have an empty cluster group when stopping, I should be there at teh very least... ? warn ? y w ? remove ? ? ? ? isEmpty ? ? ? ? ? d b ? 5com/groupbyinc/flux/common/google/common/collect/Sets ?
newHashSet ()Ljava/util/HashSet; ? ?
? ?
java/util/Set ? id ? ?
? ? ? ? local-disco-update ? z(Lcom/groupbyinc/flux/discovery/local/LocalDiscovery;Ljava/util/Set;Lcom/groupbyinc/flux/discovery/local/LocalDiscovery;)V 6 ?
? discovery
newMembers #Ljava/util/Set; Ljava/util/Set; doClose ? ? addListener @(Lcom/groupbyinc/flux/discovery/InitialStateDiscoveryListener;)V
F ? listener =Lcom/groupbyinc/flux/discovery/InitialStateDiscoveryListener; removeListener
F ? nodeDescription 'com/groupbyinc/flux/cluster/ClusterName ? value ? ?
? ? / ? publish i(Lcom/groupbyinc/flux/cluster/ClusterChangedEvent;Lcom/groupbyinc/flux/discovery/Discovery$AckListener;)V java/lang/IllegalStateException ? 'Shouldn't publish state when not master ? (Ljava/lang/String;)V 6 ?
? ? 7()[Lcom/groupbyinc/flux/discovery/local/LocalDiscovery; |
java/util/HashSet (I)V 6
/com/groupbyinc/flux/cluster/ClusterChangedEvent Ccom/groupbyinc/flux/discovery/AckClusterStatePublishResponseHandler G(Ljava/util/Set;Lcom/groupbyinc/flux/discovery/Discovery$AckListener;)V 6
?([Lcom/groupbyinc/flux/discovery/local/LocalDiscovery;Lcom/groupbyinc/flux/cluster/ClusterChangedEvent;Lcom/groupbyinc/flux/discovery/BlockingClusterStatePublishResponseHandler;)V ?
nodesToPublishTo ALjava/util/Set; clusterChangedEvent 1Lcom/groupbyinc/flux/cluster/ClusterChangedEvent; ackListener 5Lcom/groupbyinc/flux/discovery/Discovery$AckListener; size ()I ? toArray (([Ljava/lang/Object;)[Ljava/lang/Object; ! ?" GLjava/util/Queue; Ljava/util/Queue; Dcom/groupbyinc/flux/cluster/IncompatibleClusterStateVersionException& java/lang/InterruptedException( java/lang/Exception* state ,()Lcom/groupbyinc/flux/cluster/ClusterState;,-
. Hcom/groupbyinc/flux/discovery/BlockingClusterStatePublishResponseHandler0 [B2 3 4 4
previousState6-
7 nodes 3()Lcom/groupbyinc/flux/cluster/node/DiscoveryNodes;9:
; /com/groupbyinc/flux/cluster/node/DiscoveryNodes=
nodeExists (Ljava/lang/String;)Z?@
>A diff N(Lcom/groupbyinc/flux/cluster/ClusterState;)Lcom/groupbyinc/flux/cluster/Diff;CD
E 6com/groupbyinc/flux/common/io/stream/BytesStreamOutputG
H A com/groupbyinc/flux/cluster/DiffJ writeTo 6(Lcom/groupbyinc/flux/common/io/stream/StreamOutput;)VLMKN bytes 3()Lcom/groupbyinc/flux/common/bytes/BytesReference;PQ
HR /com/groupbyinc/flux/common/bytes/BytesReferenceT toBytes ()[BVWUX 0com/groupbyinc/flux/common/io/stream/StreamInputZ wrap 6([B)Lcom/groupbyinc/flux/common/io/stream/StreamInput;\]
[^ readDiffFrom V(Lcom/groupbyinc/flux/common/io/stream/StreamInput;)Lcom/groupbyinc/flux/cluster/Diff;`a
b applyd dKe