public SimpleFuture and(SimpleFuture anotherFuture) {
    return new SimpleFuture(
        CompletableFuture.allOf(completedFuture, anotherFuture.completedFuture));
  }
Return until completedFuture is done, which means task or process is truly finished
amoro-common/src/main/java/org/apache/amoro/process/SimpleFuture.java