Details
-
Sub-task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.17.0
-
None
Description
This issue aims to verify FLINK-30376: Introduce a new flink bushy join reorder rule which based on greedy algorithm.
In Flink-1.17, bushy join reorder strategy is the default join reorder strategy, and this strategy can be disable by setting factor '
table.optimizer.bushy-join-reorder-threshold' smaller that the table number need to be reordered. If disabled, the Lopt join reorder strategy, which is default join reorder strategy in Flink-1.16, will be choosen.
We can verify it in SQL client after we build the flink-dist package.
- Firstly, we need to create several tables (The best case is that these tables have table and column statistics).
- Secondly, we need to set 'table.optimizer.join-reorder-enabled = true' to open join reorder.
- Verify bushy join reorder (The default bushy join reorder threshold is 12, so if the number of table smaller than 12, the join reorder strategy is bushy join reorder).
- Compare the results of bushy join reorder and Lopt join reorder strategy. Need to be same.
- If we want to create a bushy join tree after join reorder, we need to add statistics. Like:'JoinReorderITCaseBase.testBushyTreeJoinReorder'.
If you meet any problems, it's welcome to ping me directly.