private ExecutorService getTimeoutHandlingExecutor() {
    return Executors.newSingleThreadExecutor((r) -> {
      Thread masterThread = Thread.currentThread();
      Thread t = new Thread(masterThread.getThreadGroup(), r, masterThread.getName() + "_timeout_executor");
      t.setDaemon(masterThread.isDaemon());
      t.setPriority(masterThread.getPriority());
      return t;
    });
  }
Creates a single threaded executor used for handling timeouts.
The thread settings are inherited from the current thread.
@return Single threaded executor service to be used for timeout handling
ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/Worker.java