@Override public void close() { transport.close(); }
@Override public void close() { transport.close(); }
public synchronized void close() { if (_transport != null) { _transport.close(); _transport = null; _protocol = null; } }
@Override public void close() throws IOException { transport.close(); }
@Override public void close() throws IOException { tTransport.close(); }
@Override public void close() { wrapped.close(); }
@Override public void close() { wrapped.close(); }
public void closeTransport() { tTransport.close(); }
/** * Close thrift connection. */ public void close() { // client.clean(); // client.shutdown(); transport.close(); remoteMode = false; }
public void destroy(ClientWrapper client) { poolLock.lock(); try { checkedOutClients.remove(client); currentPoolSize--; } finally { poolLock.unlock(); } client.transport.close(); }
public void closeAll() { poolLock.lock(); try { for (ClientWrapper c : availableClients) { c.transport.close(); currentPoolSize--; } // Be cruel and close even the checked out clients. The threads writing // using these will now get an exception. for (ClientWrapper c : checkedOutClients) { c.transport.close(); currentPoolSize--; } } finally { poolLock.unlock(); } } }
@Override public void close() { if (transport != null && transport.isOpen()) transport.close(); }
@Override public void close() throws Exception { if (transport != null && transport.isOpen()) { LOG.debug("Closing thrift transport"); transport.close(); } } }
@Override public void close() throws IOException { flush(); super.close(); trans_.close(); }
@Override public void destroyObject(String key, CTConnection c) throws Exception { TTransport t = c.getTransport(); if (t.isOpen()) { t.close(); log.trace("Closed transport {}", t); } else { log.trace("Not closing transport {} (already closed)", t); } }
@Override public void close() throws SQLException { if (!isClosed) { TCloseSessionReq closeReq = new TCloseSessionReq(sessHandle); try { client.CloseSession(closeReq); } catch (TException e) { throw new SQLException("Error while cleaning up the server resources", e); } finally { isClosed = true; if (transport != null) { transport.close(); } } } }
@Override public void close() { isConnected = false; currentMetaVars = null; try { if (null != client) { client.shutdown(); } } catch (TException e) { LOG.debug("Unable to shutdown metastore client. Will try closing transport directly.", e); } // Transport would have got closed via client.shutdown(), so we dont need this, but // just in case, we make this call. if ((transport != null) && transport.isOpen()) { transport.close(); LOG.info("Closed a connection to metastore, current connections: " + connCount.decrementAndGet()); } }
@Test public void testJDOPersistanceManagerCleanup() throws Exception { if (isThriftClient == false) { return; } int numObjectsBeforeClose = getJDOPersistanceManagerCacheSize(); HiveMetaStoreClient closingClient = new HiveMetaStoreClient(conf); closingClient.getAllDatabases(); closingClient.close(); Thread.sleep(5 * 1000); // give HMS time to handle close request int numObjectsAfterClose = getJDOPersistanceManagerCacheSize(); assertTrue(numObjectsBeforeClose == numObjectsAfterClose); HiveMetaStoreClient nonClosingClient = new HiveMetaStoreClient(conf); nonClosingClient.getAllDatabases(); // Drop connection without calling close. HMS thread deleteContext // will trigger cleanup nonClosingClient.getTTransport().close(); Thread.sleep(5 * 1000); int numObjectsAfterDroppedConnection = getJDOPersistanceManagerCacheSize(); assertTrue(numObjectsAfterClose == numObjectsAfterDroppedConnection); }
@Test public void testMetaConfNotifyListenersNonClosingClient() throws Exception { HiveMetaStoreClient nonClosingClient = new HiveMetaStoreClient(conf, null); nonClosingClient.setMetaConf(metaConfKey, "[test pattern modified]"); ConfigChangeEvent event = (ConfigChangeEvent) DummyListener.getLastEvent(); assertEquals(event.getOldValue(), metaConfVal); assertEquals(event.getNewValue(), "[test pattern modified]"); // This should also trigger meta listener notification via TServerEventHandler#deleteContext nonClosingClient.getTTransport().close(); Thread.sleep(2 * 1000); event = (ConfigChangeEvent) DummyListener.getLastEvent(); assertEquals(event.getOldValue(), "[test pattern modified]"); assertEquals(event.getNewValue(), metaConfVal); }
@Test public void testMetaConfNotifyListenersNonClosingClient() throws Exception { HiveMetaStoreClient nonClosingClient = new HiveMetaStoreClient(conf, null); nonClosingClient.setMetaConf(metaConfKey, "[test pattern modified]"); ConfigChangeEvent event = (ConfigChangeEvent) DummyListener.getLastEvent(); assertEquals(event.getOldValue(), metaConfVal); assertEquals(event.getNewValue(), "[test pattern modified]"); // This should also trigger meta listener notification via TServerEventHandler#deleteContext nonClosingClient.getTTransport().close(); Thread.sleep(2 * 1000); event = (ConfigChangeEvent) DummyListener.getLastEvent(); assertEquals(event.getOldValue(), "[test pattern modified]"); assertEquals(event.getNewValue(), metaConfVal); }