FrankChen021 commented on code in PR #19704:
URL: https://github.com/apache/druid/pull/19704#discussion_r3783671924
##########
indexing-service/src/main/java/org/apache/druid/indexing/seekablestream/StreamingPartitionsSpec.java:
##########
@@ -55,7 +56,10 @@ public interface StreamingPartitionsSpec
* segment's shard spec with it at publish time. Returns {@code null} when
this spec is configured such that there is
* nothing to collect (e.g. no dimensions), in which case no collector runs
and segments are published unchanged.
* One collector is created per task run.
+ *
+ * @param dimensionsSpec the task's declared dimensions, or {@code null} if
none; lets a strategy consult per-dimension
+ * schema (e.g. to enable type-gated numeric pruning
for {@code LONG} dimensions).
*/
@Nullable
- StreamingShardSpecCollector createCollector();
+ StreamingShardSpecCollector createCollector(@Nullable DimensionsSpec
dimensionsSpec);
Review Comment:
[P2] Preserve collector-factory compatibility
This replaces the existing public/pluggable `createCollector()` method with
an abstract parameterized method. External implementations of
`StreamingPartitionsSpec` will then fail to compile, or can throw
`AbstractMethodError` when the task runner invokes the new method. Retain a
compatibility bridge for existing implementations while adding the
parameterized path.
--
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]