gabeiglio commented on code in PR #3780:
URL: https://github.com/apache/iceberg-python/pull/3780#discussion_r3769431290


##########
pyiceberg/table/__init__.py:
##########
@@ -362,18 +362,21 @@ def _set_ref_snapshot(
         return updates, requirements
 
     def _build_partition_predicate(
-        self, partition_records: set[Record], spec: PartitionSpec, schema: 
Schema
+        self, partition_records: set[Record], spec: PartitionSpec, schema: 
Schema, is_projected: bool = False

Review Comment:
   I like the idea of reusing `Transaction._build_partition_predicate` here, 
but I agree the `is_projected` flag isn't the cleanest way to express that. 
Looking at the link `build_partition_record_filter` ends up duplicating most of 
the same logic.
   
   We could a single shared `_build_partition_predicate`, add two thin wrapper 
methods that call it with different field sets (schema-based vs. spec-based). 
that way we keep the core predicate building logic in one place, and don't 
duplicate it in `build_partition_record_filter`.
   
   wdyt?



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