roryqi commented on code in PR #13778:
URL: https://github.com/apache/gravitino/pull/13778#discussion_r4346341396


##########
docs/policies.md:
##########
@@ -103,6 +103,15 @@ mask := action("show-last-4") if is_group_member("support")
 else := action("replace-with-null")
 ```
 
+When the experimental Iceberg REST read-restriction loader resolves several 
row-filter policies
+for one table, a filter that resolves to `true` adds no restriction and is 
ignored. Identical
+effective filters are deduplicated. Distinct restrictive filters conflict and 
cause the load-table
+request to fail; the loader does not combine them.
+
+If a column-mask action is not applicable to a column type, the experimental 
loader fails the
+load-table request rather than omitting the mask and exposing the original 
values. For example,
+`replace-with-null` cannot apply to a required column.

Review Comment:
   Addressed in 371cb34cea. The converter now evaluates mask branches from left 
to right and stops at the first true condition. Only the selected action must 
be applicable to the column; an incompatible selected action still fails 
load-table. The paragraph now states this explicitly, so the example with a 
show-last-4 branch and a replace-with-null fallback is valid for a required 
string column when the show-last-4 branch is selected. Tests cover unselected 
incompatible actions and selected incompatible actions.



-- 
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]

Reply via email to