cecemei commented on code in PR #17774:
URL: https://github.com/apache/druid/pull/17774#discussion_r2056804007


##########
processing/src/main/java/org/apache/druid/segment/SegmentReference.java:
##########
@@ -19,12 +19,31 @@
 
 package org.apache.druid.segment;
 
+import org.apache.druid.query.policy.NoopPolicyEnforcer;
+import org.apache.druid.query.policy.PolicyEnforcer;
+
 /**
- * A {@link Segment} with a associated references, such as {@link 
ReferenceCountingSegment} where the reference is
+ * A {@link Segment} with an associated references, such as {@link 
ReferenceCountingSegment} where the reference is
  * the segment itself, and {@link 
org.apache.druid.segment.join.HashJoinSegment} which wraps a
  * {@link ReferenceCountingSegment} and also includes the associated list of
  * {@link org.apache.druid.segment.join.JoinableClause}
  */
 public interface SegmentReference extends Segment, ReferenceCountedObject
 {
+
+  /**
+   * Validates if the segment complies with the policy restrictions on tables.
+   * <p>
+   * This should be called right before the segment is about to be processed 
by the query stack, and after
+   * {@link 
org.apache.druid.query.planning.ExecutionVertex#createSegmentMapFunction(PolicyEnforcer)}.
+   */
+  default void validateOrElseThrow(PolicyEnforcer policyEnforcer)

Review Comment:
   Completely agree on the `SegmentId` approach, would be a cleaner solution 
and we can have a better mapping on different datasource (table, inline, 
lookup, external) to segmentId. 
   
   I reverted the double-wrapping check in commit 
1e6632fcb779919f3fc54050ab9b44aba19d3265, and then actually moved the 
no-double-wrapping check f604abffa9f34a7b7c520445a1cce14d92325088 to another pr 
(https://github.com/apache/druid/pull/17943). Please take a look again!
   



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