public void putLast(E e) throws InterruptedException {
    if (e == null) throw new NullPointerException();
    lock.lock();
    try {
      while (!innerAdd(e))
        notFull.await();
    } finally {
      lock.unlock();
    }
  }
@throws NullPointerException {@inheritDoc}
@throws InterruptedException {@inheritDoc}
llap-server/src/java/org/apache/hadoop/hive/llap/daemon/impl/PriorityBlockingDeque.java