public static HoodieWriteConfig.Builder newBuilder() {
    return new Builder();
  }
@Test
  public void testAutoAdjustCleanPolicyForNonBlockingConcurrencyControl() {
    TypedProperties props = new TypedProperties();
    props.setProperty(HoodieTableConfig.TYPE.key(), HoodieTableType.MERGE_ON_READ.name());
    props.setProperty(KeyGeneratorOptions.RECORDKEY_FIELD_NAME.key(), "uuid");
    HoodieWriteConfig writeConfig = HoodieWriteConfig.newBuilder()
        .withPath("/tmp")
        .withIndexConfig(
            HoodieIndexConfig.newBuilder()
                .fromProperties(props)
                .withIndexType(HoodieIndex.IndexType.BUCKET)
                .withBucketIndexEngineType(HoodieIndex.BucketIndexEngineType.SIMPLE)
                .build())
        .withWriteConcurrencyMode(WriteConcurrencyMode.NON_BLOCKING_CONCURRENCY_CONTROL)
        .build();

    // Verify automatically set hoodie.clean.failed.writes.policy=LAZY for non-blocking concurrency control
    verifyConcurrencyControlRelatedConfigs(writeConfig,
        true, true, true,
        WriteConcurrencyMode.NON_BLOCKING_CONCURRENCY_CONTROL, HoodieFailedWritesCleaningPolicy.LAZY,
        HoodieLockConfig.LOCK_PROVIDER_CLASS_NAME.defaultValue());
  }