public class org.apache.zookeeper.server.quorum.FastLeaderElection extends java.lang.Object implements org.apache.zookeeper.server.quorum.Election
{
private static final org.slf4j.Logger LOG;
static final int finalizeWait;
private static int maxNotificationInterval;
private static int minNotificationInterval;
public static final java.lang.String MIN_NOTIFICATION_INTERVAL;
public static final java.lang.String MAX_NOTIFICATION_INTERVAL;
org.apache.zookeeper.server.quorum.QuorumCnxManager manager;
private org.apache.zookeeper.server.quorum.SyncedLearnerTracker leadingVoteSet;
static byte[] dummyData;
java.util.concurrent.LinkedBlockingQueue sendqueue;
java.util.concurrent.LinkedBlockingQueue recvqueue;
org.apache.zookeeper.server.quorum.QuorumPeer self;
org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger messenger;
java.util.concurrent.atomic.AtomicLong logicalclock;
long proposedLeader;
long proposedZxid;
long proposedEpoch;
volatile boolean stop;
public long getLogicalClock()
{
java.util.concurrent.atomic.AtomicLong v;
long v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
return v;
}
static java.nio.ByteBuffer buildMsg(int, long, long, long, long)
{
byte[] v;
int v;
long v, v, v, v;
java.nio.ByteBuffer v;
v := @parameter: int;
v := @parameter: long;
v := @parameter: long;
v := @parameter: long;
v := @parameter: long;
v = newarray (byte)[40];
v = staticinvoke <java.nio.ByteBuffer: java.nio.ByteBuffer wrap(byte[])>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer clear()>();
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putInt(int)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putLong(long)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putLong(long)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putLong(long)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putLong(long)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putInt(int)>(1);
return v;
}
static java.nio.ByteBuffer buildMsg(int, long, long, long, long, byte[])
{
byte[] v, v;
long v, v, v, v;
java.nio.ByteBuffer v;
int v, v, v, v;
v := @parameter: int;
v := @parameter: long;
v := @parameter: long;
v := @parameter: long;
v := @parameter: long;
v := @parameter: byte[];
v = lengthof v;
v = 44 + v;
v = newarray (byte)[v];
v = staticinvoke <java.nio.ByteBuffer: java.nio.ByteBuffer wrap(byte[])>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer clear()>();
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putInt(int)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putLong(long)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putLong(long)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putLong(long)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putLong(long)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putInt(int)>(2);
v = lengthof v;
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putInt(int)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer put(byte[])>(v);
return v;
}
public void <init>(org.apache.zookeeper.server.quorum.QuorumPeer, org.apache.zookeeper.server.quorum.QuorumCnxManager)
{
org.apache.zookeeper.server.quorum.QuorumPeer v;
java.util.concurrent.atomic.AtomicLong v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
org.apache.zookeeper.server.quorum.QuorumCnxManager v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v := @parameter: org.apache.zookeeper.server.quorum.QuorumPeer;
v := @parameter: org.apache.zookeeper.server.quorum.QuorumCnxManager;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.concurrent.atomic.AtomicLong;
specialinvoke v.<java.util.concurrent.atomic.AtomicLong: void <init>()>();
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock> = v;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean stop> = 0;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumCnxManager manager> = v;
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void starter(org.apache.zookeeper.server.quorum.QuorumPeer,org.apache.zookeeper.server.quorum.QuorumCnxManager)>(v, v);
return;
}
private void starter(org.apache.zookeeper.server.quorum.QuorumPeer, org.apache.zookeeper.server.quorum.QuorumCnxManager)
{
org.apache.zookeeper.server.quorum.QuorumPeer v;
org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
java.util.concurrent.LinkedBlockingQueue v, v;
org.apache.zookeeper.server.quorum.QuorumCnxManager v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v := @parameter: org.apache.zookeeper.server.quorum.QuorumPeer;
v := @parameter: org.apache.zookeeper.server.quorum.QuorumCnxManager;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self> = v;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader> = -1L;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid> = -1L;
v = new java.util.concurrent.LinkedBlockingQueue;
specialinvoke v.<java.util.concurrent.LinkedBlockingQueue: void <init>()>();
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.LinkedBlockingQueue sendqueue> = v;
v = new java.util.concurrent.LinkedBlockingQueue;
specialinvoke v.<java.util.concurrent.LinkedBlockingQueue: void <init>()>();
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.LinkedBlockingQueue recvqueue> = v;
v = new org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger;
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger: void <init>(org.apache.zookeeper.server.quorum.FastLeaderElection,org.apache.zookeeper.server.quorum.QuorumCnxManager)>(v, v);
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger messenger> = v;
return;
}
public void start()
{
org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger messenger>;
virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger: void start()>();
return;
}
private void leaveInstance(org.apache.zookeeper.server.quorum.Vote)
{
org.apache.zookeeper.server.quorum.QuorumPeer v, v;
java.lang.Object[] v;
org.slf4j.Logger v;
org.apache.zookeeper.server.quorum.Vote v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
long v, v, v;
java.util.concurrent.LinkedBlockingQueue v;
org.apache.zookeeper.server.quorum.QuorumPeer$ServerState v;
java.lang.Long v, v;
java.lang.String v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v := @parameter: org.apache.zookeeper.server.quorum.Vote;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[4];
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.Vote: long getId()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[0] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.Vote: long getZxid()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[1] = v;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: long getMyId()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[2] = v;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState getPeerState()>();
v[3] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("About to leave FLE instance: leader={}, zxid=0x{}, my id={}, my state={}", v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.LinkedBlockingQueue recvqueue>;
virtualinvoke v.<java.util.concurrent.LinkedBlockingQueue: void clear()>();
return;
}
public org.apache.zookeeper.server.quorum.QuorumCnxManager getCnxManager()
{
org.apache.zookeeper.server.quorum.FastLeaderElection v;
org.apache.zookeeper.server.quorum.QuorumCnxManager v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumCnxManager manager>;
return v;
}
public void shutdown()
{
org.slf4j.Logger v, v, v;
org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
org.apache.zookeeper.server.quorum.QuorumCnxManager v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean stop> = 1;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader> = -1L;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid> = -1L;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.SyncedLearnerTracker leadingVoteSet> = null;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Shutting down connection manager");
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumCnxManager manager>;
virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumCnxManager: void halt()>();
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Shutting down messenger");
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger messenger>;
virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Messenger: void halt()>();
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("FLE is down");
return;
}
private void sendNotifications()
{
org.apache.zookeeper.server.quorum.QuorumPeer v, v, v;
byte[] v;
org.apache.zookeeper.server.quorum.QuorumPeer$ServerState v;
java.lang.Long v, v, v;
boolean v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
java.util.Set v;
java.util.concurrent.LinkedBlockingQueue v;
java.lang.Object[] v;
org.apache.zookeeper.server.quorum.FastLeaderElection$ToSend$mType v;
org.apache.zookeeper.server.quorum.flexible.QuorumVerifier v;
long v, v, v, v, v, v, v, v, v, v;
java.nio.charset.Charset v;
java.lang.String v, v, v, v;
org.slf4j.Logger v;
java.util.Iterator v;
org.apache.zookeeper.server.quorum.FastLeaderElection$ToSend v;
java.util.concurrent.atomic.AtomicLong v, v;
java.lang.Object v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: java.util.Set getCurrentAndNextConfigVoters()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.lang.Long: long longValue()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getQuorumVerifier()>();
v = new org.apache.zookeeper.server.quorum.FastLeaderElection$ToSend;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection$ToSend$mType: org.apache.zookeeper.server.quorum.FastLeaderElection$ToSend$mType notification>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
v = <org.apache.zookeeper.server.quorum.QuorumPeer$ServerState: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState LOOKING>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedEpoch>;
v = interfaceinvoke v.<org.apache.zookeeper.server.quorum.flexible.QuorumVerifier: java.lang.String toString()>();
v = <java.nio.charset.StandardCharsets: java.nio.charset.Charset UTF_8>;
v = virtualinvoke v.<java.lang.String: byte[] getBytes(java.nio.charset.Charset)>(v);
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection$ToSend: void <init>(org.apache.zookeeper.server.quorum.FastLeaderElection$ToSend$mType,long,long,long,org.apache.zookeeper.server.quorum.QuorumPeer$ServerState,long,long,byte[])>(v, v, v, v, v, v, v, v);
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[6];
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[0] = v;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[1] = v;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[2] = v;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[3] = v;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: long getMyId()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[4] = v;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedEpoch>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[5] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Sending Notification: {} (n.leader), 0x{} (n.zxid), 0x{} (n.round), {} (recipient), {} (myid), 0x{} (n.peerEpoch) ", v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.LinkedBlockingQueue sendqueue>;
virtualinvoke v.<java.util.concurrent.LinkedBlockingQueue: boolean offer(java.lang.Object)>(v);
goto label;
label:
return;
}
protected boolean totalOrderPredicate(long, long, long, long, long, long)
{
org.apache.zookeeper.server.quorum.QuorumPeer v;
java.lang.Object[] v;
org.apache.zookeeper.server.quorum.flexible.QuorumVerifier v;
long v, v, v, v, v, v, v;
byte v, v, v, v, v, v;
java.lang.Long v, v;
java.lang.String v, v;
boolean v;
org.slf4j.Logger v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v := @parameter: long;
v := @parameter: long;
v := @parameter: long;
v := @parameter: long;
v := @parameter: long;
v := @parameter: long;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[4];
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[0] = v;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[1] = v;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[2] = v;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[3] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("id: {}, proposed id: {}, zxid: 0x{}, proposed zxid: 0x{}", v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getQuorumVerifier()>();
v = interfaceinvoke v.<org.apache.zookeeper.server.quorum.flexible.QuorumVerifier: long getWeight(long)>(v);
v = v cmp 0L;
if v != 0 goto label;
return 0;
label:
v = v cmp v;
if v > 0 goto label;
v = v cmp v;
if v != 0 goto label;
v = v cmp v;
if v > 0 goto label;
v = v cmp v;
if v != 0 goto label;
v = v cmp v;
if v <= 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
protected org.apache.zookeeper.server.quorum.SyncedLearnerTracker getVoteTracker(java.util.Map, org.apache.zookeeper.server.quorum.Vote)
{
org.apache.zookeeper.server.quorum.QuorumPeer v, v, v, v, v;
org.apache.zookeeper.server.quorum.SyncedLearnerTracker v;
org.apache.zookeeper.server.quorum.Vote v;
org.apache.zookeeper.server.quorum.flexible.QuorumVerifier v, v, v, v, v;
long v, v;
byte v;
java.util.Map v;
boolean v, v;
java.util.Iterator v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
java.util.Set v;
java.lang.Object v, v, v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v := @parameter: java.util.Map;
v := @parameter: org.apache.zookeeper.server.quorum.Vote;
v = new org.apache.zookeeper.server.quorum.SyncedLearnerTracker;
specialinvoke v.<org.apache.zookeeper.server.quorum.SyncedLearnerTracker: void <init>()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getQuorumVerifier()>();
virtualinvoke v.<org.apache.zookeeper.server.quorum.SyncedLearnerTracker: void addQuorumVerifier(org.apache.zookeeper.server.quorum.flexible.QuorumVerifier)>(v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getLastSeenQuorumVerifier()>();
if v == null goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getLastSeenQuorumVerifier()>();
v = interfaceinvoke v.<org.apache.zookeeper.server.quorum.flexible.QuorumVerifier: long getVersion()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getQuorumVerifier()>();
v = interfaceinvoke v.<org.apache.zookeeper.server.quorum.flexible.QuorumVerifier: long getVersion()>();
v = v cmp v;
if v <= 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getLastSeenQuorumVerifier()>();
virtualinvoke v.<org.apache.zookeeper.server.quorum.SyncedLearnerTracker: void addQuorumVerifier(org.apache.zookeeper.server.quorum.flexible.QuorumVerifier)>(v);
label:
v = interfaceinvoke v.<java.util.Map: java.util.Set entrySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.Vote: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
virtualinvoke v.<org.apache.zookeeper.server.quorum.SyncedLearnerTracker: boolean addAck(java.lang.Long)>(v);
goto label;
label:
return v;
}
protected boolean checkLeader(java.util.Map, long, long)
{
org.apache.zookeeper.server.quorum.QuorumPeer v;
long v, v, v, v;
byte v, v;
org.apache.zookeeper.server.quorum.QuorumPeer$ServerState v, v;
java.lang.Long v, v;
java.util.Map v;
boolean v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
java.util.concurrent.atomic.AtomicLong v;
java.lang.Object v, v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v := @parameter: java.util.Map;
v := @parameter: long;
v := @parameter: long;
v = 1;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: long getMyId()>();
v = v cmp v;
if v == 0 goto label;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = 0;
goto label;
label:
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.Vote: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState getState()>();
v = <org.apache.zookeeper.server.quorum.QuorumPeer$ServerState: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState LEADING>;
if v == v goto label;
v = 0;
goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
v = v cmp v;
if v == 0 goto label;
v = 0;
label:
return v;
}
synchronized void updateProposal(long, long, long)
{
java.lang.Object[] v;
org.slf4j.Logger v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
long v, v, v, v, v;
java.lang.Long v, v;
java.lang.String v, v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v := @parameter: long;
v := @parameter: long;
v := @parameter: long;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[4];
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[0] = v;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[1] = v;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[2] = v;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[3] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Updating proposal: {} (newleader), 0x{} (newzxid), {} (oldleader), 0x{} (oldzxid)", v);
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader> = v;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid> = v;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedEpoch> = v;
return;
}
public synchronized org.apache.zookeeper.server.quorum.Vote getVote()
{
org.apache.zookeeper.server.quorum.Vote v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
long v, v, v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedEpoch>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(long,long,long)>(v, v, v);
return v;
}
private org.apache.zookeeper.server.quorum.QuorumPeer$ServerState learningState()
{
org.apache.zookeeper.server.quorum.QuorumPeer v, v, v;
org.slf4j.Logger v, v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
long v, v;
org.apache.zookeeper.server.quorum.QuorumPeer$ServerState v, v;
java.lang.Long v, v;
org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType v, v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType getLearnerType()>();
v = <org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType: org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType PARTICIPANT>;
if v != v goto label;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: long getMyId()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("I am a participant: {}", v);
v = <org.apache.zookeeper.server.quorum.QuorumPeer$ServerState: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState FOLLOWING>;
return v;
label:
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: long getMyId()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("I am an observer: {}", v);
v = <org.apache.zookeeper.server.quorum.QuorumPeer$ServerState: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState OBSERVING>;
return v;
}
private long getInitId()
{
org.apache.zookeeper.server.quorum.QuorumPeer v, v, v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
org.apache.zookeeper.server.quorum.flexible.QuorumVerifier v;
long v, v;
java.lang.Long v;
java.util.Map v;
boolean v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getQuorumVerifier()>();
v = interfaceinvoke v.<org.apache.zookeeper.server.quorum.flexible.QuorumVerifier: java.util.Map getVotingMembers()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: long getMyId()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: long getMyId()>();
return v;
label:
return -9223372036854775808L;
}
private long getInitLastLoggedZxid()
{
org.apache.zookeeper.server.quorum.QuorumPeer v, v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType v, v;
long v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType getLearnerType()>();
v = <org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType: org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType PARTICIPANT>;
if v != v goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: long getLastLoggedZxid()>();
return v;
label:
return -9223372036854775808L;
}
private long getPeerEpoch()
{
org.apache.zookeeper.server.quorum.QuorumPeer v, v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
java.io.IOException v;
long v;
java.lang.RuntimeException v;
java.lang.StackTraceElement[] v;
org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType v, v;
java.lang.String v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType getLearnerType()>();
v = <org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType: org.apache.zookeeper.server.quorum.QuorumPeer$LearnerType PARTICIPANT>;
if v != v goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: long getCurrentEpoch()>();
label:
return v;
label:
v := @caughtexception;
v = new java.lang.RuntimeException;
v = virtualinvoke v.<java.io.IOException: java.lang.String getMessage()>();
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String)>(v);
v = virtualinvoke v.<java.io.IOException: java.lang.StackTraceElement[] getStackTrace()>();
virtualinvoke v.<java.lang.RuntimeException: void setStackTrace(java.lang.StackTraceElement[])>(v);
throw v;
label:
return -9223372036854775808L;
catch java.io.IOException from label to label with label;
}
private void setPeerState(long, org.apache.zookeeper.server.quorum.SyncedLearnerTracker)
{
org.apache.zookeeper.server.quorum.QuorumPeer v, v;
org.apache.zookeeper.server.quorum.SyncedLearnerTracker v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
long v, v;
byte v;
org.apache.zookeeper.server.quorum.QuorumPeer$ServerState v, v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v := @parameter: long;
v := @parameter: org.apache.zookeeper.server.quorum.SyncedLearnerTracker;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: long getMyId()>();
v = v cmp v;
if v != 0 goto label;
v = <org.apache.zookeeper.server.quorum.QuorumPeer$ServerState: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState LEADING>;
goto label;
label:
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState learningState()>();
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: void setPeerState(org.apache.zookeeper.server.quorum.QuorumPeer$ServerState)>(v);
v = <org.apache.zookeeper.server.quorum.QuorumPeer$ServerState: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState LEADING>;
if v != v goto label;
v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.SyncedLearnerTracker leadingVoteSet> = v;
label:
return;
}
public org.apache.zookeeper.server.quorum.Vote lookForLeader() throws java.lang.InterruptedException
{
java.lang.Integer v;
byte v, v, v, v;
java.lang.Long v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.quorum.QuorumCnxManager v, v, v, v, v, v, v, v;
java.lang.Object[] v;
org.apache.zookeeper.server.quorum.flexible.QuorumVerifier v, v;
long v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.concurrent.atomic.AtomicLong v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.quorum.LeaderElectionBean v, v, v, v, v, v, v, v, v, v, v, v, v, v;
int[] v;
int v, v, v, v, v, v;
org.slf4j.Logger v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Object v, v;
org.apache.zookeeper.server.quorum.QuorumPeer v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.quorum.LocalPeerBean v;
org.apache.zookeeper.server.quorum.QuorumPeer$ServerState v, v, v, v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
java.lang.Exception v, v, v, v, v, v, v;
java.lang.Throwable v, v;
org.apache.zookeeper.server.quorum.Vote v, v, v, v, v, v;
java.lang.String v, v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.concurrent.LinkedBlockingQueue v, v, v;
org.apache.zookeeper.server.quorum.SyncedLearnerTracker v, v;
java.util.HashMap v, v;
org.apache.zookeeper.jmx.MBeanRegistry v, v, v, v, v, v, v;
java.util.concurrent.TimeUnit v, v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = new org.apache.zookeeper.server.quorum.LeaderElectionBean;
specialinvoke v.<org.apache.zookeeper.server.quorum.LeaderElectionBean: void <init>()>();
v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean> = v;
v = staticinvoke <org.apache.zookeeper.jmx.MBeanRegistry: org.apache.zookeeper.jmx.MBeanRegistry getInstance()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LocalPeerBean jmxLocalPeerBean>;
virtualinvoke v.<org.apache.zookeeper.jmx.MBeanRegistry: void register(org.apache.zookeeper.jmx.ZKMBeanInfo,org.apache.zookeeper.jmx.ZKMBeanInfo)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Failed to register with JMX", v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean> = null;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v.<org.apache.zookeeper.server.quorum.QuorumPeer: long start_fle> = v;
label:
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: int minNotificationInterval>;
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long incrementAndGet()>();
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long getInitId()>();
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long getInitLastLoggedZxid()>();
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long getPeerEpoch()>();
virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void updateProposal(long,long,long)>(v, v, v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: long getMyId()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("New election. My id = {}, proposed zxid=0x{}", v, v);
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void sendNotifications()>();
v = null;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState getPeerState()>();
v = <org.apache.zookeeper.server.quorum.QuorumPeer$ServerState: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState LOOKING>;
if v != v goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean stop>;
if v != 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.LinkedBlockingQueue recvqueue>;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit MILLISECONDS>;
v = virtualinvoke v.<java.util.concurrent.LinkedBlockingQueue: java.lang.Object poll(long,java.util.concurrent.TimeUnit)>(v, v);
if v != null goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumCnxManager manager>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumCnxManager: boolean haveDelivered()>();
if v == 0 goto label;
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void sendNotifications()>();
goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumCnxManager manager>;
virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumCnxManager: void connectAll()>();
label:
v = v << 1;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: int maxNotificationInterval>;
v = staticinvoke <java.lang.Math: int min(int,int)>(v, v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getQuorumVerifier()>();
v = v instanceof org.apache.zookeeper.server.quorum.flexible.QuorumOracleMaj;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getQuorumVerifier()>();
v = v;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: int minNotificationInterval>;
if v == v goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = interfaceinvoke v.<org.apache.zookeeper.server.quorum.flexible.QuorumVerifier: boolean revalidateVoteset(org.apache.zookeeper.server.quorum.SyncedLearnerTracker,boolean)>(v, v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader>;
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void setPeerState(long,org.apache.zookeeper.server.quorum.SyncedLearnerTracker)>(v, v);
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedEpoch>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(long,long,long,long)>(v, v, v, v);
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void leaveInstance(org.apache.zookeeper.server.quorum.Vote)>(v);
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
if v == null goto label;
v = staticinvoke <org.apache.zookeeper.jmx.MBeanRegistry: org.apache.zookeeper.jmx.MBeanRegistry getInstance()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
virtualinvoke v.<org.apache.zookeeper.jmx.MBeanRegistry: void unregister(org.apache.zookeeper.jmx.ZKMBeanInfo)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Failed to unregister with JMX", v);
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean> = null;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumCnxManager manager>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumCnxManager: long getConnectionThreadCount()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Number of connection processing threads: {}", v);
return v;
label:
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("Notification time out: {} ms", v);
goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long sid>;
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean validVoter(long)>(v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean validVoter(long)>(v);
if v == 0 goto label;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection$1: int[] $SwitchMap$org$apache$zookeeper$server$quorum$QuorumPeer$ServerState>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState state>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer$ServerState: int ordinal()>();
v = v[v];
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
default: goto label;
};
label:
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long getInitLastLoggedZxid()>();
v = v cmp -1L;
if v != 0 goto label;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Ignoring notification as our zxid is -1");
goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v cmp -1L;
if v != 0 goto label;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long sid>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Ignoring notification from member with -1 zxid {}", v);
goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
v = v cmp v;
if v <= 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: void set(long)>(v);
interfaceinvoke v.<java.util.Map: void clear()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long getInitId()>();
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long getInitLastLoggedZxid()>();
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long getPeerEpoch()>();
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean totalOrderPredicate(long,long,long,long,long,long)>(v, v, v, v, v, v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void updateProposal(long,long,long)>(v, v, v);
goto label;
label:
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long getInitId()>();
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long getInitLastLoggedZxid()>();
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long getPeerEpoch()>();
virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void updateProposal(long,long,long)>(v, v, v);
label:
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void sendNotifications()>();
goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
v = v cmp v;
if v >= 0 goto label;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Notification election epoch is smaller than logicalclock. n.electionEpoch = 0x{}, logicalclock=0x{}", v, v);
goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedEpoch>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean totalOrderPredicate(long,long,long,long,long,long)>(v, v, v, v, v, v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void updateProposal(long,long,long)>(v, v, v);
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void sendNotifications()>();
label:
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[4];
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long sid>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[0] = v;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[1] = v;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[2] = v;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[3] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Adding vote: from={}, proposed leader={}, proposed zxid=0x{}, proposed election epoch=0x{}", v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long sid>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(long,long,long,long)>(v, v, v, v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedEpoch>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(long,long,long,long)>(v, v, v, v);
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.SyncedLearnerTracker getVoteTracker(java.util.Map,org.apache.zookeeper.server.quorum.Vote)>(v, v);
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.SyncedLearnerTracker: boolean hasAllQuorums()>();
if v == 0 goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.LinkedBlockingQueue recvqueue>;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit MILLISECONDS>;
v = virtualinvoke v.<java.util.concurrent.LinkedBlockingQueue: java.lang.Object poll(long,java.util.concurrent.TimeUnit)>(200L, v);
if v == null goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedEpoch>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean totalOrderPredicate(long,long,long,long,long,long)>(v, v, v, v, v, v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.LinkedBlockingQueue recvqueue>;
virtualinvoke v.<java.util.concurrent.LinkedBlockingQueue: void put(java.lang.Object)>(v);
label:
if v != null goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader>;
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void setPeerState(long,org.apache.zookeeper.server.quorum.SyncedLearnerTracker)>(v, v);
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedLeader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedZxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: long proposedEpoch>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(long,long,long,long)>(v, v, v, v);
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void leaveInstance(org.apache.zookeeper.server.quorum.Vote)>(v);
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
if v == null goto label;
v = staticinvoke <org.apache.zookeeper.jmx.MBeanRegistry: org.apache.zookeeper.jmx.MBeanRegistry getInstance()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
virtualinvoke v.<org.apache.zookeeper.jmx.MBeanRegistry: void unregister(org.apache.zookeeper.jmx.ZKMBeanInfo)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Failed to unregister with JMX", v);
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean> = null;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumCnxManager manager>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumCnxManager: long getConnectionThreadCount()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Number of connection processing threads: {}", v);
return v;
label:
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long sid>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Notification from observer: {}", v);
goto label;
label:
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.Vote receivedFollowingNotification(java.util.Map,java.util.Map,org.apache.zookeeper.server.quorum.SyncedLearnerTracker,org.apache.zookeeper.server.quorum.FastLeaderElection$Notification)>(v, v, v, v);
if v == null goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
if v == null goto label;
v = staticinvoke <org.apache.zookeeper.jmx.MBeanRegistry: org.apache.zookeeper.jmx.MBeanRegistry getInstance()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
virtualinvoke v.<org.apache.zookeeper.jmx.MBeanRegistry: void unregister(org.apache.zookeeper.jmx.ZKMBeanInfo)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Failed to unregister with JMX", v);
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean> = null;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumCnxManager manager>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumCnxManager: long getConnectionThreadCount()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Number of connection processing threads: {}", v);
return v;
label:
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.Vote receivedLeadingNotification(java.util.Map,java.util.Map,org.apache.zookeeper.server.quorum.SyncedLearnerTracker,org.apache.zookeeper.server.quorum.FastLeaderElection$Notification)>(v, v, v, v);
if v == null goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
if v == null goto label;
v = staticinvoke <org.apache.zookeeper.jmx.MBeanRegistry: org.apache.zookeeper.jmx.MBeanRegistry getInstance()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
virtualinvoke v.<org.apache.zookeeper.jmx.MBeanRegistry: void unregister(org.apache.zookeeper.jmx.ZKMBeanInfo)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Failed to unregister with JMX", v);
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean> = null;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumCnxManager manager>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumCnxManager: long getConnectionThreadCount()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Number of connection processing threads: {}", v);
return v;
label:
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState state>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long sid>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object,java.lang.Object)>("Notification state unrecognized: {} (n.state), {}(n.sid)", v, v);
goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean validVoter(long)>(v);
if v != 0 goto label;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long sid>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object,java.lang.Object)>("Ignoring notification for non-cluster member sid {} from sid {}", v, v);
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long sid>;
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean validVoter(long)>(v);
if v != 0 goto label;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long sid>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object,java.lang.Object)>("Ignoring notification for sid {} from non-quorum member sid {}", v, v);
goto label;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
if v == null goto label;
v = staticinvoke <org.apache.zookeeper.jmx.MBeanRegistry: org.apache.zookeeper.jmx.MBeanRegistry getInstance()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
virtualinvoke v.<org.apache.zookeeper.jmx.MBeanRegistry: void unregister(org.apache.zookeeper.jmx.ZKMBeanInfo)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Failed to unregister with JMX", v);
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean> = null;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumCnxManager manager>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumCnxManager: long getConnectionThreadCount()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Number of connection processing threads: {}", v);
return null;
label:
v := @caughtexception;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
if v == null goto label;
v = staticinvoke <org.apache.zookeeper.jmx.MBeanRegistry: org.apache.zookeeper.jmx.MBeanRegistry getInstance()>();
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean>;
virtualinvoke v.<org.apache.zookeeper.jmx.MBeanRegistry: void unregister(org.apache.zookeeper.jmx.ZKMBeanInfo)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Failed to unregister with JMX", v);
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.LeaderElectionBean jmxLeaderElectionBean> = null;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumCnxManager manager>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumCnxManager: long getConnectionThreadCount()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Number of connection processing threads: {}", v);
throw v;
catch java.lang.Exception from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Exception from label to label with label;
}
private org.apache.zookeeper.server.quorum.Vote receivedFollowingNotification(java.util.Map, java.util.Map, org.apache.zookeeper.server.quorum.SyncedLearnerTracker, org.apache.zookeeper.server.quorum.FastLeaderElection$Notification)
{
byte v;
org.apache.zookeeper.server.quorum.QuorumPeer$ServerState v, v, v, v;
java.lang.Long v, v;
java.util.Map v, v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
org.apache.zookeeper.server.quorum.FastLeaderElection$Notification v;
java.lang.Throwable v;
org.apache.zookeeper.server.quorum.Vote v, v, v, v, v, v;
long v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.concurrent.atomic.AtomicLong v, v;
boolean v, v, v, v;
org.apache.zookeeper.server.quorum.SyncedLearnerTracker v, v, v;
int v, v, v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v := @parameter: java.util.Map;
v := @parameter: java.util.Map;
v := @parameter: org.apache.zookeeper.server.quorum.SyncedLearnerTracker;
v := @parameter: org.apache.zookeeper.server.quorum.FastLeaderElection$Notification;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
v = v cmp v;
if v != 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long sid>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState state>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(long,long,long,long,org.apache.zookeeper.server.quorum.QuorumPeer$ServerState)>(v, v, v, v, v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: int version>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState state>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(int,long,long,long,long,org.apache.zookeeper.server.quorum.QuorumPeer$ServerState)>(v, v, v, v, v, v);
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.SyncedLearnerTracker getVoteTracker(java.util.Map,org.apache.zookeeper.server.quorum.Vote)>(v, v);
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.SyncedLearnerTracker: boolean hasAllQuorums()>();
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean checkLeader(java.util.Map,long,long)>(v, v, v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void setPeerState(long,org.apache.zookeeper.server.quorum.SyncedLearnerTracker)>(v, v);
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(long,long,long,long)>(v, v, v, v);
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void leaveInstance(org.apache.zookeeper.server.quorum.Vote)>(v);
return v;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long sid>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: int version>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState state>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(int,long,long,long,long,org.apache.zookeeper.server.quorum.QuorumPeer$ServerState)>(v, v, v, v, v, v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: int version>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: org.apache.zookeeper.server.quorum.QuorumPeer$ServerState state>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(int,long,long,long,long,org.apache.zookeeper.server.quorum.QuorumPeer$ServerState)>(v, v, v, v, v, v);
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.SyncedLearnerTracker getVoteTracker(java.util.Map,org.apache.zookeeper.server.quorum.Vote)>(v, v);
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.SyncedLearnerTracker: boolean hasAllQuorums()>();
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: boolean checkLeader(java.util.Map,long,long)>(v, v, v);
if v == 0 goto label;
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: java.util.concurrent.atomic.AtomicLong logicalclock>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: void set(long)>(v);
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void setPeerState(long,org.apache.zookeeper.server.quorum.SyncedLearnerTracker)>(v, v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(long,long,long,long)>(v, v, v, v);
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void leaveInstance(org.apache.zookeeper.server.quorum.Vote)>(v);
return v;
label:
return null;
catch java.lang.Throwable from label to label with label;
}
private org.apache.zookeeper.server.quorum.Vote receivedLeadingNotification(java.util.Map, java.util.Map, org.apache.zookeeper.server.quorum.SyncedLearnerTracker, org.apache.zookeeper.server.quorum.FastLeaderElection$Notification)
{
org.apache.zookeeper.server.quorum.QuorumPeer v, v;
org.apache.zookeeper.server.quorum.SyncedLearnerTracker v;
org.apache.zookeeper.server.quorum.Vote v, v;
org.apache.zookeeper.server.quorum.flexible.QuorumVerifier v, v;
long v, v, v, v, v;
java.util.Map v, v;
boolean v, v;
org.slf4j.Logger v, v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
org.apache.zookeeper.server.quorum.FastLeaderElection$Notification v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v := @parameter: java.util.Map;
v := @parameter: java.util.Map;
v := @parameter: org.apache.zookeeper.server.quorum.SyncedLearnerTracker;
v := @parameter: org.apache.zookeeper.server.quorum.FastLeaderElection$Notification;
v = specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.Vote receivedFollowingNotification(java.util.Map,java.util.Map,org.apache.zookeeper.server.quorum.SyncedLearnerTracker,org.apache.zookeeper.server.quorum.FastLeaderElection$Notification)>(v, v, v, v);
if v != null goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getQuorumVerifier()>();
v = interfaceinvoke v.<org.apache.zookeeper.server.quorum.flexible.QuorumVerifier: boolean getNeedOracle()>();
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: org.apache.zookeeper.server.quorum.flexible.QuorumVerifier getQuorumVerifier()>();
v = interfaceinvoke v.<org.apache.zookeeper.server.quorum.flexible.QuorumVerifier: boolean askOracle()>();
if v != 0 goto label;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Oracle indicates to follow");
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void setPeerState(long,org.apache.zookeeper.server.quorum.SyncedLearnerTracker)>(v, v);
v = new org.apache.zookeeper.server.quorum.Vote;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long leader>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long zxid>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long electionEpoch>;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection$Notification: long peerEpoch>;
specialinvoke v.<org.apache.zookeeper.server.quorum.Vote: void <init>(long,long,long,long)>(v, v, v, v);
specialinvoke v.<org.apache.zookeeper.server.quorum.FastLeaderElection: void leaveInstance(org.apache.zookeeper.server.quorum.Vote)>(v);
return v;
label:
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Oracle indicates not to follow");
return null;
label:
return v;
}
private boolean validVoter(long)
{
org.apache.zookeeper.server.quorum.QuorumPeer v;
java.lang.Long v;
org.apache.zookeeper.server.quorum.FastLeaderElection v;
java.util.Set v;
long v;
boolean v;
v := @this: org.apache.zookeeper.server.quorum.FastLeaderElection;
v := @parameter: long;
v = v.<org.apache.zookeeper.server.quorum.FastLeaderElection: org.apache.zookeeper.server.quorum.QuorumPeer self>;
v = virtualinvoke v.<org.apache.zookeeper.server.quorum.QuorumPeer: java.util.Set getCurrentAndNextConfigVoters()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
return v;
}
static void <clinit>()
{
byte[] v;
org.slf4j.Logger v, v, v;
java.lang.Integer v, v, v, v;
int v, v, v, v, v, v, v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/zookeeper/server/quorum/FastLeaderElection;");
<org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG> = v;
v = (int) 60000;
<org.apache.zookeeper.server.quorum.FastLeaderElection: int maxNotificationInterval> = v;
<org.apache.zookeeper.server.quorum.FastLeaderElection: int minNotificationInterval> = 200;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: int minNotificationInterval>;
v = staticinvoke <java.lang.Integer: java.lang.Integer getInteger(java.lang.String,int)>("zookeeper.fastleader.minNotificationInterval", v);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
<org.apache.zookeeper.server.quorum.FastLeaderElection: int minNotificationInterval> = v;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: int minNotificationInterval>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("{} = {} ms", "zookeeper.fastleader.minNotificationInterval", v);
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: int maxNotificationInterval>;
v = staticinvoke <java.lang.Integer: java.lang.Integer getInteger(java.lang.String,int)>("zookeeper.fastleader.maxNotificationInterval", v);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
<org.apache.zookeeper.server.quorum.FastLeaderElection: int maxNotificationInterval> = v;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: org.slf4j.Logger LOG>;
v = <org.apache.zookeeper.server.quorum.FastLeaderElection: int maxNotificationInterval>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("{} = {} ms", "zookeeper.fastleader.maxNotificationInterval", v);
v = newarray (byte)[0];
<org.apache.zookeeper.server.quorum.FastLeaderElection: byte[] dummyData> = v;
return;
}
}