github-actions[bot] commented on code in PR #64530:
URL: https://github.com/apache/doris/pull/64530#discussion_r3417814347
##########
regression-test/suites/nereids_syntax_p0/distribute/prune_bucket_with_bucket_shuffle_join.groovy:
##########
@@ -82,6 +82,23 @@ suite("prune_bucket_with_bucket_shuffle_join") {
set disable_join_reorder=true;
"""
+ // With enable_nereids_distribute_planner=true the RIGHT OUTER JOIN
distribution is
+ // non-deterministic between BUCKET_SHUFFLE and PARTITIONED. The choice is
sticky within
+ // a connection (so retrying in the same connection can not change it),
and both plans are
+ // correct -- BUCKET_SHUFFLE just saves one exchange. Only run the
bucket-shuffle-specific
+ // checks when the planner actually chose BUCKET_SHUFFLE, otherwise return
directly.
+ String bucketShuffleExplain = null
+ explain {
+ sql sqlStr
+ check { result ->
+ log.info("Explain result:\n${result}")
+ bucketShuffleExplain = result
+ }
+ }
+ if (!bucketShuffleExplain.contains("RIGHT OUTER JOIN(BUCKET_SHUFFLE)")) {
+ return
Review Comment:
When this guard takes the `PARTITIONED` branch, the suite returns before
`order_qt_fillup_bucket sqlStr`, so the existing `-- !fillup_bucket --` block
is never compared on exactly the runs this PR is stabilizing. The result check
is not bucket-shuffle-specific; it should still execute for both legal
distributions, with only the exchange/tablet-pruning assertions skipped.
```suggestion
order_qt_fillup_bucket sqlStr
return
```
--
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]