@Override
  public HiveIcebergOutputCommitter getOutputCommitter() {

    try {
      LOG.debug(" Using HiveIcebergStorageHandlerStub for unit tests");
      if (TestUtilPhaser.isInstantiated()) {
        Phaser testUtilPhaser = TestUtilPhaser.getInstance().getPhaser();
        LOG.debug("Activating the Phaser Barrier for thread: {} ", Thread.currentThread().getName());
        testUtilPhaser.arriveAndAwaitAdvance();
        LOG.debug("Breaking the Phaser Barrier and deregistering the phaser for thread: {} ",
            Thread.currentThread().getName());
      }
    } catch (Exception e) {
      throw new RuntimeException("Phaser failed: ", e);
    }

    return new HiveIcebergOutputCommitter();
  }
HiveIcebergStorageHandlerStub is used only for unit tests.
Currently, we use it to achieve a specific thread interleaving to simulate conflicts in concurrent writes
deterministically.
iceberg/iceberg-handler/src/test/java/org/apache/iceberg/mr/hive/HiveIcebergStorageHandlerStub.java