@VisibleForTesting
  int getCurrentSize() {
    poolLock.lock();
    try {
      return pool.size();
    } finally {
      poolLock.unlock();
    }
  }
Create {@code sessionCount} number of sessions, doing so in parallel, using
a maximum of {@code maxParallel} threads.

@param sessionCount The number of sessions to launch
@return A single {@code future} which carries all of the outputs from each
        session launch
@throws IllegalArgumentException if {@code sessionCount} or
          {@code maxParallel} is less than or equal to zero
ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionPool.java