class org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1 extends java.lang.Object implements org.apache.thrift.server.TServerEventHandler
{
final org.apache.hive.service.cli.thrift.ThriftBinaryCLIService this$0;
void <init>(org.apache.hive.service.cli.thrift.ThriftBinaryCLIService)
{
org.apache.hive.service.cli.thrift.ThriftBinaryCLIService v;
org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1 v;
v := @this: org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1;
v := @parameter: org.apache.hive.service.cli.thrift.ThriftBinaryCLIService;
v.<org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1: org.apache.hive.service.cli.thrift.ThriftBinaryCLIService this$0> = v;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public org.apache.thrift.server.ServerContext createContext(org.apache.thrift.protocol.TProtocol, org.apache.thrift.protocol.TProtocol)
{
org.apache.hadoop.hive.common.metrics.common.Metrics v;
org.apache.thrift.protocol.TProtocol v, v;
org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1 v;
org.apache.hive.service.cli.thrift.ThriftCLIService$ThriftCLIServerContext v;
v := @this: org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1;
v := @parameter: org.apache.thrift.protocol.TProtocol;
v := @parameter: org.apache.thrift.protocol.TProtocol;
v = staticinvoke <org.apache.hadoop.hive.common.metrics.common.MetricsFactory: org.apache.hadoop.hive.common.metrics.common.Metrics getInstance()>();
if v == null goto label;
interfaceinvoke v.<org.apache.hadoop.hive.common.metrics.common.Metrics: java.lang.Long incrementCounter(java.lang.String)>("open_connections");
interfaceinvoke v.<org.apache.hadoop.hive.common.metrics.common.Metrics: java.lang.Long incrementCounter(java.lang.String)>("cumulative_connection_count");
label:
v = new org.apache.hive.service.cli.thrift.ThriftCLIService$ThriftCLIServerContext;
specialinvoke v.<org.apache.hive.service.cli.thrift.ThriftCLIService$ThriftCLIServerContext: void <init>()>();
return v;
}
public void deleteContext(org.apache.thrift.server.ServerContext, org.apache.thrift.protocol.TProtocol, org.apache.thrift.protocol.TProtocol)
{
org.apache.hadoop.hive.common.metrics.common.Metrics v;
org.apache.thrift.server.ServerContext v;
java.lang.Integer v;
java.lang.Long v;
java.time.Duration v;
boolean v, v;
org.apache.hive.service.cli.session.SessionManager v;
org.apache.hive.service.cli.session.HiveSession v;
java.util.Optional v;
java.lang.Object[] v;
long v;
org.apache.hadoop.hive.conf.HiveConf$ConfVars v, v;
org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1 v;
int v, v;
org.apache.hive.service.cli.thrift.ThriftBinaryCLIService v, v;
java.lang.String v;
org.apache.hive.service.cli.HiveSQLException v;
org.slf4j.Logger v, v, v, v;
org.apache.hive.service.cli.CLIService v, v;
org.apache.hadoop.hive.conf.HiveConf v;
org.apache.thrift.protocol.TProtocol v, v;
java.lang.Object v, v;
v := @this: org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1;
v := @parameter: org.apache.thrift.server.ServerContext;
v := @parameter: org.apache.thrift.protocol.TProtocol;
v := @parameter: org.apache.thrift.protocol.TProtocol;
v = staticinvoke <org.apache.hadoop.hive.common.metrics.common.MetricsFactory: org.apache.hadoop.hive.common.metrics.common.Metrics getInstance()>();
if v == null goto label;
interfaceinvoke v.<org.apache.hadoop.hive.common.metrics.common.Metrics: java.lang.Long decrementCounter(java.lang.String)>("open_connections");
label:
v = virtualinvoke v.<org.apache.hive.service.cli.thrift.ThriftCLIService$ThriftCLIServerContext: java.util.Optional getSessionHandle()>();
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = <org.apache.hive.service.cli.thrift.ThriftCLIService: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v[0] = v;
v = virtualinvoke v.<org.apache.hive.service.cli.thrift.ThriftCLIService$ThriftCLIServerContext: int getMessagesProcessedCount()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[1] = v;
v = virtualinvoke v.<org.apache.hive.service.cli.thrift.ThriftCLIService$ThriftCLIServerContext: java.time.Duration getDuration()>();
v = virtualinvoke v.<java.time.Duration: long toMillis()>();
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object[])>("Client connection bound to {} unexpectedly closed: closing this Hive session to release its resources. The connection processed {} total messages during its lifetime of {}ms. Inspect the client connection for time-out, firewall killing the connection, invalid load balancer configuration, etc.", v);
label:
v = v.<org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1: org.apache.hive.service.cli.thrift.ThriftBinaryCLIService this$0>;
v = v.<org.apache.hive.service.cli.thrift.ThriftBinaryCLIService: org.apache.hive.service.cli.CLIService cliService>;
v = virtualinvoke v.<org.apache.hive.service.cli.CLIService: org.apache.hive.service.cli.session.SessionManager getSessionManager()>();
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.hive.service.cli.session.SessionManager: org.apache.hive.service.cli.session.HiveSession getSession(org.apache.hive.service.cli.SessionHandle)>(v);
v = interfaceinvoke v.<org.apache.hive.service.cli.session.HiveSession: org.apache.hadoop.hive.conf.HiveConf getHiveConf()>();
v = <org.apache.hadoop.hive.conf.HiveConf$ConfVars: org.apache.hadoop.hive.conf.HiveConf$ConfVars HIVE_SERVER2_CLOSE_SESSION_ON_DISCONNECT>;
v = virtualinvoke v.<org.apache.hadoop.hive.conf.HiveConf: boolean getBoolVar(org.apache.hadoop.hive.conf.HiveConf$ConfVars)>(v);
if v == 0 goto label;
v = v.<org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1: org.apache.hive.service.cli.thrift.ThriftBinaryCLIService this$0>;
v = v.<org.apache.hive.service.cli.thrift.ThriftBinaryCLIService: org.apache.hive.service.cli.CLIService cliService>;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
virtualinvoke v.<org.apache.hive.service.cli.CLIService: void closeSession(org.apache.hive.service.cli.SessionHandle)>(v);
goto label;
label:
v = <org.apache.hive.service.cli.thrift.ThriftCLIService: org.slf4j.Logger LOG>;
v = <org.apache.hadoop.hive.conf.HiveConf$ConfVars: org.apache.hadoop.hive.conf.HiveConf$ConfVars HIVE_SERVER2_CLOSE_SESSION_ON_DISCONNECT>;
v = v.<org.apache.hadoop.hive.conf.HiveConf$ConfVars: java.lang.String varname>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("Session not actually closed because configuration {} is set to false", v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.hive.service.cli.thrift.ThriftCLIService: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Throwable)>("Failed to close session", v);
goto label;
label:
v = virtualinvoke v.<org.apache.hive.service.cli.thrift.ThriftCLIService$ThriftCLIServerContext: int getSessionCount()>();
if v != 0 goto label;
v = <org.apache.hive.service.cli.thrift.ThriftCLIService: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("A client connection was closed before creating a Hive session. Most likely it is a client that is connecting to this server then immediately closing the socket (i.e., TCP health check or port scanner)");
label:
return;
catch org.apache.hive.service.cli.HiveSQLException from label to label with label;
}
public void preServe()
{
org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1 v;
v := @this: org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1;
return;
}
public void processContext(org.apache.thrift.server.ServerContext, org.apache.thrift.transport.TTransport, org.apache.thrift.transport.TTransport)
{
java.lang.ThreadLocal v;
org.apache.thrift.transport.TTransport v, v;
org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1 v;
org.apache.hive.service.cli.thrift.ThriftBinaryCLIService v;
org.apache.thrift.server.ServerContext v;
v := @this: org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1;
v := @parameter: org.apache.thrift.server.ServerContext;
v := @parameter: org.apache.thrift.transport.TTransport;
v := @parameter: org.apache.thrift.transport.TTransport;
v = v.<org.apache.hive.service.cli.thrift.ThriftBinaryCLIService$1: org.apache.hive.service.cli.thrift.ThriftBinaryCLIService this$0>;
v = v.<org.apache.hive.service.cli.thrift.ThriftBinaryCLIService: java.lang.ThreadLocal currentServerContext>;
virtualinvoke v.<java.lang.ThreadLocal: void set(java.lang.Object)>(v);
virtualinvoke v.<org.apache.hive.service.cli.thrift.ThriftCLIService$ThriftCLIServerContext: void incMessagesProcessedCount()>();
return;
}
}