public class org.apache.zookeeper.server.ZooKeeperServer extends java.lang.Object implements org.apache.zookeeper.server.SessionTracker$SessionExpirer, org.apache.zookeeper.server.ServerStats$Provider
{
protected static final org.slf4j.Logger LOG;
private static final org.apache.zookeeper.server.RateLogger RATE_LOGGER;
public static final java.lang.String GLOBAL_OUTSTANDING_LIMIT;
public static final java.lang.String ENABLE_EAGER_ACL_CHECK;
public static final java.lang.String SKIP_ACL;
public static final java.lang.String ENFORCE_QUOTA;
static boolean enableEagerACLCheck;
static final boolean skipACL;
public static final boolean enforceQuota;
public static final java.lang.String SASL_SUPER_USER;
public static final java.lang.String ALLOW_SASL_FAILED_CLIENTS;
public static final java.lang.String ZOOKEEPER_DIGEST_ENABLED;
private static boolean digestEnabled;
public static final java.lang.String ZOOKEEPER_SERIALIZE_LAST_PROCESSED_ZXID_ENABLED;
private static boolean serializeLastProcessedZxidEnabled;
public static final java.lang.String CLOSE_SESSION_TXN_ENABLED;
private static boolean closeSessionTxnEnabled;
private volatile java.util.concurrent.CountDownLatch restoreLatch;
protected org.apache.zookeeper.server.ZooKeeperServerBean jmxServerBean;
protected org.apache.zookeeper.server.DataTreeBean jmxDataTreeBean;
public static final int DEFAULT_TICK_TIME;
protected int tickTime;
public static final int DEFAULT_THROTTLED_OP_WAIT_TIME;
protected static volatile int throttledOpWaitTime;
protected int minSessionTimeout;
protected int maxSessionTimeout;
protected int listenBacklog;
protected org.apache.zookeeper.server.SessionTracker sessionTracker;
private org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory;
private org.apache.zookeeper.server.ZKDatabase zkDb;
private org.apache.zookeeper.server.ResponseCache readResponseCache;
private org.apache.zookeeper.server.ResponseCache getChildrenResponseCache;
private final java.util.concurrent.atomic.AtomicLong hzxid;
public static final java.lang.Exception ok;
protected org.apache.zookeeper.server.RequestProcessor firstProcessor;
protected org.apache.zookeeper.server.util.JvmPauseMonitor jvmPauseMonitor;
protected volatile org.apache.zookeeper.server.ZooKeeperServer$State state;
private boolean isResponseCachingEnabled;
protected java.lang.String initialConfig;
protected boolean reconfigEnabled;
private final org.apache.zookeeper.server.util.RequestPathMetricsCollector requestPathMetricsCollector;
private static final int DEFAULT_SNAP_COUNT;
private static final int DEFAULT_GLOBAL_OUTSTANDING_LIMIT;
private boolean localSessionEnabled;
private static final long superSecret;
private final java.util.concurrent.atomic.AtomicInteger requestsInProcess;
final java.util.Deque outstandingChanges;
final java.util.Map outstandingChangesForPath;
protected org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory;
protected org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory;
private final org.apache.zookeeper.server.ServerStats serverStats;
private final org.apache.zookeeper.server.ZooKeeperServerListener listener;
private org.apache.zookeeper.server.ZooKeeperServerShutdownHandler zkShutdownHandler;
private volatile int createSessionTrackerServerId;
private static final java.lang.String FLUSH_DELAY;
private static volatile long flushDelay;
private static final java.lang.String MAX_WRITE_QUEUE_POLL_SIZE;
private static volatile long maxWriteQueuePollTime;
private static final java.lang.String MAX_BATCH_SIZE;
private static volatile int maxBatchSize;
public static final java.lang.String INT_BUFFER_STARTING_SIZE_BYTES;
public static final int DEFAULT_STARTING_BUFFER_SIZE;
public static final int intBufferStartingSizeBytes;
public static final java.lang.String GET_DATA_RESPONSE_CACHE_SIZE;
public static final java.lang.String GET_CHILDREN_RESPONSE_CACHE_SIZE;
private final org.apache.zookeeper.server.BlueThrottle connThrottle;
private org.apache.zookeeper.server.RequestThrottler requestThrottler;
public static final java.lang.String SNAP_COUNT;
private volatile int largeRequestMaxBytes;
private volatile int largeRequestThreshold;
private final java.util.concurrent.atomic.AtomicInteger currentLargeRequestBytes;
private final org.apache.zookeeper.server.AuthenticationHelper authHelper;
public static boolean isEnableEagerACLCheck()
{
boolean v;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean enableEagerACLCheck>;
return v;
}
public static void setEnableEagerACLCheck(boolean)
{
java.lang.Boolean v;
org.slf4j.Logger v;
boolean v;
v := @parameter: boolean;
<org.apache.zookeeper.server.ZooKeeperServer: boolean enableEagerACLCheck> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("Update {} to {}", "zookeeper.enableEagerACLCheck", v);
return;
}
public static boolean isCloseSessionTxnEnabled()
{
boolean v;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean closeSessionTxnEnabled>;
return v;
}
public static void setCloseSessionTxnEnabled(boolean)
{
org.slf4j.Logger v;
java.lang.Boolean v;
boolean v, v;
v := @parameter: boolean;
<org.apache.zookeeper.server.ZooKeeperServer: boolean closeSessionTxnEnabled> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean closeSessionTxnEnabled>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("Update {} to {}", "zookeeper.closeSessionTxn.enabled", v);
return;
}
void removeCnxn(org.apache.zookeeper.server.ServerCnxn)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ServerCnxn v;
org.apache.zookeeper.server.ZKDatabase v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: void removeCnxn(org.apache.zookeeper.server.ServerCnxn)>(v);
return;
}
public void <init>()
{
org.apache.zookeeper.server.ZooKeeperServerListenerImpl v;
org.apache.zookeeper.server.util.RequestPathMetricsCollector v;
java.util.HashMap v;
java.util.concurrent.atomic.AtomicInteger v, v;
org.apache.zookeeper.server.BlueThrottle v;
org.apache.zookeeper.server.ZooKeeperServer$State v;
int v, v, v, v;
org.apache.zookeeper.server.ServerStats v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicLong v;
org.apache.zookeeper.server.AuthenticationHelper v;
java.util.ArrayDeque v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: int tickTime> = 3000;
v = (int) -1;
v.<org.apache.zookeeper.server.ZooKeeperServer: int minSessionTimeout> = v;
v = (int) -1;
v.<org.apache.zookeeper.server.ZooKeeperServer: int maxSessionTimeout> = v;
v = (int) -1;
v.<org.apache.zookeeper.server.ZooKeeperServer: int listenBacklog> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory> = null;
v = new java.util.concurrent.atomic.AtomicLong;
specialinvoke v.<java.util.concurrent.atomic.AtomicLong: void <init>(long)>(0L);
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicLong hzxid> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State INITIAL>;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServer$State state> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: boolean isResponseCachingEnabled> = 1;
v.<org.apache.zookeeper.server.ZooKeeperServer: boolean localSessionEnabled> = 0;
v = new java.util.concurrent.atomic.AtomicInteger;
specialinvoke v.<java.util.concurrent.atomic.AtomicInteger: void <init>(int)>(0);
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger requestsInProcess> = v;
v = new java.util.ArrayDeque;
specialinvoke v.<java.util.ArrayDeque: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.Deque outstandingChanges> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.Map outstandingChangesForPath> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: int createSessionTrackerServerId> = 1;
v = new org.apache.zookeeper.server.BlueThrottle;
specialinvoke v.<org.apache.zookeeper.server.BlueThrottle: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.BlueThrottle connThrottle> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestMaxBytes> = 104857600;
v = (int) -1;
v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestThreshold> = v;
v = new java.util.concurrent.atomic.AtomicInteger;
specialinvoke v.<java.util.concurrent.atomic.AtomicInteger: void <init>(int)>(0);
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger currentLargeRequestBytes> = v;
v = new org.apache.zookeeper.server.AuthenticationHelper;
specialinvoke v.<org.apache.zookeeper.server.AuthenticationHelper: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.AuthenticationHelper authHelper> = v;
v = new org.apache.zookeeper.server.ZooKeeperServerListenerImpl;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServerListenerImpl: void <init>(org.apache.zookeeper.server.ZooKeeperServer)>(v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerListener listener> = v;
v = new org.apache.zookeeper.server.ServerStats;
specialinvoke v.<org.apache.zookeeper.server.ServerStats: void <init>(org.apache.zookeeper.server.ServerStats$Provider)>(v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerStats serverStats> = v;
v = new org.apache.zookeeper.server.util.RequestPathMetricsCollector;
specialinvoke v.<org.apache.zookeeper.server.util.RequestPathMetricsCollector: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.util.RequestPathMetricsCollector requestPathMetricsCollector> = v;
return;
}
public void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog, int, int, int, int, org.apache.zookeeper.server.ZKDatabase, java.lang.String)
{
org.apache.zookeeper.server.ZKDatabase v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
int v, v, v, v;
java.lang.String v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.persistence.FileTxnSnapLog;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: org.apache.zookeeper.server.ZKDatabase;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.zookeeper.server.quorum.QuorumPeerConfig: boolean isReconfigEnabled()>();
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog,int,int,int,int,org.apache.zookeeper.server.ZKDatabase,java.lang.String,boolean)>(v, v, v, v, v, v, v, v);
return;
}
public void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog, int, int, int, int, org.apache.zookeeper.server.ZKDatabase, java.lang.String, boolean)
{
java.lang.Integer v, v, v, v, v, v;
java.util.concurrent.atomic.AtomicInteger v, v;
org.apache.zookeeper.server.BlueThrottle v;
boolean v;
org.apache.zookeeper.server.ServerStats v, v;
org.apache.zookeeper.server.AuthenticationHelper v;
java.lang.Object[] v;
org.apache.zookeeper.server.ZooKeeperServerListenerImpl v;
org.apache.zookeeper.server.ZKDatabase v;
org.apache.zookeeper.server.util.RequestPathMetricsCollector v;
java.util.HashMap v;
org.apache.zookeeper.server.ResponseCache v, v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v, v;
org.apache.zookeeper.server.ZooKeeperServer$State v;
int v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v;
org.slf4j.Logger v;
java.io.File v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicLong v;
java.util.ArrayDeque v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.persistence.FileTxnSnapLog;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: org.apache.zookeeper.server.ZKDatabase;
v := @parameter: java.lang.String;
v := @parameter: boolean;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: int tickTime> = 3000;
v = (int) -1;
v.<org.apache.zookeeper.server.ZooKeeperServer: int minSessionTimeout> = v;
v = (int) -1;
v.<org.apache.zookeeper.server.ZooKeeperServer: int maxSessionTimeout> = v;
v = (int) -1;
v.<org.apache.zookeeper.server.ZooKeeperServer: int listenBacklog> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory> = null;
v = new java.util.concurrent.atomic.AtomicLong;
specialinvoke v.<java.util.concurrent.atomic.AtomicLong: void <init>(long)>(0L);
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicLong hzxid> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State INITIAL>;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServer$State state> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: boolean isResponseCachingEnabled> = 1;
v.<org.apache.zookeeper.server.ZooKeeperServer: boolean localSessionEnabled> = 0;
v = new java.util.concurrent.atomic.AtomicInteger;
specialinvoke v.<java.util.concurrent.atomic.AtomicInteger: void <init>(int)>(0);
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger requestsInProcess> = v;
v = new java.util.ArrayDeque;
specialinvoke v.<java.util.ArrayDeque: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.Deque outstandingChanges> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.Map outstandingChangesForPath> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: int createSessionTrackerServerId> = 1;
v = new org.apache.zookeeper.server.BlueThrottle;
specialinvoke v.<org.apache.zookeeper.server.BlueThrottle: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.BlueThrottle connThrottle> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestMaxBytes> = 104857600;
v = (int) -1;
v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestThreshold> = v;
v = new java.util.concurrent.atomic.AtomicInteger;
specialinvoke v.<java.util.concurrent.atomic.AtomicInteger: void <init>(int)>(0);
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger currentLargeRequestBytes> = v;
v = new org.apache.zookeeper.server.AuthenticationHelper;
specialinvoke v.<org.apache.zookeeper.server.AuthenticationHelper: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.AuthenticationHelper authHelper> = v;
v = new org.apache.zookeeper.server.ServerStats;
specialinvoke v.<org.apache.zookeeper.server.ServerStats: void <init>(org.apache.zookeeper.server.ServerStats$Provider)>(v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerStats serverStats> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory> = v;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerStats serverStats>;
virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: void setServerStats(org.apache.zookeeper.server.ServerStats)>(v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: int tickTime> = v;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setMinSessionTimeout(int)>(v);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setMaxSessionTimeout(int)>(v);
v.<org.apache.zookeeper.server.ZooKeeperServer: int listenBacklog> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: boolean reconfigEnabled> = v;
v = new org.apache.zookeeper.server.ZooKeeperServerListenerImpl;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServerListenerImpl: void <init>(org.apache.zookeeper.server.ZooKeeperServer)>(v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerListener listener> = v;
v = new org.apache.zookeeper.server.ResponseCache;
v = staticinvoke <java.lang.Integer: java.lang.Integer getInteger(java.lang.String,int)>("zookeeper.maxResponseCacheSize", 400);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
specialinvoke v.<org.apache.zookeeper.server.ResponseCache: void <init>(int,java.lang.String)>(v, "getData");
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ResponseCache readResponseCache> = v;
v = new org.apache.zookeeper.server.ResponseCache;
v = staticinvoke <java.lang.Integer: java.lang.Integer getInteger(java.lang.String,int)>("zookeeper.maxGetChildrenResponseCacheSize", 400);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
specialinvoke v.<org.apache.zookeeper.server.ResponseCache: void <init>(int,java.lang.String)>(v, "getChildren");
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ResponseCache getChildrenResponseCache> = v;
v.<org.apache.zookeeper.server.ZooKeeperServer: java.lang.String initialConfig> = v;
v = new org.apache.zookeeper.server.util.RequestPathMetricsCollector;
specialinvoke v.<org.apache.zookeeper.server.util.RequestPathMetricsCollector: void <init>()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.util.RequestPathMetricsCollector requestPathMetricsCollector> = v;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void initLargeRequestThrottlingSettings()>();
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[6];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[0] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getMinSessionTimeout()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[1] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getMaxSessionTimeout()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[2] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getClientPortListenBacklog()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[3] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: java.io.File getDataDir()>();
v[4] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: java.io.File getSnapDir()>();
v[5] = v;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object[])>("Created server with tickTime {} ms minSessionTimeout {} ms maxSessionTimeout {} ms clientPortListenBacklog {} datadir {} snapdir {}", v);
return;
}
public java.lang.String getInitialConfig()
{
org.apache.zookeeper.server.ZooKeeperServer v;
java.lang.String v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.lang.String initialConfig>;
return v;
}
public void <init>(org.apache.zookeeper.server.util.JvmPauseMonitor, org.apache.zookeeper.server.persistence.FileTxnSnapLog, int, int, int, int, org.apache.zookeeper.server.ZKDatabase, java.lang.String)
{
org.slf4j.Logger v;
org.apache.zookeeper.server.ZKDatabase v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
int v, v, v, v;
java.lang.String v;
org.apache.zookeeper.server.util.JvmPauseMonitor v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.util.JvmPauseMonitor;
v := @parameter: org.apache.zookeeper.server.persistence.FileTxnSnapLog;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: org.apache.zookeeper.server.ZKDatabase;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.zookeeper.server.quorum.QuorumPeerConfig: boolean isReconfigEnabled()>();
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog,int,int,int,int,org.apache.zookeeper.server.ZKDatabase,java.lang.String,boolean)>(v, v, v, v, v, v, v, v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.util.JvmPauseMonitor jvmPauseMonitor> = v;
if v == null goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Added JvmPauseMonitor to server");
label:
return;
}
public void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog, int, java.lang.String)
{
org.apache.zookeeper.server.ZKDatabase v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
int v, v, v, v;
java.lang.String v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.persistence.FileTxnSnapLog;
v := @parameter: int;
v := @parameter: java.lang.String;
v = new org.apache.zookeeper.server.ZKDatabase;
specialinvoke v.<org.apache.zookeeper.server.ZKDatabase: void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog)>(v);
v = staticinvoke <org.apache.zookeeper.server.quorum.QuorumPeerConfig: boolean isReconfigEnabled()>();
v = (int) -1;
v = (int) -1;
v = (int) -1;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog,int,int,int,int,org.apache.zookeeper.server.ZKDatabase,java.lang.String,boolean)>(v, v, v, v, v, v, v, v);
return;
}
public org.apache.zookeeper.server.ServerStats serverStats()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ServerStats v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerStats serverStats>;
return v;
}
public org.apache.zookeeper.server.util.RequestPathMetricsCollector getRequestPathMetricsCollector()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.util.RequestPathMetricsCollector v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.util.RequestPathMetricsCollector requestPathMetricsCollector>;
return v;
}
public org.apache.zookeeper.server.BlueThrottle connThrottle()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.BlueThrottle v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.BlueThrottle connThrottle>;
return v;
}
public void dumpConf(java.io.PrintWriter)
{
org.apache.zookeeper.server.ZKDatabase v, v;
long v, v, v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v, v;
int v, v, v, v, v, v, v;
java.lang.String v, v;
java.io.PrintWriter v;
java.io.File v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: java.io.PrintWriter;
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("clientPort=");
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getClientPort()>();
virtualinvoke v.<java.io.PrintWriter: void println(int)>(v);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("secureClientPort=");
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getSecureClientPort()>();
virtualinvoke v.<java.io.PrintWriter: void println(int)>(v);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("dataDir=");
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.persistence.FileTxnSnapLog snapLog>;
v = virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: java.io.File getSnapDir()>();
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("dataDirSize=");
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: long getDataDirSize()>();
virtualinvoke v.<java.io.PrintWriter: void println(long)>(v);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("dataLogDir=");
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.persistence.FileTxnSnapLog snapLog>;
v = virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: java.io.File getDataDir()>();
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("dataLogSize=");
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: long getLogDirSize()>();
virtualinvoke v.<java.io.PrintWriter: void println(long)>(v);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("tickTime=");
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getTickTime()>();
virtualinvoke v.<java.io.PrintWriter: void println(int)>(v);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("maxClientCnxns=");
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getMaxClientCnxnsPerHost()>();
virtualinvoke v.<java.io.PrintWriter: void println(int)>(v);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("minSessionTimeout=");
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getMinSessionTimeout()>();
virtualinvoke v.<java.io.PrintWriter: void println(int)>(v);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("maxSessionTimeout=");
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getMaxSessionTimeout()>();
virtualinvoke v.<java.io.PrintWriter: void println(int)>(v);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("clientPortListenBacklog=");
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getClientPortListenBacklog()>();
virtualinvoke v.<java.io.PrintWriter: void println(int)>(v);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("serverId=");
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: long getServerId()>();
virtualinvoke v.<java.io.PrintWriter: void println(long)>(v);
return;
}
public org.apache.zookeeper.server.ZooKeeperServerConf getConf()
{
org.apache.zookeeper.server.ZKDatabase v, v;
long v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v, v;
int v, v, v, v, v, v;
java.lang.String v, v;
java.io.File v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZooKeeperServerConf v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = new org.apache.zookeeper.server.ZooKeeperServerConf;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getClientPort()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.persistence.FileTxnSnapLog snapLog>;
v = virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: java.io.File getSnapDir()>();
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.persistence.FileTxnSnapLog snapLog>;
v = virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: java.io.File getDataDir()>();
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getTickTime()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getMaxClientCnxnsPerHost()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getMinSessionTimeout()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getMaxSessionTimeout()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: long getServerId()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getClientPortListenBacklog()>();
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServerConf: void <init>(int,java.lang.String,java.lang.String,int,int,int,int,long,int)>(v, v, v, v, v, v, v, v, v);
return v;
}
public void <init>(java.io.File, java.io.File, int) throws java.io.IOException
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
int v;
java.io.File v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: java.io.File;
v := @parameter: java.io.File;
v := @parameter: int;
v = new org.apache.zookeeper.server.persistence.FileTxnSnapLog;
specialinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: void <init>(java.io.File,java.io.File)>(v, v);
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog,int,java.lang.String)>(v, v, "");
return;
}
public void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog) throws java.io.IOException
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
org.apache.zookeeper.server.ZKDatabase v;
int v, v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.persistence.FileTxnSnapLog;
v = new org.apache.zookeeper.server.ZKDatabase;
specialinvoke v.<org.apache.zookeeper.server.ZKDatabase: void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog)>(v);
v = staticinvoke <org.apache.zookeeper.server.quorum.QuorumPeerConfig: boolean isReconfigEnabled()>();
v = (int) -1;
v = (int) -1;
v = (int) -1;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog,int,int,int,int,org.apache.zookeeper.server.ZKDatabase,java.lang.String,boolean)>(v, 3000, v, v, v, v, "", v);
return;
}
public org.apache.zookeeper.server.ZKDatabase getZKDatabase()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZKDatabase v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
return v;
}
public void setZKDatabase(org.apache.zookeeper.server.ZKDatabase)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZKDatabase v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ZKDatabase;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb> = v;
return;
}
public void loadData() throws java.io.IOException, java.lang.InterruptedException
{
org.apache.zookeeper.server.ZKDatabase v, v, v, v;
java.util.function.Predicate v;
java.util.Collection v;
long v, v;
java.util.function.Consumer v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.stream.Stream v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: boolean isInitialized()>();
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long getDataTreeLastProcessedZxid()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setZxid(long)>(v);
goto label;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long loadDataBase()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setZxid(long)>(v);
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: java.util.Collection getSessions()>();
v = interfaceinvoke v.<java.util.Collection: java.util.stream.Stream stream()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$lambda_loadData_0__104: java.util.function.Predicate bootstrap$(org.apache.zookeeper.server.ZooKeeperServer)>(v);
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$lambda_loadData_1__105: java.util.function.Consumer bootstrap$(org.apache.zookeeper.server.ZooKeeperServer)>(v);
interfaceinvoke v.<java.util.stream.Stream: void forEach(java.util.function.Consumer)>(v);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: java.io.File takeSnapshot()>();
return;
}
public java.io.File takeSnapshot() throws java.io.IOException
{
org.apache.zookeeper.server.ZooKeeperServer v;
java.io.File v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: java.io.File takeSnapshot(boolean)>(0);
return v;
}
public java.io.File takeSnapshot(boolean) throws java.io.IOException
{
org.apache.zookeeper.server.ZooKeeperServer v;
java.io.File v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: boolean;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: java.io.File takeSnapshot(boolean,boolean,boolean)>(v, 1, 0);
return v;
}
public synchronized java.io.File takeSnapshot(boolean, boolean, boolean) throws java.io.IOException
{
org.apache.zookeeper.server.ZKDatabase v, v, v;
long v, v, v;
org.apache.zookeeper.metrics.Summary v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
java.lang.Long v;
org.apache.zookeeper.server.ServerMetrics v;
int v;
boolean v, v, v;
org.slf4j.Logger v, v;
java.util.concurrent.ConcurrentHashMap v;
java.io.IOException v;
org.apache.zookeeper.server.ExitCode v;
java.io.File v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: boolean;
v := @parameter: boolean;
v := @parameter: boolean;
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = null;
label:
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long fastForwardDataBase()>();
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataTree getDataTree()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: java.util.concurrent.ConcurrentHashMap getSessionWithTimeOuts()>();
v = virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: java.io.File save(org.apache.zookeeper.server.DataTree,java.util.concurrent.ConcurrentHashMap,boolean)>(v, v, v);
label:
goto label;
label:
v := @caughtexception;
if v == 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Severe unrecoverable error, exiting", v);
v = <org.apache.zookeeper.server.ExitCode: org.apache.zookeeper.server.ExitCode TXNLOG_ERROR_TAKING_SNAPSHOT>;
v = virtualinvoke v.<org.apache.zookeeper.server.ExitCode: int getValue()>();
staticinvoke <org.apache.zookeeper.util.ServiceUtils: void requestSystemExit(int)>(v);
goto label;
label:
throw v;
label:
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = v - v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("Snapshot taken in {} ms", v);
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.Summary SNAPSHOT_TIME>;
interfaceinvoke v.<org.apache.zookeeper.metrics.Summary: void add(long)>(v);
return v;
catch java.io.IOException from label to label with label;
}
public synchronized long restoreFromSnapshot(java.io.InputStream) throws java.io.IOException
{
java.util.zip.CheckedInputStream v;
java.io.BufferedInputStream v;
java.lang.Integer v, v, v;
org.apache.zookeeper.metrics.Summary v;
java.util.zip.Adler v;
java.lang.Long v, v, v, v, v, v, v;
java.util.concurrent.CountDownLatch v, v, v;
java.lang.Throwable v;
java.lang.Object[] v, v, v;
org.apache.zookeeper.server.ZKDatabase v, v, v, v, v, v, v;
long v, v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
org.apache.zookeeper.server.ServerMetrics v;
int v, v, v;
org.slf4j.Logger v, v, v, v;
java.lang.IllegalArgumentException v;
org.apache.jute.BinaryInputArchive v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.DataTree v, v, v;
java.io.InputStream v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: java.io.InputStream;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("InputStream can not be null when restoring from snapshot");
throw v;
label:
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long getDataTreeLastProcessedZxid()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[0] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataTree dataTree>;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: int getNodeCount()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[1] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long getSessionCount()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object[])>("Before restore database. lastProcessedZxid={}, nodeCount={}\uff0csessionCount={}", v);
v = new org.apache.zookeeper.server.ZKDatabase;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory>;
specialinvoke v.<org.apache.zookeeper.server.ZKDatabase: void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog)>(v);
v = new java.util.zip.CheckedInputStream;
v = new java.io.BufferedInputStream;
specialinvoke v.<java.io.BufferedInputStream: void <init>(java.io.InputStream)>(v);
v = new java.util.zip.Adler;
specialinvoke v.<java.util.zip.Adler32: void <init>()>();
specialinvoke v.<java.util.zip.CheckedInputStream: void <init>(java.io.InputStream,java.util.zip.Checksum)>(v, v);
v = staticinvoke <org.apache.jute.BinaryInputArchive: org.apache.jute.BinaryInputArchive getArchive(java.io.InputStream)>(v);
virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: void deserializeSnapshot(org.apache.jute.InputArchive,java.util.zip.CheckedInputStream)>(v, v);
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long getDataTreeLastProcessedZxid()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[0] = v;
v = v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataTree dataTree>;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: int getNodeCount()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[1] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long getSessionCount()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object[])>("Restored to a new database. lastProcessedZxid={}, nodeCount={}, sessionCount={}", v);
v = new java.util.concurrent.CountDownLatch;
specialinvoke v.<java.util.concurrent.CountDownLatch: void <init>(int)>(1);
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.CountDownLatch restoreLatch> = v;
label:
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setZKDatabase(org.apache.zookeeper.server.ZKDatabase)>(v);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void createSessionTracker()>();
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.CountDownLatch restoreLatch>;
virtualinvoke v.<java.util.concurrent.CountDownLatch: void countDown()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.CountDownLatch restoreLatch> = null;
goto label;
label:
v := @caughtexception;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.CountDownLatch restoreLatch>;
virtualinvoke v.<java.util.concurrent.CountDownLatch: void countDown()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.CountDownLatch restoreLatch> = null;
throw v;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long getDataTreeLastProcessedZxid()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[0] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataTree dataTree>;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: int getNodeCount()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[1] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long getSessionCount()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object[])>("After restore database. lastProcessedZxid={}, nodeCount={}, sessionCount={}", v);
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = v - v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("Restore taken in {} ms", v);
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.Summary RESTORE_TIME>;
interfaceinvoke v.<org.apache.zookeeper.metrics.Summary: void add(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: long getLastProcessedZxid()>();
return v;
catch java.lang.Throwable from label to label with label;
}
public boolean shouldForceWriteInitialSnapshotAfterLeaderElection()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory>;
v = virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: boolean shouldForceWriteInitialSnapshotAfterLeaderElection()>();
return v;
}
public long getDataDirSize()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
org.apache.zookeeper.server.ZKDatabase v, v;
long v;
java.io.File v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
if v != null goto label;
return 0L;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.persistence.FileTxnSnapLog snapLog>;
v = virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: java.io.File getDataDir()>();
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: long getDirSize(java.io.File)>(v);
return v;
}
public long getLogDirSize()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
org.apache.zookeeper.server.ZKDatabase v, v;
long v;
java.io.File v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
if v != null goto label;
return 0L;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.persistence.FileTxnSnapLog snapLog>;
v = virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: java.io.File getSnapDir()>();
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: long getDirSize(java.io.File)>(v);
return v;
}
private long getDirSize(java.io.File)
{
long v, v;
java.io.File v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
int v, v;
java.io.File[] v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: java.io.File;
v = 0L;
v = virtualinvoke v.<java.io.File: boolean isDirectory()>();
if v == 0 goto label;
v = virtualinvoke v.<java.io.File: java.io.File[] listFiles()>();
if v == null goto label;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: long getDirSize(java.io.File)>(v);
v = v + v;
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.io.File: long length()>();
label:
return v;
}
public long getZxid()
{
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicLong v;
long v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicLong hzxid>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
return v;
}
public org.apache.zookeeper.server.SessionTracker getSessionTracker()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.SessionTracker v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
return v;
}
long getNextZxid()
{
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicLong v;
long v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicLong hzxid>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long incrementAndGet()>();
return v;
}
public void setZxid(long)
{
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicLong v;
long v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: long;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicLong hzxid>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: void set(long)>(v);
return;
}
private void close(long)
{
org.apache.zookeeper.server.Request v;
org.apache.zookeeper.server.ZooKeeperServer v;
int v;
long v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: long;
v = new org.apache.zookeeper.server.Request;
v = (int) -11;
specialinvoke v.<org.apache.zookeeper.server.Request: void <init>(org.apache.zookeeper.server.ServerCnxn,long,int,int,org.apache.zookeeper.server.RequestRecord,java.util.List)>(null, v, 0, v, null, null);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void submitRequest(org.apache.zookeeper.server.Request)>(v);
return;
}
public void closeSession(long)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.slf4j.Logger v;
long v;
java.lang.String v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: long;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("Closing session 0x{}", v);
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void close(long)>(v);
return;
}
protected void killSession(long, long)
{
org.slf4j.Logger v, v;
org.apache.zookeeper.server.ZKDatabase v;
long v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.SessionTracker v, v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: long;
v := @parameter: long;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: void killSession(long,long)>(v, v);
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isTraceEnabled()>();
if v == 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("ZooKeeperServer --- killSession: 0x\u0001");
staticinvoke <org.apache.zookeeper.server.ZooTrace: void logTraceMessage(org.slf4j.Logger,long,java.lang.String)>(v, 32L, v);
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker: void removeSession(long)>(v);
label:
return;
}
public void expire(org.apache.zookeeper.server.SessionTracker$Session)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.slf4j.Logger v;
org.apache.zookeeper.server.SessionTracker$Session v;
int v;
long v;
java.lang.String v;
java.lang.Integer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.SessionTracker$Session;
v = interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker$Session: long getSessionId()>();
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker$Session: int getTimeout()>();
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)>("Expiring session 0x{}, timeout of {}ms exceeded", v, v);
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void close(long)>(v);
return;
}
public void expire(long)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.slf4j.Logger v;
long v;
java.lang.String v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: long;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("forcibly expiring session 0x{}", v);
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void close(long)>(v);
return;
}
void touch(org.apache.zookeeper.server.ServerCnxn) throws org.apache.zookeeper.server.ZooKeeperServer$MissingSessionException
{
long v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.SessionTracker v;
int v;
org.apache.zookeeper.server.ZooKeeperServer$MissingSessionException v;
org.apache.zookeeper.server.ServerCnxn v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
if v != null goto label;
return;
label:
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: long getSessionId()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int getSessionTimeout()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
v = interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker: boolean touchSession(long,int)>(v, v);
if v != 0 goto label;
v = new org.apache.zookeeper.server.ZooKeeperServer$MissingSessionException;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("No session with sessionid 0x\u exists, probably expired and removed");
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer$MissingSessionException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
protected void registerJMX()
{
org.slf4j.Logger v, v;
org.apache.zookeeper.server.ZKDatabase v;
org.apache.zookeeper.jmx.MBeanRegistry v, v;
org.apache.zookeeper.server.DataTreeBean v, v;
java.lang.Exception v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZooKeeperServerBean v, v, v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
label:
v = new org.apache.zookeeper.server.ZooKeeperServerBean;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServerBean: void <init>(org.apache.zookeeper.server.ZooKeeperServer)>(v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerBean jmxServerBean> = v;
v = staticinvoke <org.apache.zookeeper.jmx.MBeanRegistry: org.apache.zookeeper.jmx.MBeanRegistry getInstance()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerBean jmxServerBean>;
virtualinvoke v.<org.apache.zookeeper.jmx.MBeanRegistry: void register(org.apache.zookeeper.jmx.ZKMBeanInfo,org.apache.zookeeper.jmx.ZKMBeanInfo)>(v, null);
label:
v = new org.apache.zookeeper.server.DataTreeBean;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataTree getDataTree()>();
specialinvoke v.<org.apache.zookeeper.server.DataTreeBean: void <init>(org.apache.zookeeper.server.DataTree)>(v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.DataTreeBean jmxDataTreeBean> = v;
v = staticinvoke <org.apache.zookeeper.jmx.MBeanRegistry: org.apache.zookeeper.jmx.MBeanRegistry getInstance()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.DataTreeBean jmxDataTreeBean>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerBean jmxServerBean>;
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.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Failed to register with JMX", v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.DataTreeBean jmxDataTreeBean> = null;
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Failed to register with JMX", v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerBean jmxServerBean> = null;
label:
return;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
}
public void startdata() throws java.io.IOException, java.lang.InterruptedException
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
org.apache.zookeeper.server.ZKDatabase v, v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
if v != null goto label;
v = new org.apache.zookeeper.server.ZKDatabase;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory>;
specialinvoke v.<org.apache.zookeeper.server.ZKDatabase: void <init>(org.apache.zookeeper.server.persistence.FileTxnSnapLog)>(v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb> = v;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: boolean isInitialized()>();
if v != 0 goto label;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void loadData()>();
label:
return;
}
public synchronized void startup()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZooKeeperServer$State v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State RUNNING>;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void startupWithServerState(org.apache.zookeeper.server.ZooKeeperServer$State)>(v);
return;
}
public synchronized void startupWithoutServing()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZooKeeperServer$State v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State INITIAL>;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void startupWithServerState(org.apache.zookeeper.server.ZooKeeperServer$State)>(v);
return;
}
public synchronized void startServing()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZooKeeperServer$State v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State RUNNING>;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setState(org.apache.zookeeper.server.ZooKeeperServer$State)>(v);
virtualinvoke v.<java.lang.Object: void notifyAll()>();
return;
}
private void startupWithServerState(org.apache.zookeeper.server.ZooKeeperServer$State)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.SessionTracker v, v;
org.apache.zookeeper.server.ZooKeeperServer$State v;
org.apache.zookeeper.server.util.RequestPathMetricsCollector v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ZooKeeperServer$State;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
if v != null goto label;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void createSessionTracker()>();
label:
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void startSessionTracker()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setupRequestProcessors()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void startRequestThrottler()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void registerJMX()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void startJvmPauseMonitor()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void registerMetrics()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setState(org.apache.zookeeper.server.ZooKeeperServer$State)>(v);
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.util.RequestPathMetricsCollector requestPathMetricsCollector>;
virtualinvoke v.<org.apache.zookeeper.server.util.RequestPathMetricsCollector: void start()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
v = interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker: boolean isLocalSessionsEnabled()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: boolean localSessionEnabled> = v;
virtualinvoke v.<java.lang.Object: void notifyAll()>();
return;
}
protected void startJvmPauseMonitor()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.util.JvmPauseMonitor v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.util.JvmPauseMonitor jvmPauseMonitor>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.util.JvmPauseMonitor jvmPauseMonitor>;
virtualinvoke v.<org.apache.zookeeper.server.util.JvmPauseMonitor: void serviceStart()>();
label:
return;
}
protected void startRequestThrottler()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.RequestThrottler v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler createRequestThrottler()>();
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler requestThrottler> = v;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler requestThrottler>;
virtualinvoke v.<org.apache.zookeeper.server.RequestThrottler: void start()>();
return;
}
protected org.apache.zookeeper.server.RequestThrottler createRequestThrottler()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.RequestThrottler v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = new org.apache.zookeeper.server.RequestThrottler;
specialinvoke v.<org.apache.zookeeper.server.RequestThrottler: void <init>(org.apache.zookeeper.server.ZooKeeperServer)>(v);
return v;
}
protected void setupRequestProcessors()
{
org.apache.zookeeper.server.PrepRequestProcessor v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.FinalRequestProcessor v;
org.apache.zookeeper.server.SyncRequestProcessor v;
org.apache.zookeeper.server.RequestProcessor v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = new org.apache.zookeeper.server.FinalRequestProcessor;
specialinvoke v.<org.apache.zookeeper.server.FinalRequestProcessor: void <init>(org.apache.zookeeper.server.ZooKeeperServer)>(v);
v = new org.apache.zookeeper.server.SyncRequestProcessor;
specialinvoke v.<org.apache.zookeeper.server.SyncRequestProcessor: void <init>(org.apache.zookeeper.server.ZooKeeperServer,org.apache.zookeeper.server.RequestProcessor)>(v, v);
virtualinvoke v.<org.apache.zookeeper.server.SyncRequestProcessor: void start()>();
v = new org.apache.zookeeper.server.PrepRequestProcessor;
specialinvoke v.<org.apache.zookeeper.server.PrepRequestProcessor: void <init>(org.apache.zookeeper.server.ZooKeeperServer,org.apache.zookeeper.server.RequestProcessor)>(v, v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestProcessor firstProcessor> = v;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestProcessor firstProcessor>;
virtualinvoke v.<org.apache.zookeeper.server.PrepRequestProcessor: void start()>();
return;
}
public org.apache.zookeeper.server.ZooKeeperServerListener getZooKeeperServerListener()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZooKeeperServerListener v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerListener listener>;
return v;
}
public void setCreateSessionTrackerServerId(int)
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: int;
v.<org.apache.zookeeper.server.ZooKeeperServer: int createSessionTrackerServerId> = v;
return;
}
protected void createSessionTracker()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZKDatabase v;
int v, v;
java.util.concurrent.ConcurrentHashMap v;
org.apache.zookeeper.server.ZooKeeperServerListener v;
org.apache.zookeeper.server.SessionTrackerImpl v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = new org.apache.zookeeper.server.SessionTrackerImpl;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: java.util.concurrent.ConcurrentHashMap getSessionWithTimeOuts()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int tickTime>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int createSessionTrackerServerId>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerListener getZooKeeperServerListener()>();
specialinvoke v.<org.apache.zookeeper.server.SessionTrackerImpl: void <init>(org.apache.zookeeper.server.SessionTracker$SessionExpirer,java.util.concurrent.ConcurrentMap,int,long,org.apache.zookeeper.server.ZooKeeperServerListener)>(v, v, v, v, v);
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker> = v;
return;
}
protected void startSessionTracker()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.SessionTracker v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
virtualinvoke v.<org.apache.zookeeper.server.SessionTrackerImpl: void start()>();
return;
}
protected void setState(org.apache.zookeeper.server.ZooKeeperServer$State)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.slf4j.Logger v;
org.apache.zookeeper.server.ZooKeeperServer$State v;
org.apache.zookeeper.server.ZooKeeperServerShutdownHandler v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ZooKeeperServer$State;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServer$State state> = v;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerShutdownHandler zkShutdownHandler>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerShutdownHandler zkShutdownHandler>;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServerShutdownHandler: void handle(org.apache.zookeeper.server.ZooKeeperServer$State)>(v);
goto label;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("ZKShutdownHandler is not registered, so ZooKeeper server won\'t take any action on ERROR or SHUTDOWN server state changes");
label:
return;
}
protected boolean canShutdown()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZooKeeperServer$State v, v, v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServer$State state>;
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State RUNNING>;
if v == v goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServer$State state>;
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State ERROR>;
if v != v goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public boolean isRunning()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZooKeeperServer$State v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServer$State state>;
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State RUNNING>;
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public void shutdown()
{
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void shutdown(boolean)>(0);
return;
}
public synchronized void shutdown(boolean)
{
org.apache.zookeeper.server.ZKDatabase v, v, v, v, v, v;
org.apache.zookeeper.server.util.RequestPathMetricsCollector v;
org.apache.zookeeper.server.SessionTracker v, v;
org.apache.zookeeper.server.ZooKeeperServer$State v;
org.apache.zookeeper.server.RequestProcessor v, v;
org.apache.zookeeper.server.RequestThrottler v, v;
org.apache.zookeeper.server.util.JvmPauseMonitor v, v;
boolean v, v;
org.slf4j.Logger v, v, v;
java.io.IOException v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: boolean;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: boolean canShutdown()>();
if v != 0 goto label;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: void clear()>();
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("ZooKeeper server is not running, so not proceeding to shutdown!");
return;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("shutting down");
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State SHUTDOWN>;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setState(org.apache.zookeeper.server.ZooKeeperServer$State)>(v);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void unregisterMetrics()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler requestThrottler>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler requestThrottler>;
virtualinvoke v.<org.apache.zookeeper.server.RequestThrottler: void shutdown()>();
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker: void shutdown()>();
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestProcessor firstProcessor>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestProcessor firstProcessor>;
interfaceinvoke v.<org.apache.zookeeper.server.RequestProcessor: void shutdown()>();
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.util.JvmPauseMonitor jvmPauseMonitor>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.util.JvmPauseMonitor jvmPauseMonitor>;
virtualinvoke v.<org.apache.zookeeper.server.util.JvmPauseMonitor: void serviceStop()>();
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
if v == null goto label;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: void clear()>();
goto label;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long fastForwardDataBase()>();
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Error updating DB", v);
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: void clear()>();
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.util.RequestPathMetricsCollector requestPathMetricsCollector>;
virtualinvoke v.<org.apache.zookeeper.server.util.RequestPathMetricsCollector: void shutdown()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void unregisterJMX()>();
return;
catch java.io.IOException from label to label with label;
}
protected void unregisterJMX()
{
org.slf4j.Logger v, v;
org.apache.zookeeper.jmx.MBeanRegistry v, v;
org.apache.zookeeper.server.DataTreeBean v, v;
java.lang.Exception v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZooKeeperServerBean v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.DataTreeBean jmxDataTreeBean>;
if v == null goto label;
v = staticinvoke <org.apache.zookeeper.jmx.MBeanRegistry: org.apache.zookeeper.jmx.MBeanRegistry getInstance()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.DataTreeBean jmxDataTreeBean>;
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.ZooKeeperServer: 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.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerBean jmxServerBean>;
if v == null goto label;
v = staticinvoke <org.apache.zookeeper.jmx.MBeanRegistry: org.apache.zookeeper.jmx.MBeanRegistry getInstance()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerBean jmxServerBean>;
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.ZooKeeperServer: 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.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerBean jmxServerBean> = null;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.DataTreeBean jmxDataTreeBean> = null;
return;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
}
public void incInProcess()
{
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicInteger v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger requestsInProcess>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int incrementAndGet()>();
return;
}
public void decInProcess()
{
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicInteger v;
org.apache.zookeeper.server.RequestThrottler v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger requestsInProcess>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int decrementAndGet()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler requestThrottler>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler requestThrottler>;
virtualinvoke v.<org.apache.zookeeper.server.RequestThrottler: void throttleWake()>();
label:
return;
}
public int getInProcess()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicInteger v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger requestsInProcess>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int get()>();
return v;
}
public int getInflight()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int requestThrottleInflight()>();
return v;
}
private int requestThrottleInflight()
{
org.apache.zookeeper.server.ZooKeeperServer v;
int v;
org.apache.zookeeper.server.RequestThrottler v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler requestThrottler>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler requestThrottler>;
v = virtualinvoke v.<org.apache.zookeeper.server.RequestThrottler: int getInflight()>();
return v;
label:
return 0;
}
byte[] generatePasswd(long)
{
org.apache.zookeeper.server.ZooKeeperServer v;
byte[] v;
java.util.Random v;
long v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: long;
v = new java.util.Random;
v = v ^ 3007405056L;
specialinvoke v.<java.util.Random: void <init>(long)>(v);
v = newarray (byte)[16];
virtualinvoke v.<java.util.Random: void nextBytes(byte[])>(v);
return v;
}
protected boolean checkPasswd(long, byte[])
{
org.apache.zookeeper.server.ZooKeeperServer v;
byte[] v, v;
byte v;
long v;
boolean v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: long;
v := @parameter: byte[];
v = v cmp 0L;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: byte[] generatePasswd(long)>(v);
v = staticinvoke <java.util.Arrays: boolean equals(byte[],byte[])>(v, v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
long createSession(org.apache.zookeeper.server.ServerCnxn, byte[], int)
{
byte[] v;
java.util.Random v;
long v, v;
org.apache.zookeeper.server.Request v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.txn.CreateSessionTxn v;
org.apache.zookeeper.server.SessionTracker v;
int v, v;
org.apache.zookeeper.server.RequestRecord v;
org.apache.zookeeper.server.ServerCnxn v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
v := @parameter: byte[];
v := @parameter: int;
if v != null goto label;
v = newarray (byte)[0];
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
v = interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker: long createSession(int)>(v);
v = new java.util.Random;
v = v ^ 3007405056L;
specialinvoke v.<java.util.Random: void <init>(long)>(v);
virtualinvoke v.<java.util.Random: void nextBytes(byte[])>(v);
v = new org.apache.zookeeper.txn.CreateSessionTxn;
specialinvoke v.<org.apache.zookeeper.txn.CreateSessionTxn: void <init>(int)>(v);
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void setSessionId(long)>(v);
v = new org.apache.zookeeper.server.Request;
v = staticinvoke <org.apache.zookeeper.server.RequestRecord: org.apache.zookeeper.server.RequestRecord fromRecord(org.apache.jute.Record)>(v);
v = (int) -10;
specialinvoke v.<org.apache.zookeeper.server.Request: void <init>(org.apache.zookeeper.server.ServerCnxn,long,int,int,org.apache.zookeeper.server.RequestRecord,java.util.List)>(v, v, 0, v, v, null);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void submitRequest(org.apache.zookeeper.server.Request)>(v);
return v;
}
public void setOwner(long, java.lang.Object) throws org.apache.zookeeper.KeeperException$SessionExpiredException
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.SessionTracker v;
java.lang.Object v;
long v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: long;
v := @parameter: java.lang.Object;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker: void setOwner(long,java.lang.Object)>(v, v);
return;
}
protected void revalidateSession(org.apache.zookeeper.server.ServerCnxn, long, int) throws java.io.IOException
{
org.slf4j.Logger v, v;
long v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.SessionTracker v;
int v;
org.apache.zookeeper.server.ServerCnxn v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
v := @parameter: long;
v := @parameter: int;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
v = interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker: boolean touchSession(long,int)>(v, v);
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isTraceEnabled()>();
if v == 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,boolean)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Session 0x\u is valid: \u0001");
staticinvoke <org.apache.zookeeper.server.ZooTrace: void logTraceMessage(org.slf4j.Logger,long,java.lang.String)>(v, 32L, v);
label:
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void finishSessionInit(org.apache.zookeeper.server.ServerCnxn,boolean)>(v, v);
return;
}
public void reopenSession(org.apache.zookeeper.server.ServerCnxn, long, byte[], int) throws java.io.IOException
{
byte[] v;
org.slf4j.Logger v;
long v;
java.net.InetSocketAddress v;
org.apache.zookeeper.server.ZooKeeperServer v;
int v;
org.apache.zookeeper.server.ServerCnxn v;
java.lang.String v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
v := @parameter: long;
v := @parameter: byte[];
v := @parameter: int;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: boolean checkPasswd(long,byte[])>(v, v);
if v == 0 goto label;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void revalidateSession(org.apache.zookeeper.server.ServerCnxn,long,int)>(v, v, v);
goto label;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object,java.lang.Object)>("Incorrect password from {} for session 0x{}", v, v);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void finishSessionInit(org.apache.zookeeper.server.ServerCnxn,boolean)>(v, 0);
label:
return;
}
public void finishSessionInit(org.apache.zookeeper.server.ServerCnxn, boolean)
{
byte[] v, v;
org.apache.jute.BinaryOutputArchive v;
java.lang.Integer v;
java.nio.ByteBuffer v, v, v;
org.apache.zookeeper.server.ServerCnxn v;
boolean v, v, v, v;
java.nio.ByteBuffer[] v, v;
java.util.Set v, v;
java.net.InetSocketAddress v, v;
java.lang.Exception v, v;
java.lang.Object[] v;
java.io.ByteArrayOutputStream v;
long v, v, v, v;
org.apache.zookeeper.server.ServerCnxnFactory v, v, v, v, v, v;
org.apache.zookeeper.server.ServerCnxn$DisconnectReason v;
int v, v, v, v, v;
java.lang.String v, v;
org.slf4j.Logger v, v, v, v;
org.apache.zookeeper.proto.ConnectResponse v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
v := @parameter: boolean;
label:
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
v = v.<org.apache.zookeeper.server.ServerCnxnFactory: java.util.Set cnxns>;
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxnFactory: void registerConnection(org.apache.zookeeper.server.ServerCnxn)>(v);
goto label;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
v = v.<org.apache.zookeeper.server.ServerCnxnFactory: java.util.Set cnxns>;
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxnFactory: void registerConnection(org.apache.zookeeper.server.ServerCnxn)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Failed to register with JMX", v);
label:
v = new org.apache.zookeeper.proto.ConnectResponse;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int getSessionTimeout()>();
goto label;
label:
v = 0;
label:
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: long getSessionId()>();
goto label;
label:
v = 0L;
label:
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: long getSessionId()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: byte[] generatePasswd(long)>(v);
goto label;
label:
v = newarray (byte)[16];
label:
v = v instanceof org.apache.zookeeper.server.quorum.ReadOnlyZooKeeperServer;
specialinvoke v.<org.apache.zookeeper.proto.ConnectResponse: void <init>(int,int,long,byte[],boolean)>(0, v, v, v, v);
v = new java.io.ByteArrayOutputStream;
specialinvoke v.<java.io.ByteArrayOutputStream: void <init>()>();
v = staticinvoke <org.apache.jute.BinaryOutputArchive: org.apache.jute.BinaryOutputArchive getArchive(java.io.OutputStream)>(v);
v = (int) -1;
virtualinvoke v.<org.apache.jute.BinaryOutputArchive: void writeInt(int,java.lang.String)>(v, "len");
virtualinvoke v.<org.apache.zookeeper.proto.ConnectResponse: void serialize(org.apache.jute.OutputArchive,java.lang.String)>(v, "connect");
virtualinvoke v.<java.io.ByteArrayOutputStream: void close()>();
v = virtualinvoke v.<java.io.ByteArrayOutputStream: byte[] toByteArray()>();
v = staticinvoke <java.nio.ByteBuffer: java.nio.ByteBuffer wrap(byte[])>(v);
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
v = v - 4;
v = virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer putInt(int)>(v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer rewind()>();
v = newarray (java.nio.ByteBuffer)[1];
v[0] = v;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void sendBuffer(java.nio.ByteBuffer[])>(v);
if v == 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: long getSessionId()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[0] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int getSessionTimeout()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[1] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Established session 0x{} with negotiated timeout {} for client {}", v);
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void enableRecv()>();
goto label;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: long getSessionId()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("Invalid session 0x{} for client {}, probably expired", v, v);
v = newarray (java.nio.ByteBuffer)[1];
v = <org.apache.zookeeper.server.ServerCnxnFactory: java.nio.ByteBuffer closeConn>;
v[0] = v;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void sendBuffer(java.nio.ByteBuffer[])>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Exception while establishing session, closing", v);
v = <org.apache.zookeeper.server.ServerCnxn$DisconnectReason: org.apache.zookeeper.server.ServerCnxn$DisconnectReason IO_EXCEPTION_IN_SESSION_INIT>;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void close(org.apache.zookeeper.server.ServerCnxn$DisconnectReason)>(v);
label:
return;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
}
public void closeSession(org.apache.zookeeper.server.ServerCnxn, org.apache.zookeeper.proto.RequestHeader)
{
org.apache.zookeeper.proto.RequestHeader v;
org.apache.zookeeper.server.ZooKeeperServer v;
long v;
org.apache.zookeeper.server.ServerCnxn v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
v := @parameter: org.apache.zookeeper.proto.RequestHeader;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: long getSessionId()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void closeSession(long)>(v);
return;
}
public long getServerId()
{
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
return 0L;
}
protected void setLocalSessionFlag(org.apache.zookeeper.server.Request)
{
org.apache.zookeeper.server.Request v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.Request;
return;
}
public void submitRequest(org.apache.zookeeper.server.Request)
{
org.apache.zookeeper.server.Request v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.CountDownLatch v, v;
org.slf4j.Logger v, v;
java.lang.InterruptedException v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.Request;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.CountDownLatch restoreLatch>;
if v == null goto label;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Blocking request submission while restore is in progress");
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.CountDownLatch restoreLatch>;
virtualinvoke v.<java.util.concurrent.CountDownLatch: void await()>();
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Unexpected interruption", v);
label:
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void enqueueRequest(org.apache.zookeeper.server.Request)>(v);
return;
catch java.lang.InterruptedException from label to label with label;
}
public void enqueueRequest(org.apache.zookeeper.server.Request)
{
java.lang.Throwable v;
org.slf4j.Logger v;
java.lang.RuntimeException v;
org.apache.zookeeper.server.Request v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.lang.InterruptedException v;
org.apache.zookeeper.server.ZooKeeperServer$State v, v;
org.apache.zookeeper.server.RequestThrottler v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.Request;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler requestThrottler>;
if v != null goto label;
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServer$State state>;
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State INITIAL>;
if v != v goto label;
virtualinvoke v.<java.lang.Object: void wait(long)>(1000L);
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Unexpected interruption", v);
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler requestThrottler>;
if v != null goto label;
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String)>("Not started");
throw v;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestThrottler requestThrottler>;
virtualinvoke v.<org.apache.zookeeper.server.RequestThrottler: void submitRequest(org.apache.zookeeper.server.Request)>(v);
return;
catch java.lang.InterruptedException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public void submitRequestNow(org.apache.zookeeper.server.Request)
{
java.lang.Throwable v;
java.lang.Integer v;
org.apache.zookeeper.server.ZooKeeperServer$State v, v, v, v;
int v, v;
org.apache.zookeeper.server.RequestProcessor$RequestProcessorException v;
org.apache.zookeeper.server.ServerCnxn v, v;
org.apache.zookeeper.server.RequestProcessor v, v, v;
boolean v;
org.slf4j.Logger v, v, v, v;
java.lang.RuntimeException v;
org.apache.zookeeper.server.UnimplementedRequestProcessor v;
org.apache.zookeeper.server.Request v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.lang.InterruptedException v;
org.apache.zookeeper.server.ZooKeeperServer$MissingSessionException v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.Request;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestProcessor firstProcessor>;
if v != null goto label;
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServer$State state>;
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State INITIAL>;
if v != v goto label;
virtualinvoke v.<java.lang.Object: void wait(long)>(1000L);
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Unexpected interruption", v);
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestProcessor firstProcessor>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServer$State state>;
v = <org.apache.zookeeper.server.ZooKeeperServer$State: org.apache.zookeeper.server.ZooKeeperServer$State RUNNING>;
if v == v goto label;
label:
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String)>("Not started");
throw v;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = v.<org.apache.zookeeper.server.Request: org.apache.zookeeper.server.ServerCnxn cnxn>;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void touch(org.apache.zookeeper.server.ServerCnxn)>(v);
v = v.<org.apache.zookeeper.server.Request: int type>;
v = staticinvoke <org.apache.zookeeper.server.Request: boolean isValid(int)>(v);
if v == 0 goto label;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setLocalSessionFlag(org.apache.zookeeper.server.Request)>(v);
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RequestProcessor firstProcessor>;
interfaceinvoke v.<org.apache.zookeeper.server.RequestProcessor: void processRequest(org.apache.zookeeper.server.Request)>(v);
v = v.<org.apache.zookeeper.server.Request: org.apache.zookeeper.server.ServerCnxn cnxn>;
if v == null goto label;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void incInProcess()>();
goto label;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.Request: int type>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("Received packet at server of unknown type {}", v);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void requestFinished(org.apache.zookeeper.server.Request)>(v);
v = new org.apache.zookeeper.server.UnimplementedRequestProcessor;
specialinvoke v.<org.apache.zookeeper.server.UnimplementedRequestProcessor: void <init>()>();
virtualinvoke v.<org.apache.zookeeper.server.UnimplementedRequestProcessor: void processRequest(org.apache.zookeeper.server.Request)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Throwable)>("Dropping request.", v);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void requestFinished(org.apache.zookeeper.server.Request)>(v);
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Unable to process request", v);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void requestFinished(org.apache.zookeeper.server.Request)>(v);
label:
return;
catch java.lang.InterruptedException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch org.apache.zookeeper.server.ZooKeeperServer$MissingSessionException from label to label with label;
catch org.apache.zookeeper.server.RequestProcessor$RequestProcessorException from label to label with label;
}
public static int getSnapCount()
{
int v;
org.slf4j.Logger v;
java.lang.Integer v;
v = staticinvoke <java.lang.Integer: java.lang.Integer getInteger(java.lang.String,int)>("zookeeper.snapCount", 100000);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
if v >= 2 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>("SnapCount should be 2 or more. Now, snapCount is reset to 2");
v = 2;
label:
return v;
}
public int getGlobalOutstandingLimit()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.lang.Integer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = staticinvoke <java.lang.Integer: java.lang.Integer getInteger(java.lang.String,int)>("zookeeper.globalOutstandingLimit", 1000);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
return v;
}
public static long getSnapSizeInBytes()
{
org.slf4j.Logger v;
byte v;
java.lang.Long v, v;
long v, v;
v = staticinvoke <java.lang.Long: java.lang.Long getLong(java.lang.String,long)>("zookeeper.snapSizeLimitInKb", 4194304L);
v = virtualinvoke v.<java.lang.Long: long longValue()>();
v = v cmp 0L;
if v > 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("zookeeper.snapSizeLimitInKb set to a non-positive value {}; disabling feature", v);
label:
v = v * 1024L;
return v;
}
public void setServerCnxnFactory(org.apache.zookeeper.server.ServerCnxnFactory)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ServerCnxnFactory v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxnFactory;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory> = v;
return;
}
public org.apache.zookeeper.server.ServerCnxnFactory getServerCnxnFactory()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ServerCnxnFactory v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
return v;
}
public org.apache.zookeeper.server.ServerCnxnFactory getSecureServerCnxnFactory()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ServerCnxnFactory v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
return v;
}
public void setSecureServerCnxnFactory(org.apache.zookeeper.server.ServerCnxnFactory)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ServerCnxnFactory v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxnFactory;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory> = v;
return;
}
public long getLastProcessedZxid()
{
org.apache.zookeeper.server.ZooKeeperServer v;
long v;
org.apache.zookeeper.server.ZKDatabase v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long getDataTreeLastProcessedZxid()>();
return v;
}
public long getOutstandingRequests()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getInProcess()>();
return v;
}
public int getNumAliveConnections()
{
org.apache.zookeeper.server.ServerCnxnFactory v, v, v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
int v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = 0;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxnFactory: int getNumAliveConnections()>();
v = 0 + v;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxnFactory: int getNumAliveConnections()>();
v = v + v;
label:
return v;
}
public void truncateLog(long) throws java.io.IOException
{
org.apache.zookeeper.server.ZooKeeperServer v;
long v;
org.apache.zookeeper.server.ZKDatabase v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: long;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: boolean truncateLog(long)>(v);
return;
}
public int getTickTime()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int tickTime>;
return v;
}
public void setTickTime(int)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.slf4j.Logger v;
int v;
java.lang.Integer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: int;
v = <org.apache.zookeeper.server.ZooKeeperServer: 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)>("tickTime set to {} ms", v);
v.<org.apache.zookeeper.server.ZooKeeperServer: int tickTime> = v;
return;
}
public static int getThrottledOpWaitTime()
{
int v;
v = <org.apache.zookeeper.server.ZooKeeperServer: int throttledOpWaitTime>;
return v;
}
public static void setThrottledOpWaitTime(int)
{
int v;
org.slf4j.Logger v;
java.lang.Integer v;
v := @parameter: int;
v = <org.apache.zookeeper.server.ZooKeeperServer: 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)>("throttledOpWaitTime set to {} ms", v);
<org.apache.zookeeper.server.ZooKeeperServer: int throttledOpWaitTime> = v;
return;
}
public int getMinSessionTimeout()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int minSessionTimeout>;
return v;
}
public void setMinSessionTimeout(int)
{
org.slf4j.Logger v;
java.lang.Integer v;
org.apache.zookeeper.server.ZooKeeperServer v;
int v, v, v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: int;
v = (int) -1;
if v != v goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int tickTime>;
v = v * 2;
goto label;
label:
v = v;
label:
v.<org.apache.zookeeper.server.ZooKeeperServer: int minSessionTimeout> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int minSessionTimeout>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("minSessionTimeout set to {} ms", v);
return;
}
public int getMaxSessionTimeout()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int maxSessionTimeout>;
return v;
}
public void setMaxSessionTimeout(int)
{
org.slf4j.Logger v;
java.lang.Integer v;
org.apache.zookeeper.server.ZooKeeperServer v;
int v, v, v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: int;
v = (int) -1;
if v != v goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int tickTime>;
v = v * 20;
goto label;
label:
v = v;
label:
v.<org.apache.zookeeper.server.ZooKeeperServer: int maxSessionTimeout> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int maxSessionTimeout>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("maxSessionTimeout set to {} ms", v);
return;
}
public int getClientPortListenBacklog()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int listenBacklog>;
return v;
}
public void setClientPortListenBacklog(int)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.slf4j.Logger v;
int v;
java.lang.Integer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: int;
v.<org.apache.zookeeper.server.ZooKeeperServer: int listenBacklog> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: 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)>("clientPortListenBacklog set to {}", v);
return;
}
public int getClientPort()
{
org.apache.zookeeper.server.ZooKeeperServer v;
int v, v;
org.apache.zookeeper.server.ServerCnxnFactory v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxnFactory: int getLocalPort()>();
goto label;
label:
v = (int) -1;
v = v;
label:
return v;
}
public int getSecureClientPort()
{
org.apache.zookeeper.server.ZooKeeperServer v;
int v, v;
org.apache.zookeeper.server.ServerCnxnFactory v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxnFactory: int getLocalPort()>();
goto label;
label:
v = (int) -1;
v = v;
label:
return v;
}
public int getMaxClientCnxnsPerHost()
{
org.apache.zookeeper.server.ServerCnxnFactory v, v, v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
int v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxnFactory: int getMaxClientCnxnsPerHost()>();
return v;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxnFactory: int getMaxClientCnxnsPerHost()>();
return v;
label:
v = (int) -1;
return v;
}
public void setTxnLogFactory(org.apache.zookeeper.server.persistence.FileTxnSnapLog)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.persistence.FileTxnSnapLog;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory> = v;
return;
}
public org.apache.zookeeper.server.persistence.FileTxnSnapLog getTxnLogFactory()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory>;
return v;
}
public long getTxnLogElapsedSyncTime()
{
org.apache.zookeeper.server.ZooKeeperServer v;
long v;
org.apache.zookeeper.server.persistence.FileTxnSnapLog v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.persistence.FileTxnSnapLog txnLogFactory>;
v = virtualinvoke v.<org.apache.zookeeper.server.persistence.FileTxnSnapLog: long getTxnLogElapsedSyncTime()>();
return v;
}
public java.lang.String getState()
{
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
return "standalone";
}
public void dumpEphemerals(java.io.PrintWriter)
{
java.io.PrintWriter v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZKDatabase v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: java.io.PrintWriter;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: void dumpEphemerals(java.io.PrintWriter)>(v);
return;
}
public java.util.Map getEphemerals()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZKDatabase v;
java.util.Map v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: java.util.Map getEphemerals()>();
return v;
}
public double getConnectionDropChance()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.BlueThrottle v;
double v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.BlueThrottle connThrottle>;
v = virtualinvoke v.<org.apache.zookeeper.server.BlueThrottle: double getDropChance()>();
return v;
}
public void processConnectRequest(org.apache.zookeeper.server.ServerCnxn, org.apache.zookeeper.proto.ConnectRequest) throws java.io.IOException, org.apache.zookeeper.server.ClientCnxnLimitException
{
byte[] v;
org.apache.zookeeper.metrics.Counter v, v;
java.lang.Integer v, v;
byte v, v, v;
org.apache.zookeeper.proto.ConnectRequest v;
java.lang.Object[] v, v;
org.apache.zookeeper.server.ZKDatabase v, v;
long v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.ServerCnxnFactory v, v, v, v;
org.apache.zookeeper.server.ServerCnxn$CloseRequestException v, v;
org.apache.zookeeper.server.ServerMetrics v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.metrics.Summary v;
org.apache.zookeeper.server.BlueThrottle v, v, v, v, v, v;
org.apache.zookeeper.server.ServerCnxn v;
boolean v, v, v, v, v, v;
org.apache.zookeeper.server.ClientCnxnLimitException v;
java.net.InetSocketAddress v, v, v, v, v, v;
org.apache.zookeeper.compat.ProtocolManager v;
org.apache.zookeeper.server.ServerCnxn$DisconnectReason v, v, v, v;
int v, v, v, v, v, v, v;
org.slf4j.Logger v, v, v, v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
v := @parameter: org.apache.zookeeper.proto.ConnectRequest;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
v = virtualinvoke v.<org.apache.zookeeper.proto.ConnectRequest: long getLastZxidSeen()>();
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)>("Session establishment request from client {} client\'s lastZxid is 0x{}", v, v);
v = virtualinvoke v.<org.apache.zookeeper.proto.ConnectRequest: long getSessionId()>();
v = 1;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.BlueThrottle connThrottle>;
v = virtualinvoke v.<org.apache.zookeeper.server.BlueThrottle: boolean isConnectionWeightEnabled()>();
if v == 0 goto label;
v = v cmp 0L;
if v != 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: boolean localSessionEnabled>;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.BlueThrottle connThrottle>;
v = virtualinvoke v.<org.apache.zookeeper.server.BlueThrottle: int getRequiredTokensForLocal()>();
goto label;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.BlueThrottle connThrottle>;
v = virtualinvoke v.<org.apache.zookeeper.server.BlueThrottle: int getRequiredTokensForGlobal()>();
goto label;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.BlueThrottle connThrottle>;
v = virtualinvoke v.<org.apache.zookeeper.server.BlueThrottle: int getRequiredTokensForRenew()>();
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.BlueThrottle connThrottle>;
v = virtualinvoke v.<org.apache.zookeeper.server.BlueThrottle: boolean checkLimit(int)>(v);
if v != 0 goto label;
v = new org.apache.zookeeper.server.ClientCnxnLimitException;
specialinvoke v.<org.apache.zookeeper.server.ClientCnxnLimitException: void <init>()>();
throw v;
label:
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.Summary CONNECTION_TOKEN_DEFICIT>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.BlueThrottle connThrottle>;
v = virtualinvoke v.<org.apache.zookeeper.server.BlueThrottle: int getDeficit()>();
interfaceinvoke v.<org.apache.zookeeper.metrics.Summary: void add(long)>(v);
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.Counter CONNECTION_REQUEST_COUNT>;
interfaceinvoke v.<org.apache.zookeeper.metrics.Counter: void add(long)>(1L);
v = v.<org.apache.zookeeper.server.ServerCnxn: org.apache.zookeeper.compat.ProtocolManager protocolManager>;
v = virtualinvoke v.<org.apache.zookeeper.compat.ProtocolManager: boolean isReadonlyAvailable()>();
if v != 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("Connection request from old client {}; will be dropped if server is in r-o mode", v);
label:
v = virtualinvoke v.<org.apache.zookeeper.proto.ConnectRequest: boolean getReadOnly()>();
if v != 0 goto label;
v = v instanceof org.apache.zookeeper.server.quorum.ReadOnlyZooKeeperServer;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.net.InetSocketAddress)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Refusing session request for not-read-only client \u0001");
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
v = new org.apache.zookeeper.server.ServerCnxn$CloseRequestException;
v = <org.apache.zookeeper.server.ServerCnxn$DisconnectReason: org.apache.zookeeper.server.ServerCnxn$DisconnectReason NOT_READ_ONLY_CLIENT>;
specialinvoke v.<org.apache.zookeeper.server.ServerCnxn$CloseRequestException: void <init>(java.lang.String,org.apache.zookeeper.server.ServerCnxn$DisconnectReason)>(v, v);
throw v;
label:
v = virtualinvoke v.<org.apache.zookeeper.proto.ConnectRequest: long getLastZxidSeen()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataTree dataTree>;
v = v.<org.apache.zookeeper.server.DataTree: long lastProcessedZxid>;
v = v cmp v;
if v <= 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
v = virtualinvoke v.<org.apache.zookeeper.proto.ConnectRequest: long getLastZxidSeen()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: long getDataTreeLastProcessedZxid()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.net.InetSocketAddress,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Refusing session request for client \u as it has seen zxid 0x\u our last zxid is 0x\u client must try another server");
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
v = new org.apache.zookeeper.server.ServerCnxn$CloseRequestException;
v = <org.apache.zookeeper.server.ServerCnxn$DisconnectReason: org.apache.zookeeper.server.ServerCnxn$DisconnectReason CLIENT_ZXID_AHEAD>;
specialinvoke v.<org.apache.zookeeper.server.ServerCnxn$CloseRequestException: void <init>(java.lang.String,org.apache.zookeeper.server.ServerCnxn$DisconnectReason)>(v, v);
throw v;
label:
v = virtualinvoke v.<org.apache.zookeeper.proto.ConnectRequest: int getTimeOut()>();
v = virtualinvoke v.<org.apache.zookeeper.proto.ConnectRequest: byte[] getPasswd()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getMinSessionTimeout()>();
if v >= v goto label;
v = v;
label:
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getMaxSessionTimeout()>();
if v <= v goto label;
v = v;
label:
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void setSessionTimeout(int)>(v);
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void disableRecv()>();
v = v cmp 0L;
if v != 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: long createSession(org.apache.zookeeper.server.ServerCnxn,byte[],int)>(v, v, v);
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[4];
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[0] = v;
v = virtualinvoke v.<org.apache.zookeeper.proto.ConnectRequest: long getLastZxidSeen()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[1] = v;
v = virtualinvoke v.<org.apache.zookeeper.proto.ConnectRequest: int getTimeOut()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[2] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
v[3] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Client attempting to establish new session: session = 0x{}, zxid = 0x{}, timeout = {}, address = {}", v);
goto label;
label:
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void validateSession(org.apache.zookeeper.server.ServerCnxn,long)>(v, v);
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[4];
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[0] = v;
v = virtualinvoke v.<org.apache.zookeeper.proto.ConnectRequest: long getLastZxidSeen()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[1] = v;
v = virtualinvoke v.<org.apache.zookeeper.proto.ConnectRequest: int getTimeOut()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[2] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
v[3] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Client attempting to renew session: session = 0x{}, zxid = 0x{}, timeout = {}, address = {}", v);
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
v = <org.apache.zookeeper.server.ServerCnxn$DisconnectReason: org.apache.zookeeper.server.ServerCnxn$DisconnectReason CLIENT_RECONNECT>;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxnFactory: boolean closeSession(long,org.apache.zookeeper.server.ServerCnxn$DisconnectReason)>(v, v);
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory secureServerCnxnFactory>;
v = <org.apache.zookeeper.server.ServerCnxn$DisconnectReason: org.apache.zookeeper.server.ServerCnxn$DisconnectReason CLIENT_RECONNECT>;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxnFactory: boolean closeSession(long,org.apache.zookeeper.server.ServerCnxn$DisconnectReason)>(v, v);
label:
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void setSessionId(long)>(v);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void reopenSession(org.apache.zookeeper.server.ServerCnxn,long,byte[],int)>(v, v, v, v);
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.Counter CONNECTION_REVALIDATE_COUNT>;
interfaceinvoke v.<org.apache.zookeeper.metrics.Counter: void add(long)>(1L);
label:
return;
}
protected void validateSession(org.apache.zookeeper.server.ServerCnxn, long) throws java.io.IOException
{
org.apache.zookeeper.server.ZooKeeperServer v;
long v;
org.apache.zookeeper.server.ServerCnxn v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
v := @parameter: long;
return;
}
public boolean shouldThrottle(long)
{
org.apache.zookeeper.server.ZooKeeperServer v;
byte v;
int v, v, v;
long v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: long;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getGlobalOutstandingLimit()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getInflight()>();
if v < v goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int getInProcess()>();
if v >= v goto label;
label:
v = v cmp 0L;
if v <= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
label:
return 0;
}
long getFlushDelay()
{
org.apache.zookeeper.server.ZooKeeperServer v;
long v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = <org.apache.zookeeper.server.ZooKeeperServer: long flushDelay>;
return v;
}
static void setFlushDelay(long)
{
long v;
org.slf4j.Logger v;
java.lang.Long v;
v := @parameter: long;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("{} = {} ms", "zookeeper.flushDelay", v);
<org.apache.zookeeper.server.ZooKeeperServer: long flushDelay> = v;
return;
}
long getMaxWriteQueuePollTime()
{
org.apache.zookeeper.server.ZooKeeperServer v;
long v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = <org.apache.zookeeper.server.ZooKeeperServer: long maxWriteQueuePollTime>;
return v;
}
static void setMaxWriteQueuePollTime(long)
{
long v;
org.slf4j.Logger v;
java.lang.Long v;
v := @parameter: long;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("{} = {} ms", "zookeeper.maxWriteQueuePollTime", v);
<org.apache.zookeeper.server.ZooKeeperServer: long maxWriteQueuePollTime> = v;
return;
}
int getMaxBatchSize()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = <org.apache.zookeeper.server.ZooKeeperServer: int maxBatchSize>;
return v;
}
static void setMaxBatchSize(int)
{
int v;
org.slf4j.Logger v;
java.lang.Integer v;
v := @parameter: int;
v = <org.apache.zookeeper.server.ZooKeeperServer: 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,java.lang.Object)>("{}={}", "zookeeper.maxBatchSize", v);
<org.apache.zookeeper.server.ZooKeeperServer: int maxBatchSize> = v;
return;
}
private void initLargeRequestThrottlingSettings()
{
org.apache.zookeeper.server.ZooKeeperServer v;
int v, v, v, v;
java.lang.Integer v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestMaxBytes>;
v = staticinvoke <java.lang.Integer: java.lang.Integer getInteger(java.lang.String,int)>("zookeeper.largeRequestMaxBytes", v);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setLargeRequestMaxBytes(int)>(v);
v = (int) -1;
v = staticinvoke <java.lang.Integer: java.lang.Integer getInteger(java.lang.String,int)>("zookeeper.largeRequestThreshold", v);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void setLargeRequestThreshold(int)>(v);
return;
}
public int getLargeRequestMaxBytes()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestMaxBytes>;
return v;
}
public void setLargeRequestMaxBytes(int)
{
org.slf4j.Logger v, v, v;
java.lang.Integer v, v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
int v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: int;
if v > 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("Invalid max bytes for all large requests {}. It should be a positive number.", v);
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestMaxBytes>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("Will not change the setting. The max bytes stay at {}", v);
goto label;
label:
v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestMaxBytes> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestMaxBytes>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("The max bytes for all large requests are set to {}", v);
label:
return;
}
public int getLargeRequestThreshold()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestThreshold>;
return v;
}
public void setLargeRequestThreshold(int)
{
org.slf4j.Logger v, v;
java.lang.Integer v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
int v, v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: int;
if v == 0 goto label;
v = (int) -1;
if v >= v goto label;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("Invalid large request threshold {}. It should be -1 or positive. Setting to -1 ", v);
v = (int) -1;
v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestThreshold> = v;
goto label;
label:
v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestThreshold> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestThreshold>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("The large request threshold is set to {}", v);
label:
return;
}
public int getLargeRequestBytes()
{
int v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicInteger v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger currentLargeRequestBytes>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int get()>();
return v;
}
private boolean isLargeRequest(int)
{
org.apache.zookeeper.server.ZooKeeperServer v;
int v, v, v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: int;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestThreshold>;
v = (int) -1;
if v != v goto label;
return 0;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestThreshold>;
if v <= v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public boolean checkRequestSizeWhenReceivingMessage(int) throws java.io.IOException
{
org.apache.zookeeper.metrics.Counter v;
java.io.IOException v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicInteger v;
org.apache.zookeeper.server.ServerMetrics v;
int v, v, v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: int;
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: boolean isLargeRequest(int)>(v);
if v != 0 goto label;
return 1;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger currentLargeRequestBytes>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int get()>();
v = v + v;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestMaxBytes>;
if v > v goto label;
return 1;
label:
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.Counter LARGE_REQUESTS_REJECTED>;
interfaceinvoke v.<org.apache.zookeeper.metrics.Counter: void add(long)>(1L);
v = new java.io.IOException;
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>("Rejecting large request");
throw v;
}
private boolean checkRequestSizeWhenMessageReceived(int) throws java.io.IOException
{
org.apache.zookeeper.metrics.Counter v;
java.io.IOException v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicInteger v, v;
org.apache.zookeeper.server.ServerMetrics v;
int v, v, v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: int;
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: boolean isLargeRequest(int)>(v);
if v != 0 goto label;
return 1;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger currentLargeRequestBytes>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int addAndGet(int)>(v);
v = v.<org.apache.zookeeper.server.ZooKeeperServer: int largeRequestMaxBytes>;
if v <= v goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger currentLargeRequestBytes>;
v = neg v;
virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int addAndGet(int)>(v);
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.Counter LARGE_REQUESTS_REJECTED>;
interfaceinvoke v.<org.apache.zookeeper.metrics.Counter: void add(long)>(1L);
v = new java.io.IOException;
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>("Rejecting large request");
throw v;
label:
return 1;
}
public void requestFinished(org.apache.zookeeper.server.Request)
{
org.apache.zookeeper.server.Request v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.concurrent.atomic.AtomicInteger v;
int v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.Request;
v = virtualinvoke v.<org.apache.zookeeper.server.Request: int getLargeRequestSize()>();
v = (int) -1;
if v == v goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.concurrent.atomic.AtomicInteger currentLargeRequestBytes>;
v = neg v;
virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int addAndGet(int)>(v);
label:
return;
}
public void processPacket(org.apache.zookeeper.server.ServerCnxn, org.apache.zookeeper.proto.RequestHeader, org.apache.zookeeper.server.RequestRecord) throws java.io.IOException
{
byte[] v;
java.nio.ByteBuffer v;
org.apache.zookeeper.server.RequestRecord v;
org.apache.zookeeper.server.ServerCnxn v;
boolean v, v;
java.nio.ByteBuffer[] v;
org.apache.jute.Record v;
java.net.InetSocketAddress v, v;
org.apache.zookeeper.proto.RequestHeader v;
org.apache.zookeeper.server.Request v;
java.util.List v;
org.apache.zookeeper.server.AuthenticationHelper v;
org.apache.zookeeper.proto.ReplyHeader v, v;
java.lang.Object[] v;
long v, v;
java.util.function.Supplier v;
org.apache.zookeeper.KeeperException$Code v, v, v, v;
int v, v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.auth.ServerAuthenticationProvider$ServerObjs v;
java.lang.String v, v, v;
org.slf4j.Logger v, v, v, v, v;
org.apache.zookeeper.server.auth.ServerAuthenticationProvider v;
java.lang.RuntimeException v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.lang.Object v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
v := @parameter: org.apache.zookeeper.proto.RequestHeader;
v := @parameter: org.apache.zookeeper.server.RequestRecord;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void incrOutstandingAndCheckThrottle(org.apache.zookeeper.proto.RequestHeader)>(v);
v = virtualinvoke v.<org.apache.zookeeper.proto.RequestHeader: int getType()>();
if v != 100 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("got auth packet {}", v);
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$init__106: java.util.function.Supplier bootstrap$()>();
v = interfaceinvoke v.<org.apache.zookeeper.server.RequestRecord: org.apache.jute.Record readRecord(java.util.function.Supplier)>(v);
v = virtualinvoke v.<org.apache.zookeeper.proto.AuthPacket: java.lang.String getScheme()>();
v = staticinvoke <org.apache.zookeeper.server.auth.ProviderRegistry: org.apache.zookeeper.server.auth.ServerAuthenticationProvider getServerProvider(java.lang.String)>(v);
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code AUTHFAILED>;
if v == null goto label;
label:
v = new org.apache.zookeeper.server.auth.ServerAuthenticationProvider$ServerObjs;
specialinvoke v.<org.apache.zookeeper.server.auth.ServerAuthenticationProvider$ServerObjs: void <init>(org.apache.zookeeper.server.ZooKeeperServer,org.apache.zookeeper.server.ServerCnxn)>(v, v);
v = virtualinvoke v.<org.apache.zookeeper.proto.AuthPacket: byte[] getAuth()>();
v = virtualinvoke v.<org.apache.zookeeper.server.auth.ServerAuthenticationProvider: org.apache.zookeeper.KeeperException$Code handleAuthentication(org.apache.zookeeper.server.auth.ServerAuthenticationProvider$ServerObjs,byte[])>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object,java.lang.Object)>("Caught runtime exception from AuthenticationProvider: {}", v, v);
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code AUTHFAILED>;
label:
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
if v != v goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: long getSessionId()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[0] = v;
v[1] = v;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object[])>("Session 0x{}: auth success for scheme {} and address {}", v);
v = new org.apache.zookeeper.proto.ReplyHeader;
v = virtualinvoke v.<org.apache.zookeeper.proto.RequestHeader: int getXid()>();
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
specialinvoke v.<org.apache.zookeeper.proto.ReplyHeader: void <init>(int,long,int)>(v, 0L, v);
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int sendResponse(org.apache.zookeeper.proto.ReplyHeader,org.apache.jute.Record,java.lang.String)>(v, null, null);
goto label;
label:
if v != null goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <org.apache.zookeeper.server.auth.ProviderRegistry: java.lang.String listProviders()>();
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object,java.lang.Object)>("No authentication provider for scheme: {} has {}", v, v);
goto label;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("Authentication failed for scheme: {}", v);
label:
v = new org.apache.zookeeper.proto.ReplyHeader;
v = virtualinvoke v.<org.apache.zookeeper.proto.RequestHeader: int getXid()>();
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code AUTHFAILED>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
specialinvoke v.<org.apache.zookeeper.proto.ReplyHeader: void <init>(int,long,int)>(v, 0L, v);
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int sendResponse(org.apache.zookeeper.proto.ReplyHeader,org.apache.jute.Record,java.lang.String)>(v, null, null);
v = newarray (java.nio.ByteBuffer)[1];
v = <org.apache.zookeeper.server.ServerCnxnFactory: java.nio.ByteBuffer closeConn>;
v[0] = v;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void sendBuffer(java.nio.ByteBuffer[])>(v);
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void disableRecv()>();
label:
return;
label:
v = virtualinvoke v.<org.apache.zookeeper.proto.RequestHeader: int getType()>();
if v != 102 goto label;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void processSasl(org.apache.zookeeper.server.RequestRecord,org.apache.zookeeper.server.ServerCnxn,org.apache.zookeeper.proto.RequestHeader)>(v, v, v);
goto label;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.AuthenticationHelper authHelper>;
v = virtualinvoke v.<org.apache.zookeeper.proto.RequestHeader: int getXid()>();
v = virtualinvoke v.<org.apache.zookeeper.server.AuthenticationHelper: boolean enforceAuthentication(org.apache.zookeeper.server.ServerCnxn,int)>(v, v);
if v != 0 goto label;
return;
label:
v = new org.apache.zookeeper.server.Request;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: long getSessionId()>();
v = virtualinvoke v.<org.apache.zookeeper.proto.RequestHeader: int getXid()>();
v = virtualinvoke v.<org.apache.zookeeper.proto.RequestHeader: int getType()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.util.List getAuthInfo()>();
specialinvoke v.<org.apache.zookeeper.server.Request: void <init>(org.apache.zookeeper.server.ServerCnxn,long,int,int,org.apache.zookeeper.server.RequestRecord,java.util.List)>(v, v, v, v, v, v);
v = interfaceinvoke v.<org.apache.zookeeper.server.RequestRecord: int limit()>();
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: boolean isLargeRequest(int)>(v);
if v == 0 goto label;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: boolean checkRequestSizeWhenMessageReceived(int)>(v);
virtualinvoke v.<org.apache.zookeeper.server.Request: void setLargeRequestSize(int)>(v);
label:
v = <org.apache.zookeeper.server.ServerCnxn: java.lang.Object me>;
virtualinvoke v.<org.apache.zookeeper.server.Request: void setOwner(java.lang.Object)>(v);
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void submitRequest(org.apache.zookeeper.server.Request)>(v);
label:
return;
catch java.lang.RuntimeException from label to label with label;
}
private static boolean isSaslSuperUser(java.lang.String)
{
java.util.Properties v;
java.util.Iterator v;
java.util.Set v;
char v;
int v, v;
java.lang.Object v;
java.lang.String v, v, v;
boolean v, v, v, v;
v := @parameter: java.lang.String;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
label:
return 0;
label:
v = staticinvoke <java.lang.System: java.util.Properties getProperties()>();
v = "zookeeper.superUser";
v = virtualinvoke v.<java.lang.String: int length()>();
v = virtualinvoke v.<java.util.Properties: java.util.Set stringPropertyNames()>();
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.String: boolean startsWith(java.lang.String)>("zookeeper.superUser");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v == v goto label;
v = virtualinvoke v.<java.lang.String: char charAt(int)>(v);
if v != 46 goto label;
label:
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String)>(v);
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
return 1;
label:
return 0;
}
private static boolean shouldAllowSaslFailedClientsConnect()
{
boolean v;
v = staticinvoke <java.lang.Boolean: boolean getBoolean(java.lang.String)>("zookeeper.allowSaslFailedClients");
return v;
}
private void processSasl(org.apache.zookeeper.server.RequestRecord, org.apache.zookeeper.server.ServerCnxn, org.apache.zookeeper.proto.RequestHeader) throws java.io.IOException
{
byte[] v, v;
javax.security.sasl.SaslException v;
java.lang.Integer v, v;
java.lang.NullPointerException v;
org.apache.zookeeper.server.RequestRecord v;
org.apache.zookeeper.server.ServerCnxn v;
boolean v, v, v, v, v;
org.apache.jute.Record v;
java.net.InetSocketAddress v;
org.apache.zookeeper.proto.RequestHeader v;
org.apache.zookeeper.server.AuthenticationHelper v, v;
org.apache.zookeeper.proto.ReplyHeader v, v;
long v, v;
java.util.function.Supplier v;
org.apache.zookeeper.KeeperException$Code v, v, v;
int v, v, v, v, v, v;
java.lang.String v, v, v;
org.slf4j.Logger v, v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.proto.SetSASLResponse v, v;
org.apache.zookeeper.server.ZooKeeperSaslServer v;
org.apache.zookeeper.data.Id v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.RequestRecord;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
v := @parameter: org.apache.zookeeper.proto.RequestHeader;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Responding to client SASL token.");
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$init__107: java.util.function.Supplier bootstrap$()>();
v = interfaceinvoke v.<org.apache.zookeeper.server.RequestRecord: org.apache.jute.Record readRecord(java.util.function.Supplier)>(v);
v = virtualinvoke v.<org.apache.zookeeper.proto.GetSASLRequest: byte[] getToken()>();
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = lengthof v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Size of client SASL token: {}", v);
v = null;
label:
v = v.<org.apache.zookeeper.server.ServerCnxn: org.apache.zookeeper.server.ZooKeeperSaslServer zooKeeperSaslServer>;
label:
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperSaslServer: byte[] evaluateResponse(byte[])>(v);
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperSaslServer: boolean isComplete()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperSaslServer: java.lang.String getAuthorizationID()>();
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: long getSessionId()>();
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)>("Session 0x{}: adding SASL authorization for authorizationID: {}", v, v);
v = new org.apache.zookeeper.data.Id;
specialinvoke v.<org.apache.zookeeper.data.Id: void <init>(java.lang.String,java.lang.String)>("sasl", v);
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void addAuthInfo(org.apache.zookeeper.data.Id)>(v);
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: boolean isSaslSuperUser(java.lang.String)>(v);
if v == 0 goto label;
v = new org.apache.zookeeper.data.Id;
specialinvoke v.<org.apache.zookeeper.data.Id: void <init>(java.lang.String,java.lang.String)>("super", "");
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void addAuthInfo(org.apache.zookeeper.data.Id)>(v);
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: long getSessionId()>();
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)>("Session 0x{}: Authenticated Id \'{}\' as super user", v, v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: java.net.InetSocketAddress getRemoteSocketAddress()>();
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object,java.lang.Object)>("Client {} failed to SASL authenticate: {}", v, v);
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: boolean shouldAllowSaslFailedClientsConnect()>();
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.AuthenticationHelper authHelper>;
v = virtualinvoke v.<org.apache.zookeeper.server.AuthenticationHelper: boolean isSaslAuthRequired()>();
if v != 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>("Maintaining client connection despite SASL authentication failure.");
goto label;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.AuthenticationHelper authHelper>;
v = virtualinvoke v.<org.apache.zookeeper.server.AuthenticationHelper: boolean isSaslAuthRequired()>();
if v == 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>("Closing client connection due to server requires client SASL authenticaiton,but client SASL authentication has failed, or client is not configured with SASL authentication.");
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code SESSIONCLOSEDREQUIRESASLAUTH>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
goto label;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>("Closing client connection due to SASL authentication failure.");
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code AUTHFAILED>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
label:
v = new org.apache.zookeeper.proto.ReplyHeader;
v = virtualinvoke v.<org.apache.zookeeper.proto.RequestHeader: int getXid()>();
specialinvoke v.<org.apache.zookeeper.proto.ReplyHeader: void <init>(int,long,int)>(v, 0L, v);
v = new org.apache.zookeeper.proto.SetSASLResponse;
specialinvoke v.<org.apache.zookeeper.proto.SetSASLResponse: void <init>(byte[])>(null);
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int sendResponse(org.apache.zookeeper.proto.ReplyHeader,org.apache.jute.Record,java.lang.String)>(v, v, "response");
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void sendCloseSession()>();
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: void disableRecv()>();
label:
return;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String)>("cnxn.saslServer is null: cnxn object did not initialize its saslServer properly.");
label:
if v == null goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = lengthof v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Size of server SASL response: {}", v);
label:
v = new org.apache.zookeeper.proto.ReplyHeader;
v = virtualinvoke v.<org.apache.zookeeper.proto.RequestHeader: int getXid()>();
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
specialinvoke v.<org.apache.zookeeper.proto.ReplyHeader: void <init>(int,long,int)>(v, 0L, v);
v = new org.apache.zookeeper.proto.SetSASLResponse;
specialinvoke v.<org.apache.zookeeper.proto.SetSASLResponse: void <init>(byte[])>(v);
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int sendResponse(org.apache.zookeeper.proto.ReplyHeader,org.apache.jute.Record,java.lang.String)>(v, v, "response");
return;
catch javax.security.sasl.SaslException from label to label with label;
catch java.lang.NullPointerException from label to label with label;
}
public org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxn(org.apache.zookeeper.txn.TxnHeader, org.apache.jute.Record)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.jute.Record v;
org.apache.zookeeper.txn.TxnHeader v;
org.apache.zookeeper.server.DataTree$ProcessTxnResult v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.txn.TxnHeader;
v := @parameter: org.apache.jute.Record;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void processTxnForSessionEvents(org.apache.zookeeper.server.Request,org.apache.zookeeper.txn.TxnHeader,org.apache.jute.Record)>(null, v, v);
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxnInDB(org.apache.zookeeper.txn.TxnHeader,org.apache.jute.Record,org.apache.zookeeper.txn.TxnDigest)>(v, v, null);
return v;
}
public org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxn(org.apache.zookeeper.server.Request)
{
org.apache.zookeeper.metrics.Counter v;
byte v, v;
java.util.Map v, v;
boolean v, v, v, v;
org.apache.zookeeper.server.DataTree$ProcessTxnResult v, v;
org.apache.jute.Record v, v;
org.apache.zookeeper.server.Request v;
java.lang.Throwable v;
org.apache.zookeeper.server.ZKDatabase v;
long v, v, v, v;
org.apache.zookeeper.txn.TxnDigest v;
java.util.Deque v, v, v, v;
org.apache.zookeeper.server.ServerMetrics v;
java.lang.String v, v, v, v;
org.slf4j.Logger v;
org.apache.zookeeper.txn.TxnHeader v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.lang.Object v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.Request;
v = virtualinvoke v.<org.apache.zookeeper.server.Request: org.apache.zookeeper.txn.TxnHeader getHdr()>();
v = virtualinvoke v.<org.apache.zookeeper.server.Request: org.apache.jute.Record getTxn()>();
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void processTxnForSessionEvents(org.apache.zookeeper.server.Request,org.apache.zookeeper.txn.TxnHeader,org.apache.jute.Record)>(v, v, v);
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
v = virtualinvoke v.<org.apache.zookeeper.server.Request: boolean isQuorum()>();
if v != 0 goto label;
if v != 0 goto label;
v = new org.apache.zookeeper.server.DataTree$ProcessTxnResult;
specialinvoke v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: void <init>()>();
return v;
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.Deque outstandingChanges>;
entermonitor v;
label:
v = virtualinvoke v.<org.apache.zookeeper.server.Request: org.apache.jute.Record getTxn()>();
v = virtualinvoke v.<org.apache.zookeeper.server.Request: org.apache.zookeeper.txn.TxnDigest getTxnDigest()>();
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxnInDB(org.apache.zookeeper.txn.TxnHeader,org.apache.jute.Record,org.apache.zookeeper.txn.TxnDigest)>(v, v, v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.Deque outstandingChanges>;
v = interfaceinvoke v.<java.util.Deque: boolean isEmpty()>();
if v != 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.Deque outstandingChanges>;
v = interfaceinvoke v.<java.util.Deque: java.lang.Object peek()>();
v = v.<org.apache.zookeeper.server.ZooKeeperServer$ChangeRecord: long zxid>;
v = v cmp v;
if v > 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.Deque outstandingChanges>;
v = interfaceinvoke v.<java.util.Deque: java.lang.Object remove()>();
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.Counter OUTSTANDING_CHANGES_REMOVED>;
interfaceinvoke v.<org.apache.zookeeper.metrics.Counter: void add(long)>(1L);
v = v.<org.apache.zookeeper.server.ZooKeeperServer$ChangeRecord: long zxid>;
v = v cmp v;
if v >= 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer$ChangeRecord: long zxid>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object,java.lang.Object)>("Zxid outstanding 0x{} is less than current 0x{}", v, v);
label:
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.Map outstandingChangesForPath>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer$ChangeRecord: java.lang.String path>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != v goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: java.util.Map outstandingChangesForPath>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer$ChangeRecord: java.lang.String path>;
interfaceinvoke v.<java.util.Map: java.lang.Object remove(java.lang.Object)>(v);
goto label;
label:
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: void addCommittedProposal(org.apache.zookeeper.server.Request)>(v);
label:
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.Throwable from label to label with label;
}
private void processTxnForSessionEvents(org.apache.zookeeper.server.Request, org.apache.zookeeper.txn.TxnHeader, org.apache.jute.Record)
{
long v;
org.apache.zookeeper.server.SessionTracker v, v;
int v, v, v, v, v;
java.lang.String v;
boolean v, v;
org.slf4j.Logger v;
org.apache.jute.Record v;
org.apache.zookeeper.txn.TxnHeader v;
org.apache.zookeeper.server.Request v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.lang.Class v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.Request;
v := @parameter: org.apache.zookeeper.txn.TxnHeader;
v := @parameter: org.apache.jute.Record;
if v != null goto label;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: int getType()>();
goto label;
label:
v = v.<org.apache.zookeeper.server.Request: int type>;
label:
v = v;
if v != null goto label;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getClientId()>();
goto label;
label:
v = v.<org.apache.zookeeper.server.Request: long sessionId>;
label:
v = (int) -10;
if v != v goto label;
if v == null goto label;
v = v instanceof org.apache.zookeeper.txn.CreateSessionTxn;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateSessionTxn: int getTimeOut()>();
interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker: boolean commitSession(long,int)>(v, v);
goto label;
label:
if v == null goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.Request: boolean isLocalSession()>();
if v != 0 goto label;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object,java.lang.Object)>("*****>>>>> Got {} {}", v, v);
goto label;
label:
v = (int) -11;
if v != v goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker: void removeSession(long)>(v);
label:
return;
}
private org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxnInDB(org.apache.zookeeper.txn.TxnHeader, org.apache.jute.Record, org.apache.zookeeper.txn.TxnDigest)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZKDatabase v;
org.apache.jute.Record v;
org.apache.zookeeper.txn.TxnHeader v;
org.apache.zookeeper.txn.TxnDigest v;
org.apache.zookeeper.server.DataTree$ProcessTxnResult v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.txn.TxnHeader;
v := @parameter: org.apache.jute.Record;
v := @parameter: org.apache.zookeeper.txn.TxnDigest;
if v != null goto label;
v = new org.apache.zookeeper.server.DataTree$ProcessTxnResult;
specialinvoke v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: void <init>()>();
return v;
label:
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxn(org.apache.zookeeper.txn.TxnHeader,org.apache.jute.Record,org.apache.zookeeper.txn.TxnDigest)>(v, v, v);
return v;
}
public java.util.Map getSessionExpiryMap()
{
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.Map v;
org.apache.zookeeper.server.SessionTracker v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker sessionTracker>;
v = interfaceinvoke v.<org.apache.zookeeper.server.SessionTracker: java.util.Map getSessionExpiryMap()>();
return v;
}
void registerServerShutdownHandler(org.apache.zookeeper.server.ZooKeeperServerShutdownHandler)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZooKeeperServerShutdownHandler v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ZooKeeperServerShutdownHandler;
v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerShutdownHandler zkShutdownHandler> = v;
return;
}
public boolean isResponseCachingEnabled()
{
org.apache.zookeeper.server.ZooKeeperServer v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: boolean isResponseCachingEnabled>;
return v;
}
public void setResponseCachingEnabled(boolean)
{
org.apache.zookeeper.server.ZooKeeperServer v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: boolean;
v.<org.apache.zookeeper.server.ZooKeeperServer: boolean isResponseCachingEnabled> = v;
return;
}
public org.apache.zookeeper.server.ResponseCache getReadResponseCache()
{
org.apache.zookeeper.server.ResponseCache v;
org.apache.zookeeper.server.ZooKeeperServer v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: boolean isResponseCachingEnabled>;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ResponseCache readResponseCache>;
goto label;
label:
v = null;
label:
return v;
}
public org.apache.zookeeper.server.ResponseCache getGetChildrenResponseCache()
{
org.apache.zookeeper.server.ResponseCache v;
org.apache.zookeeper.server.ZooKeeperServer v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: boolean isResponseCachingEnabled>;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ResponseCache getChildrenResponseCache>;
goto label;
label:
v = null;
label:
return v;
}
protected void registerMetrics()
{
org.apache.zookeeper.server.quorum.BufferStats v, v, v;
org.apache.zookeeper.server.SessionTracker v;
org.apache.zookeeper.server.ServerStats v;
org.apache.zookeeper.server.util.OSMXBean v;
org.apache.zookeeper.metrics.Gauge 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.metrics.MetricsProvider v;
org.apache.zookeeper.server.ZKDatabase v;
org.apache.zookeeper.server.ServerMetrics v;
org.apache.zookeeper.metrics.MetricsContext v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.metrics.GaugeSet v, v, v, v;
org.apache.zookeeper.server.DataTree v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.MetricsProvider getMetricsProvider()>();
v = interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsProvider: org.apache.zookeeper.metrics.MetricsContext getRootContext()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerStats serverStats()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getAvgLatency__108: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ServerStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("avg_latency", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getMaxLatency__109: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ServerStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("max_latency", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getMinLatency__110: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ServerStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("min_latency", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getPacketsReceived__111: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ServerStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("packets_received", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getPacketsSent__112: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ServerStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("packets_sent", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getNumAliveClientConnections__113: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ServerStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("num_alive_connections", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getOutstandingRequests__114: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ServerStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("outstanding_requests", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getUptime__115: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ServerStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("uptime", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getNodeCount__116: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ZKDatabase)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("znode_count", v);
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataTree getDataTree()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getWatchCount__117: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.DataTree)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("watch_count", v);
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataTree getDataTree()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getEphemeralsCount__118: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.DataTree)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("ephemerals_count", v);
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataTree getDataTree()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$cachedApproximateDataSize__119: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.DataTree)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("approximate_data_size", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getSessionCount__120: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ZKDatabase)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("global_sessions", v);
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.SessionTracker getSessionTracker()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getLocalSessionCount__121: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.SessionTracker)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("local_sessions", v);
v = new org.apache.zookeeper.server.util.OSMXBean;
specialinvoke v.<org.apache.zookeeper.server.util.OSMXBean: void <init>()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getOpenFileDescriptorCount__122: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.util.OSMXBean)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("open_file_descriptor_count", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getMaxFileDescriptorCount__123: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.util.OSMXBean)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("max_file_descriptor_count", v);
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getConnectionDropChance__124: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ZooKeeperServer)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("connection_drop_probability", v);
v = virtualinvoke v.<org.apache.zookeeper.server.ServerStats: org.apache.zookeeper.server.quorum.BufferStats getClientResponseStats()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getLastBufferSize__125: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.quorum.BufferStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("last_client_response_size", v);
v = virtualinvoke v.<org.apache.zookeeper.server.ServerStats: org.apache.zookeeper.server.quorum.BufferStats getClientResponseStats()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getMaxBufferSize__126: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.quorum.BufferStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("max_client_response_size", v);
v = virtualinvoke v.<org.apache.zookeeper.server.ServerStats: org.apache.zookeeper.server.quorum.BufferStats getClientResponseStats()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getMinBufferSize__127: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.quorum.BufferStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("min_client_response_size", v);
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getOutstandingHandshakeNum__128: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ZooKeeperServer)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("outstanding_tls_handshake", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getAuthFailedCount__129: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ServerStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("auth_failed_count", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getNonMTLSRemoteConnCount__130: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ServerStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("non_mtls_remote_conn_count", v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$getNonMTLSLocalConnCount__131: org.apache.zookeeper.metrics.Gauge bootstrap$(org.apache.zookeeper.server.ServerStats)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGauge(java.lang.String,org.apache.zookeeper.metrics.Gauge)>("non_mtls_local_conn_count", v);
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$lambda_registerMetrics_2__132: org.apache.zookeeper.metrics.GaugeSet bootstrap$(org.apache.zookeeper.server.ZooKeeperServer)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGaugeSet(java.lang.String,org.apache.zookeeper.metrics.GaugeSet)>("quota_count_limit_per_namespace", v);
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$lambda_registerMetrics_3__133: org.apache.zookeeper.metrics.GaugeSet bootstrap$(org.apache.zookeeper.server.ZooKeeperServer)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGaugeSet(java.lang.String,org.apache.zookeeper.metrics.GaugeSet)>("quota_bytes_limit_per_namespace", v);
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$lambda_registerMetrics_4__134: org.apache.zookeeper.metrics.GaugeSet bootstrap$(org.apache.zookeeper.server.ZooKeeperServer)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGaugeSet(java.lang.String,org.apache.zookeeper.metrics.GaugeSet)>("quota_count_usage_per_namespace", v);
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$lambda_registerMetrics_5__135: org.apache.zookeeper.metrics.GaugeSet bootstrap$(org.apache.zookeeper.server.ZooKeeperServer)>(v);
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void registerGaugeSet(java.lang.String,org.apache.zookeeper.metrics.GaugeSet)>("quota_bytes_usage_per_namespace", v);
return;
}
protected void unregisterMetrics()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.metrics.MetricsContext v;
org.apache.zookeeper.metrics.MetricsProvider v;
org.apache.zookeeper.server.ServerMetrics v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.MetricsProvider getMetricsProvider()>();
v = interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsProvider: org.apache.zookeeper.metrics.MetricsContext getRootContext()>();
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("avg_latency");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("max_latency");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("min_latency");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("packets_received");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("packets_sent");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("num_alive_connections");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("outstanding_requests");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("uptime");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("znode_count");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("watch_count");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("ephemerals_count");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("approximate_data_size");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("global_sessions");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("local_sessions");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("open_file_descriptor_count");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("max_file_descriptor_count");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("connection_drop_probability");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("last_client_response_size");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("max_client_response_size");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("min_client_response_size");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("auth_failed_count");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("non_mtls_remote_conn_count");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGauge(java.lang.String)>("non_mtls_local_conn_count");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGaugeSet(java.lang.String)>("quota_count_limit_per_namespace");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGaugeSet(java.lang.String)>("quota_bytes_limit_per_namespace");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGaugeSet(java.lang.String)>("quota_count_usage_per_namespace");
interfaceinvoke v.<org.apache.zookeeper.metrics.MetricsContext: void unregisterGaugeSet(java.lang.String)>("quota_bytes_usage_per_namespace");
return;
}
public void dumpMonitorValues(java.util.function.BiConsumer)
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ServerStats v;
java.util.function.BiConsumer v;
java.lang.String v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: java.util.function.BiConsumer;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerStats serverStats()>();
v = staticinvoke <org.apache.zookeeper.Version: java.lang.String getFullVersion()>();
interfaceinvoke v.<java.util.function.BiConsumer: void accept(java.lang.Object,java.lang.Object)>("version", v);
v = virtualinvoke v.<org.apache.zookeeper.server.ServerStats: java.lang.String getServerState()>();
interfaceinvoke v.<java.util.function.BiConsumer: void accept(java.lang.Object,java.lang.Object)>("server_state", v);
return;
}
public void checkACL(org.apache.zookeeper.server.ServerCnxn, java.util.List, int, java.util.List, java.lang.String, java.util.List) throws org.apache.zookeeper.KeeperException$NoAuthException
{
org.apache.zookeeper.KeeperException$NoAuthException v;
java.lang.Integer v;
org.apache.zookeeper.server.ServerCnxn v;
boolean v, v, v, v, v, v, v, v, v;
java.util.List v, v, v;
int v, v, v, v;
org.apache.zookeeper.server.auth.ServerAuthenticationProvider$ServerObjs v;
java.lang.String v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.auth.ServerAuthenticationProvider$MatchValues v;
org.slf4j.Logger v, v, v;
java.util.Iterator v, v, v;
org.apache.zookeeper.server.auth.ServerAuthenticationProvider v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.data.Id v;
java.lang.Object v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.ServerCnxn;
v := @parameter: java.util.List;
v := @parameter: int;
v := @parameter: java.util.List;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean skipACL>;
if v == 0 goto label;
return;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Permission requested: {} ", v);
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("ACLs for node: {}", v);
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Client credentials: {}", v);
if v == null goto label;
v = interfaceinvoke v.<java.util.List: int size()>();
if v != 0 goto label;
label:
return;
label:
v = interfaceinvoke v.<java.util.List: 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.<org.apache.zookeeper.data.Id: java.lang.String getScheme()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("super");
if v == 0 goto label;
return;
label:
v = interfaceinvoke v.<java.util.List: 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.<org.apache.zookeeper.data.ACL: org.apache.zookeeper.data.Id getId()>();
v = virtualinvoke v.<org.apache.zookeeper.data.ACL: int getPerms()>();
v = v & v;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.data.Id: java.lang.String getScheme()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("world");
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.data.Id: java.lang.String getId()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("anyone");
if v == 0 goto label;
return;
label:
v = virtualinvoke v.<org.apache.zookeeper.data.Id: java.lang.String getScheme()>();
v = staticinvoke <org.apache.zookeeper.server.auth.ProviderRegistry: org.apache.zookeeper.server.auth.ServerAuthenticationProvider getServerProvider(java.lang.String)>(v);
if v == null goto label;
v = interfaceinvoke v.<java.util.List: 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.<org.apache.zookeeper.data.Id: java.lang.String getScheme()>();
v = virtualinvoke v.<org.apache.zookeeper.data.Id: java.lang.String getScheme()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = new org.apache.zookeeper.server.auth.ServerAuthenticationProvider$ServerObjs;
specialinvoke v.<org.apache.zookeeper.server.auth.ServerAuthenticationProvider$ServerObjs: void <init>(org.apache.zookeeper.server.ZooKeeperServer,org.apache.zookeeper.server.ServerCnxn)>(v, v);
v = new org.apache.zookeeper.server.auth.ServerAuthenticationProvider$MatchValues;
v = virtualinvoke v.<org.apache.zookeeper.data.Id: java.lang.String getId()>();
v = virtualinvoke v.<org.apache.zookeeper.data.Id: java.lang.String getId()>();
specialinvoke v.<org.apache.zookeeper.server.auth.ServerAuthenticationProvider$MatchValues: void <init>(java.lang.String,java.lang.String,java.lang.String,int,java.util.List)>(v, v, v, v, v);
v = virtualinvoke v.<org.apache.zookeeper.server.auth.ServerAuthenticationProvider: boolean matches(org.apache.zookeeper.server.auth.ServerAuthenticationProvider$ServerObjs,org.apache.zookeeper.server.auth.ServerAuthenticationProvider$MatchValues)>(v, v);
if v == 0 goto label;
return;
label:
v = new org.apache.zookeeper.KeeperException$NoAuthException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NoAuthException: void <init>()>();
throw v;
}
public void checkQuota(java.lang.String, byte[], byte[], int) throws org.apache.zookeeper.KeeperException$QuotaExceededException
{
byte[] v, v;
org.apache.zookeeper.server.ZKDatabase v;
long v;
int v, v, v;
java.lang.String v, v, v, v;
boolean v, v;
java.lang.IllegalArgumentException v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: java.lang.String;
v := @parameter: byte[];
v := @parameter: byte[];
v := @parameter: int;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean enforceQuota>;
if v != 0 goto label;
return;
label:
if v == null goto label;
v = lengthof v;
label:
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataTree getDataTree()>();
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: java.lang.String getMaxPrefixWithQuota(java.lang.String)>(v);
v = staticinvoke <org.apache.zookeeper.common.StringUtils: boolean isEmpty(java.lang.String)>(v);
if v == 0 goto label;
return;
label:
v = staticinvoke <org.apache.zookeeper.common.PathUtils: java.lang.String getTopNamespace(java.lang.String)>(v);
lookupswitch(v)
{
case 1: goto label;
case 5: goto label;
default: goto label;
};
label:
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void checkQuota(java.lang.String,long,long,java.lang.String)>(v, v, 1L, v);
goto label;
label:
if v != null goto label;
v = 0;
goto label;
label:
v = lengthof v;
label:
v = v - v;
specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void checkQuota(java.lang.String,long,long,java.lang.String)>(v, v, 0L, v);
goto label;
label:
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Unsupported OpCode for checkQuota: \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
private void checkQuota(java.lang.String, long, long, java.lang.String) throws org.apache.zookeeper.KeeperException$QuotaExceededException
{
byte[] v, v;
byte v, v, v, v, v, v, v, v, v, v;
java.lang.Long v, v;
boolean v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.DataNode v, v;
org.apache.zookeeper.KeeperException$QuotaExceededException v, v;
java.lang.Throwable v, v;
java.lang.Object[] v;
org.apache.zookeeper.server.RateLogger v, v;
org.apache.zookeeper.server.ZKDatabase v, v;
long v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v;
org.slf4j.Logger v, v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.StatsTrack v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: java.lang.String;
v := @parameter: long;
v := @parameter: long;
v := @parameter: java.lang.String;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v[0] = v;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[1] = v;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("checkQuota: lastPrefix={}, bytesDiff={}, countDiff={}", v);
v = staticinvoke <org.apache.zookeeper.Quotas: java.lang.String limitPath(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataNode getNode(java.lang.String)>(v);
if v != null goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Object)>("Missing limit node for quota {}", v);
return;
label:
entermonitor v;
label:
v = new org.apache.zookeeper.StatsTrack;
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
specialinvoke v.<org.apache.zookeeper.StatsTrack: void <init>(byte[])>(v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = v cmp 0L;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getCount()>();
v = v cmp -1L;
if v > 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getCountHardLimit()>();
v = v cmp -1L;
if v <= 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
v = v;
v = v cmp 0L;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getBytes()>();
v = v cmp -1L;
if v > 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getByteHardLimit()>();
v = v cmp -1L;
if v <= 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
v = v;
if v != 0 goto label;
if v != 0 goto label;
return;
label:
v = staticinvoke <org.apache.zookeeper.Quotas: java.lang.String statPath(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: org.apache.zookeeper.server.DataNode getNode(java.lang.String)>(v);
if v != null goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Object)>("Missing node for stat {}", v);
return;
label:
entermonitor v;
label:
v = new org.apache.zookeeper.StatsTrack;
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
specialinvoke v.<org.apache.zookeeper.StatsTrack: void <init>(byte[])>(v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getCount()>();
v = v + v;
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getCountHardLimit()>();
v = v cmp -1L;
if v <= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getCountHardLimit()>();
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getCount()>();
label:
v = v;
v = v cmp v;
if v <= 0 goto label;
if v == 0 goto label;
v = "hard";
goto label;
label:
v = "soft";
label:
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,long,java.lang.String,long)>(v, v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Quota exceeded: \u [current count=\u, \u0001CountLimit=\u]");
v = <org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RateLogger RATE_LOGGER>;
virtualinvoke v.<org.apache.zookeeper.server.RateLogger: void rateLimitLog(java.lang.String)>(v);
if v == 0 goto label;
staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: void updateQuotaExceededMetrics(java.lang.String)>(v);
v = new org.apache.zookeeper.KeeperException$QuotaExceededException;
specialinvoke v.<org.apache.zookeeper.KeeperException$QuotaExceededException: void <init>(java.lang.String)>(v);
throw v;
label:
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getBytes()>();
v = v + v;
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getByteHardLimit()>();
v = v cmp -1L;
if v <= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getByteHardLimit()>();
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getBytes()>();
label:
v = v;
v = v cmp v;
if v <= 0 goto label;
if v == 0 goto label;
v = "hard";
goto label;
label:
v = "soft";
label:
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,long,java.lang.String,long)>(v, v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Quota exceeded: \u [current bytes=\u, \u0001ByteLimit=\u]");
v = <org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RateLogger RATE_LOGGER>;
virtualinvoke v.<org.apache.zookeeper.server.RateLogger: void rateLimitLog(java.lang.String)>(v);
if v == 0 goto label;
staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: void updateQuotaExceededMetrics(java.lang.String)>(v);
v = new org.apache.zookeeper.KeeperException$QuotaExceededException;
specialinvoke v.<org.apache.zookeeper.KeeperException$QuotaExceededException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static boolean isDigestEnabled()
{
boolean v;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean digestEnabled>;
return v;
}
public static void setDigestEnabled(boolean)
{
java.lang.Boolean v;
org.slf4j.Logger v;
boolean v;
v := @parameter: boolean;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("{} = {}", "zookeeper.digest.enabled", v);
<org.apache.zookeeper.server.ZooKeeperServer: boolean digestEnabled> = v;
return;
}
public static boolean isSerializeLastProcessedZxidEnabled()
{
boolean v;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean serializeLastProcessedZxidEnabled>;
return v;
}
public static void setSerializeLastProcessedZxidEnabled(boolean)
{
java.lang.Boolean v;
org.slf4j.Logger v;
boolean v;
v := @parameter: boolean;
<org.apache.zookeeper.server.ZooKeeperServer: boolean serializeLastProcessedZxidEnabled> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("{} = {}", "zookeeper.serializeLastProcessedZxid.enabled", v);
return;
}
private java.lang.String parentPath(java.lang.String) throws org.apache.zookeeper.KeeperException$BadArgumentsException
{
org.apache.zookeeper.server.ZKDatabase v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.KeeperException$BadArgumentsException v;
int v, v, v, v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: java.lang.String;
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(47);
v = (int) -1;
if v == v goto label;
v = virtualinvoke v.<java.lang.String: int indexOf(int)>(0);
v = (int) -1;
if v != v goto label;
v = virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase getZKDatabase()>();
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: boolean isSpecialPath(java.lang.String)>(v);
if v == 0 goto label;
label:
v = new org.apache.zookeeper.KeeperException$BadArgumentsException;
specialinvoke v.<org.apache.zookeeper.KeeperException$BadArgumentsException: void <init>(java.lang.String)>(v);
throw v;
label:
if v != 0 goto label;
v = "/";
goto label;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
label:
return v;
}
private java.lang.String effectiveACLPath(org.apache.zookeeper.server.Request) throws org.apache.zookeeper.KeeperException$BadArgumentsException, org.apache.zookeeper.KeeperException$InvalidACLException
{
java.util.function.Supplier v, v, v, v;
int v;
java.lang.String v, v, v;
boolean v;
org.apache.jute.Record v, v, v, v;
org.apache.zookeeper.server.Request v;
org.apache.zookeeper.server.ZooKeeperServer v;
java.util.List v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.Request;
v = 0;
v = null;
v = null;
v = v.<org.apache.zookeeper.server.Request: int type>;
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
case 9: goto label;
case 10: goto label;
case 11: goto label;
case 12: goto label;
case 13: goto label;
case 14: goto label;
case 15: goto label;
default: goto label;
};
label:
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$init__139: java.util.function.Supplier bootstrap$()>();
v = virtualinvoke v.<org.apache.zookeeper.server.Request: org.apache.jute.Record readRequestRecordNoException(java.util.function.Supplier)>(v);
if v == null goto label;
v = 1;
v = virtualinvoke v.<org.apache.zookeeper.proto.CreateRequest: java.util.List getAcl()>();
v = virtualinvoke v.<org.apache.zookeeper.proto.CreateRequest: java.lang.String getPath()>();
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: java.lang.String parentPath(java.lang.String)>(v);
goto label;
label:
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$init__138: java.util.function.Supplier bootstrap$()>();
v = virtualinvoke v.<org.apache.zookeeper.server.Request: org.apache.jute.Record readRequestRecordNoException(java.util.function.Supplier)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.zookeeper.proto.DeleteRequest: java.lang.String getPath()>();
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: java.lang.String parentPath(java.lang.String)>(v);
goto label;
label:
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$init__137: java.util.function.Supplier bootstrap$()>();
v = virtualinvoke v.<org.apache.zookeeper.server.Request: org.apache.jute.Record readRequestRecordNoException(java.util.function.Supplier)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.zookeeper.proto.SetDataRequest: java.lang.String getPath()>();
goto label;
label:
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer$init__136: java.util.function.Supplier bootstrap$()>();
v = virtualinvoke v.<org.apache.zookeeper.server.Request: org.apache.jute.Record readRequestRecordNoException(java.util.function.Supplier)>(v);
if v == null goto label;
v = 1;
v = virtualinvoke v.<org.apache.zookeeper.proto.SetACLRequest: java.util.List getAcl()>();
v = virtualinvoke v.<org.apache.zookeeper.proto.SetACLRequest: java.lang.String getPath()>();
label:
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.Request: java.util.List authInfo>;
staticinvoke <org.apache.zookeeper.server.PrepRequestProcessor: java.util.List fixupACL(java.lang.String,java.util.List,java.util.List)>(v, v, v);
label:
return v;
}
private int effectiveACLPerms(org.apache.zookeeper.server.Request)
{
int v;
org.apache.zookeeper.server.Request v;
org.apache.zookeeper.server.ZooKeeperServer v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.Request;
v = v.<org.apache.zookeeper.server.Request: int type>;
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
case 9: goto label;
case 10: goto label;
case 11: goto label;
case 12: goto label;
case 13: goto label;
case 14: goto label;
case 15: goto label;
default: goto label;
};
label:
return 4;
label:
return 8;
label:
return 2;
label:
return 16;
label:
return 31;
}
public boolean authWriteRequest(org.apache.zookeeper.server.Request)
{
org.apache.zookeeper.KeeperException$NoAuthException v;
java.lang.Throwable v, v;
org.apache.zookeeper.KeeperException$InvalidACLException v;
org.apache.zookeeper.server.ZKDatabase v;
java.lang.String v, v, v;
java.io.IOException v, v, v, v, v, v;
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.KeeperException$NoNodeException v;
org.apache.zookeeper.KeeperException$BadArgumentsException v;
org.apache.zookeeper.server.ServerCnxn v, v, v, v, v, v, v;
boolean v, v;
org.apache.zookeeper.server.Request v;
java.util.List v, v;
org.apache.zookeeper.proto.ReplyHeader v, v, v, v, v, v;
org.apache.zookeeper.KeeperException$Code v, v, v, v, v, v, v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.slf4j.Logger v, v, v, v, v, v, v, v, v, v, v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v := @parameter: org.apache.zookeeper.server.Request;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean enableEagerACLCheck>;
if v != 0 goto label;
return 1;
label:
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
label:
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: java.lang.String effectiveACLPath(org.apache.zookeeper.server.Request)>(v);
if v == null goto label;
v = v.<org.apache.zookeeper.server.Request: org.apache.zookeeper.server.ServerCnxn cnxn>;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZKDatabase zkDb>;
v = virtualinvoke v.<org.apache.zookeeper.server.ZKDatabase: java.util.List getACL(java.lang.String,org.apache.zookeeper.data.Stat)>(v, null);
v = specialinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: int effectiveACLPerms(org.apache.zookeeper.server.Request)>(v);
v = v.<org.apache.zookeeper.server.Request: java.util.List authInfo>;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void checkACL(org.apache.zookeeper.server.ServerCnxn,java.util.List,int,java.util.List,java.lang.String,java.util.List)>(v, v, v, v, v, null);
label:
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
if v == v goto label;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void decInProcess()>();
v = new org.apache.zookeeper.proto.ReplyHeader;
v = v.<org.apache.zookeeper.server.Request: int cxid>;
specialinvoke v.<org.apache.zookeeper.proto.ReplyHeader: void <init>(int,long,int)>(v, 0L, v);
label:
v = v.<org.apache.zookeeper.server.Request: org.apache.zookeeper.server.ServerCnxn cnxn>;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int sendResponse(org.apache.zookeeper.proto.ReplyHeader,org.apache.jute.Record,java.lang.String)>(v, null, null);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("IOException : {}", v);
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Throwable)>("Request failed ACL check", v);
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$NoAuthException: org.apache.zookeeper.KeeperException$Code code()>();
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
label:
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
if v == v goto label;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void decInProcess()>();
v = new org.apache.zookeeper.proto.ReplyHeader;
v = v.<org.apache.zookeeper.server.Request: int cxid>;
specialinvoke v.<org.apache.zookeeper.proto.ReplyHeader: void <init>(int,long,int)>(v, 0L, v);
label:
v = v.<org.apache.zookeeper.server.Request: org.apache.zookeeper.server.ServerCnxn cnxn>;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int sendResponse(org.apache.zookeeper.proto.ReplyHeader,org.apache.jute.Record,java.lang.String)>(v, null, null);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("IOException : {}", v);
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Throwable)>("Request has an invalid ACL check", v);
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$InvalidACLException: org.apache.zookeeper.KeeperException$Code code()>();
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
label:
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
if v == v goto label;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void decInProcess()>();
v = new org.apache.zookeeper.proto.ReplyHeader;
v = v.<org.apache.zookeeper.server.Request: int cxid>;
specialinvoke v.<org.apache.zookeeper.proto.ReplyHeader: void <init>(int,long,int)>(v, 0L, v);
label:
v = v.<org.apache.zookeeper.server.Request: org.apache.zookeeper.server.ServerCnxn cnxn>;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int sendResponse(org.apache.zookeeper.proto.ReplyHeader,org.apache.jute.Record,java.lang.String)>(v, null, null);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("IOException : {}", v);
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: java.lang.String getMessage()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("ACL check against non-existent node: {}", v);
label:
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
if v == v goto label;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void decInProcess()>();
v = new org.apache.zookeeper.proto.ReplyHeader;
v = v.<org.apache.zookeeper.server.Request: int cxid>;
specialinvoke v.<org.apache.zookeeper.proto.ReplyHeader: void <init>(int,long,int)>(v, 0L, v);
label:
v = v.<org.apache.zookeeper.server.Request: org.apache.zookeeper.server.ServerCnxn cnxn>;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int sendResponse(org.apache.zookeeper.proto.ReplyHeader,org.apache.jute.Record,java.lang.String)>(v, null, null);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("IOException : {}", v);
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$BadArgumentsException: java.lang.String getMessage()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("ACL check against illegal node path: {}", v);
label:
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
if v == v goto label;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void decInProcess()>();
v = new org.apache.zookeeper.proto.ReplyHeader;
v = v.<org.apache.zookeeper.server.Request: int cxid>;
specialinvoke v.<org.apache.zookeeper.proto.ReplyHeader: void <init>(int,long,int)>(v, 0L, v);
label:
v = v.<org.apache.zookeeper.server.Request: org.apache.zookeeper.server.ServerCnxn cnxn>;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int sendResponse(org.apache.zookeeper.proto.ReplyHeader,org.apache.jute.Record,java.lang.String)>(v, null, null);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("IOException : {}", v);
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Uncaught exception in authWriteRequest with: ", v);
throw v;
label:
v := @caughtexception;
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
if v == v goto label;
virtualinvoke v.<org.apache.zookeeper.server.ZooKeeperServer: void decInProcess()>();
v = new org.apache.zookeeper.proto.ReplyHeader;
v = v.<org.apache.zookeeper.server.Request: int cxid>;
specialinvoke v.<org.apache.zookeeper.proto.ReplyHeader: void <init>(int,long,int)>(v, 0L, v);
label:
v = v.<org.apache.zookeeper.server.Request: org.apache.zookeeper.server.ServerCnxn cnxn>;
virtualinvoke v.<org.apache.zookeeper.server.ServerCnxn: int sendResponse(org.apache.zookeeper.proto.ReplyHeader,org.apache.jute.Record,java.lang.String)>(v, null, null);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("IOException : {}", v);
label:
throw v;
label:
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
catch java.io.IOException from label to label with label;
catch org.apache.zookeeper.KeeperException$NoAuthException from label to label with label;
catch java.io.IOException from label to label with label;
catch org.apache.zookeeper.KeeperException$InvalidACLException from label to label with label;
catch java.io.IOException from label to label with label;
catch org.apache.zookeeper.KeeperException$NoNodeException from label to label with label;
catch java.io.IOException from label to label with label;
catch org.apache.zookeeper.KeeperException$BadArgumentsException from label to label with label;
catch java.io.IOException 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.io.IOException from label to label with label;
}
public int getOutstandingHandshakeNum()
{
org.apache.zookeeper.server.ZooKeeperServer v;
int v;
org.apache.zookeeper.server.ServerCnxnFactory v, v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
v = v instanceof org.apache.zookeeper.server.NettyServerCnxnFactory;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ServerCnxnFactory serverCnxnFactory>;
v = virtualinvoke v.<org.apache.zookeeper.server.NettyServerCnxnFactory: int getOutstandingHandshakeNum()>();
return v;
label:
return 0;
}
public boolean isReconfigEnabled()
{
org.apache.zookeeper.server.ZooKeeperServer v;
boolean v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: boolean reconfigEnabled>;
return v;
}
public org.apache.zookeeper.server.ZooKeeperServerShutdownHandler getZkShutdownHandler()
{
org.apache.zookeeper.server.ZooKeeperServer v;
org.apache.zookeeper.server.ZooKeeperServerShutdownHandler v;
v := @this: org.apache.zookeeper.server.ZooKeeperServer;
v = v.<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.ZooKeeperServerShutdownHandler zkShutdownHandler>;
return v;
}
static void updateQuotaExceededMetrics(java.lang.String)
{
java.lang.String v;
org.apache.zookeeper.metrics.CounterSet v;
org.apache.zookeeper.server.ServerMetrics v;
v := @parameter: java.lang.String;
if v != null goto label;
return;
label:
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.CounterSet QUOTA_EXCEEDED_ERROR_PER_NAMESPACE>;
interfaceinvoke v.<org.apache.zookeeper.metrics.CounterSet: void add(java.lang.String,long)>(v, 1L);
return;
}
static void <clinit>()
{
java.lang.Integer v, v, v, v;
java.lang.Long v, v;
boolean v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Exception v;
org.apache.zookeeper.server.RateLogger v;
long v, v, v;
int v, v, v, v, v, v;
java.lang.Boolean v, v, v, v;
java.lang.String v, v, v, v, v, v;
org.slf4j.Logger v, v, v, v, v, v, v, v, v, v, v;
java.lang.IllegalArgumentException v;
<org.apache.zookeeper.server.ZooKeeperServer: boolean closeSessionTxnEnabled> = 1;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/zookeeper/server/ZooKeeperServer;");
<org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG> = v;
v = new org.apache.zookeeper.server.RateLogger;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
specialinvoke v.<org.apache.zookeeper.server.RateLogger: void <init>(org.slf4j.Logger)>(v);
<org.apache.zookeeper.server.ZooKeeperServer: org.apache.zookeeper.server.RateLogger RATE_LOGGER> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
staticinvoke <org.apache.zookeeper.ZookeeperBanner: void printBanner(org.slf4j.Logger)>(v);
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
staticinvoke <org.apache.zookeeper.Environment: void logEnv(java.lang.String,org.slf4j.Logger)>("Server environment:", v);
v = staticinvoke <java.lang.Boolean: boolean getBoolean(java.lang.String)>("zookeeper.enableEagerACLCheck");
<org.apache.zookeeper.server.ZooKeeperServer: boolean enableEagerACLCheck> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean enableEagerACLCheck>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("{} = {}", "zookeeper.enableEagerACLCheck", v);
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String,java.lang.String)>("zookeeper.skipACL", "no");
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("yes");
<org.apache.zookeeper.server.ZooKeeperServer: boolean skipACL> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean skipACL>;
if v == 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("{}==\"yes\", ACL checks will be skipped", "zookeeper.skipACL");
label:
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String,java.lang.String)>("zookeeper.enforceQuota", "false");
v = staticinvoke <java.lang.Boolean: boolean parseBoolean(java.lang.String)>(v);
<org.apache.zookeeper.server.ZooKeeperServer: boolean enforceQuota> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean enforceQuota>;
if v == 0 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean enforceQuota>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("{} = {}, Quota Enforce enables", "zookeeper.enforceQuota", v);
label:
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String,java.lang.String)>("zookeeper.digest.enabled", "true");
v = staticinvoke <java.lang.Boolean: boolean parseBoolean(java.lang.String)>(v);
<org.apache.zookeeper.server.ZooKeeperServer: boolean digestEnabled> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean digestEnabled>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("{} = {}", "zookeeper.digest.enabled", v);
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String,java.lang.String)>("zookeeper.closeSessionTxn.enabled", "true");
v = staticinvoke <java.lang.Boolean: boolean parseBoolean(java.lang.String)>(v);
<org.apache.zookeeper.server.ZooKeeperServer: boolean closeSessionTxnEnabled> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = <org.apache.zookeeper.server.ZooKeeperServer: boolean closeSessionTxnEnabled>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("{} = {}", "zookeeper.closeSessionTxn.enabled", v);
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String,java.lang.String)>("zookeeper.serializeLastProcessedZxid.enabled", "true");
v = staticinvoke <java.lang.Boolean: boolean parseBoolean(java.lang.String)>(v);
staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: void setSerializeLastProcessedZxidEnabled(boolean)>(v);
v = staticinvoke <java.lang.Integer: java.lang.Integer getInteger(java.lang.String,int)>("zookeeper.throttled_op_wait_time", 0);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
<org.apache.zookeeper.server.ZooKeeperServer: int throttledOpWaitTime> = v;
v = new java.lang.Exception;
specialinvoke v.<java.lang.Exception: void <init>(java.lang.String)>("No prob");
<org.apache.zookeeper.server.ZooKeeperServer: java.lang.Exception ok> = v;
v = staticinvoke <java.lang.Long: java.lang.Long getLong(java.lang.String,long)>("zookeeper.flushDelay", 0L);
v = virtualinvoke v.<java.lang.Long: long longValue()>();
staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: void setFlushDelay(long)>(v);
v = v / 3L;
v = staticinvoke <java.lang.Long: java.lang.Long getLong(java.lang.String,long)>("zookeeper.maxWriteQueuePollTime", v);
v = virtualinvoke v.<java.lang.Long: long longValue()>();
staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: void setMaxWriteQueuePollTime(long)>(v);
v = staticinvoke <java.lang.Integer: java.lang.Integer getInteger(java.lang.String,int)>("zookeeper.maxBatchSize", 1000);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: void setMaxBatchSize(int)>(v);
v = staticinvoke <java.lang.Integer: java.lang.Integer getInteger(java.lang.String,int)>("zookeeper.intBufferStartingSizeBytes", 1024);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
<org.apache.zookeeper.server.ZooKeeperServer: int intBufferStartingSizeBytes> = v;
v = <org.apache.zookeeper.server.ZooKeeperServer: int intBufferStartingSizeBytes>;
if v >= 32 goto label;
v = <org.apache.zookeeper.server.ZooKeeperServer: int intBufferStartingSizeBytes>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Buffer starting size (\u) must be greater than or equal to 32. Configure with \"-Dzookeeper.intBufferStartingSizeBytes=<size>\" ");
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String)>(v);
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = <org.apache.zookeeper.server.ZooKeeperServer: org.slf4j.Logger LOG>;
v = <org.apache.zookeeper.server.ZooKeeperServer: int intBufferStartingSizeBytes>;
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)>("{} = {}", "zookeeper.intBufferStartingSizeBytes", v);
return;
}
}