public boolean isExpired(long now, long evictTtl, long evictAckTtl) {
    return (hasClientAckTime() && (now - getClientAckTime()) >= evictAckTtl)
      || (now - procedure.getLastUpdate()) >= evictTtl;
  }
Hold the reference to a completed root procedure. Will be cleaned up after expired.
hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/CompletedProcedureRetainer.java