github-actions[bot] commented on code in PR #65802:
URL: https://github.com/apache/doris/pull/65802#discussion_r3612000517
##########
fe/fe-core/src/test/java/org/apache/doris/nereids/jobs/joinorder/joinhint/DistributeHintTest.java:
##########
@@ -50,23 +50,6 @@ public class DistributeHintTest extends TPCHTestBase {
private List<String> failCases = new ArrayList<>();
- @Test
- public void testLeading() {
- for (int t = 3; t < 10; t++) {
- for (int e = t - 1; e <= (t * (t - 1)) / 2; e++) {
- for (int i = 0; i < 10; i++) {
- System.out.println("TableNumber: " + String.valueOf(t) + "
EdgeNumber: " + e + " Iteration: " + i);
- randomTest(t, e, false, true);
Review Comment:
[P1] Preserve a deterministic guard for the known semi-join failure
Please replace this randomized entry with a small deterministic guard before
deleting it. The reported missing map entry is a concrete production-invalid
rewrite, not only evaluator noise. For an original `A LEFT SEMI JOIN B ON A.k =
B.k`, an extra `C`, and `leading(B C A)`, current
`LeadingHint.getJoinConstraint` can produce:
```text
Join(A.k = B.k) // B.k is absent from both children
RightSemiJoin
Scan(B)
Scan(C) // right-semi output is C only
Scan(A)
```
The guard at `LeadingHint.java:420-422` tests `isSubset(...) &&
!isSubset(...)` on the same arguments, so it never rejects
`getJoinConstraint(B|C, B, C)`; the child keeps bitmap `B|C` after dropping
`B`, and the saved predicate is attached above it. #65205 added the exact
`withoutRetainedSide` assertion after this muted test exposed the issue, and
#65546 reverted that fix plus its focused tests while a correct fix remained
outstanding. The cited FE-UT validation now only runs `withLeading=false`,
while the broad result suites do not directly assert this constraint rejection.
A tiny direct `LeadingHintTest` covering early left/right semi/anti matches
would preserve the important signal without the ~51,000 unseeded attempts.
--
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]