@Override
  public void close() throws IOException {
    synchronized (ScheduledQueryExecutionService.class) {
      if (INSTANCE == null || INSTANCE != this) {
        throw new IllegalStateException("The current ScheduledQueryExecutionService INSTANCE is invalid");
      }
      context.executor.shutdown();
      forceScheduleCheck();
      try {
        context.executor.awaitTermination(1, TimeUnit.SECONDS);
        context.executor.shutdownNow();
        INSTANCE = null;
      } catch (InterruptedException e) {
        Thread.currentThread().interrupt();
      }
    }
  }
Reports progress periodically.

To retain the running state of all the in-flight scheduled query executions;
this class initiates a reporting round periodically.
ql/src/java/org/apache/hadoop/hive/ql/scheduled/ScheduledQueryExecutionService.java