TServerTransport serverTransport = tcpKeepAlive ?
new TServerSocketKeepAlive(port) : new TServerSocket(port);
TProcessor processor = new ThriftHiveMetastore.Processor(handler);
TTransportFactory transFactory;
if (useSasl) {
saslServer = bridge.createServer(
conf.getVar(HiveConf.ConfVars.METASTORE_KERBEROS_KEYTAB_FILE),
conf.getVar(HiveConf.ConfVars.METASTORE_KERBEROS_PRINCIPAL));
// start delegation token manager
saslServer.startDelegationTokenSecretManager(conf);
transFactory = saslServer.createTransportFactory();
processor = saslServer.wrapProcessor(processor);
} else {
transFactory = new TTransportFactory();
}
TThreadPoolServer.Options options = new TThreadPoolServer.Options();
options.minWorkerThreads = minWorkerThreads;
options.maxWorkerThreads = maxWorkerThreads;