@Override
  public boolean hasNext() throws Exception {
    // return false if any child is consumed up.
    for (int i = 0; i < inputOperatorsCount; i++) {
      if (isEmpty(i) && canCallNext[i] && !children.get(i).hasNextWithTimer()) {
        return false;
      }
    }
    // return true if all children still hava data
    return true;
  }
Try to cache one result of each child.

@return true if results of all children are ready. Return false if some children is blocked or
    return null.
@throws Exception errors happened while getting tsblock from children
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/execution/operator/process/join/InnerTimeJoinOperator.java