@Override
      public void run() {
        do {
          try {
            Thread.sleep(1000);
          } catch (InterruptedException e) {
            LOG.warn("Signalling thread was interrupted: " + e.getMessage());
          }
        } while (!thriftServer.isRunning());
        startLock.lock();
        try {
          startedServing.set(true);
          startCondition.signalAll();
        } finally {
          startLock.unlock();
        }
      }
@param port where metastore server is running
@return metastore server instance URL. If the metastore server was bound to a configured
host, return that appended by port. Otherwise, return the externally visible URL of the local
host with the given port
@throws Exception
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java