924060929 commented on PR #65129:
URL: https://github.com/apache/doris/pull/65129#issuecomment-4955126365

   @morrySnow Per your earlier comment that the children outputs are already 
legal after the regulator, I've simplified 
`ChildOutputPropertyDeriver.visitPhysicalSetOperation` back to the 4-case rule 
(first NATURAL / else first STORAGE_BUCKETED / else the equivalence-set-aware 
generic loop) and removed the layout / output-position / 
equivalence-intersection helper methods that the automated reviewer had asked 
me to add — `ChildOutputPropertyDeriver` set-op code goes from ~255 back to 
~133 lines, and the translator marker is back to the simple `isStorageBucketed` 
+ known-layout check.
   
   All the shapes the automated reviewer raised — equivalence-mediated bucket 
keys (a join key exposed via a projected column), multiple visible equivalents 
where the parent hashes on a later one, and a `(k, v)` bucket key wider than 
the set-op requirement — are covered by committed regression cases 
(`bucket_shuffle_equivalent_key_fill_up`, `bucket_shuffle_two_equivalent_keys`, 
`multi_column_bucket_key_intersect`) that all pass on this simpler version; I 
verified their results match the execution-shuffle path on a 4-BE cluster.
   
   The only deviation from your version is the `shuffleToRight` branch 
returning a non-specific property (`createAnyFromHash`) instead of 
`ShuffleType.EXECUTION_BUCKETED`, which fixes a reproducible "Can not find 
tablet ... in the bucket" error when two right-basic set operations of 
different layouts are co-located under a join.
   
   Could you confirm this simpler direction is what you want, rather than 
re-adding the alignment proofs the bot requested?


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