private void logOomErrorMessage(String msg) {
    if (!oomLogging) return;
    while (true) {
      long time = System.nanoTime();
      long lastTime = lastLog.get();
      // Magic value usage is invalid with nanoTime, so once in a 1000 years we may log extra.
      boolean shouldLog = (lastTime == -1 || (time - lastTime) > MAX_DUMP_INTERVAL_NS);
      if (shouldLog && !lastLog.compareAndSet(lastTime, time)) {
        continue;
      }
      if (shouldLog) {
        LlapIoImpl.LOG.error(msg + debugDumpForOomInternal());
      } else {
        LlapIoImpl.LOG.error(msg);
      }
      return;
    }
  }
Tries to allocate destCount - destIx blocks after the forced eviction of some other buffers.
Args the same as allocateFast.
llap-server/src/java/org/apache/hadoop/hive/llap/cache/BuddyAllocator.java