xiangfu0 commented on issue #5351:
URL: https://github.com/apache/pinot/issues/5351#issuecomment-4552760723

   Confirmed this is already supported on current `master`.
   
   The ingestion `ExpressionTransformer` topologically sorts transform 
evaluators before applying them, so a transform output can be used by another 
transform in the same config: 
https://github.com/apache/pinot/blob/master/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/recordtransformer/ExpressionTransformer.java#L95-L157
   
   There are focused tests covering this behavior:
   - `testTransformFunctionSortOrder` chains `d = plus(x, 10)`, `b = plus(d, 
10)`, `a = plus(b, 10)`, `c = plus(a, d)`: 
https://github.com/apache/pinot/blob/master/pinot-segment-local/src/test/java/org/apache/pinot/segment/local/recordtransformer/ExpressionTransformerTest.java#L358-L385
   - `testNonCyclicTransformFunctionSortOrder` verifies dependency ordering: 
https://github.com/apache/pinot/blob/master/pinot-segment-local/src/test/java/org/apache/pinot/segment/local/recordtransformer/ExpressionTransformerTest.java#L408-L434
   
   The original support was merged in #6495 (`Support chained transform 
functions`) on 2021-01-27. I also verified current `master` 
(`baccdcc489017df4449f5e594d3fab564b504ab2`) with:
   
   ```bash
   ./mvnw -pl pinot-segment-local 
-Dtest=ExpressionTransformerTest#testTransformFunctionSortOrder+testNonCyclicTransformFunctionSortOrder
 test
   ```
   
   Result: `BUILD SUCCESS`, 2 tests run, 0 failures/errors.


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