nastra commented on code in PR #8382:
URL: https://github.com/apache/iceberg/pull/8382#discussion_r1314817995


##########
nessie/src/main/java/org/apache/iceberg/nessie/NessieTableOperations.java:
##########
@@ -55,11 +55,25 @@ public class NessieTableOperations extends 
BaseMetastoreTableOperations {
    */
   public static final String NESSIE_COMMIT_ID_PROPERTY = "nessie.commit.id";
 
+  /**
+   * Name of the catalog property that controls whether metadata cleanup 
operations (e.g. GC) should
+   * be restricted for Nessie tables (defaults to {@code true}).
+   *
+   * <p>This is an advanced property. Setting it to {@code false} permits 
Iceberg code that is
+   * unaware of Nessie-specific behaviours (e.g. non-linear commit histories) 
to make metadata
+   * changes considering only the current branch history. It is a reasonable 
use case if there is
+   * only one branch defined on the Nessie Server side. If multiple Nessie 
branches are involved
+   * disabling this setting may lead to situations where some Nessie commits 
point to non-existent
+   * Iceberg metadata, which may break user expectations and/or make data in 
other Nessie branches
+   * unreadable.
+   */
+  public static final String RESTRICT_METADATA_CLEANUP_PROPERTY = 
"restrict-metadata-cleanup";

Review Comment:
   so does that mean that users need to set the GC enabled and this flag to 
actually run GC? I'm not fully sure why we need both flags?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to