TAJO-1553 is recently resolved to improve broadcast join planning, but it has a limitation for outer joins. That is, for outer joins, preserved-row relations are not broadcastable to avoid input data duplication. This rule might limit broadcast join opportunity. Let me consider the following query as an example.
Please note that two consecutive left outer joins are associative. That is, their execution order can be changed without making result invalid. Thus, candidate query plans are as follows. (LOJ is short for left outer join)
In the query plan 1), only a is preserved-row. Thus, if the query plan 1) is selected, our current broadcast join planner makes the entire query plan as a single execution block with broadcast relations of b and c.
In contrast, if the query plan 2) is selected, it is executed with two execution blocks each of which performs a left outer join because only c is not preserved-row and thus broadcastable.
This limitation according to the forms of selected query plan will degrade performance of outer join processing.