I noticed a number of places in the code where the successors of a
LogicalRelationalOperator is accessed as "op.successors.get(0)". Is it
always the case that logical relational operators (in the new logical
optimizer framework) have only 1 successor? Why dont the rules iterate over
the successors instead of assuming there is a single successor?

An example which shows an LOFilter having multiple successor (correct me if
I am wrong):

A1 = Load(..);
A2 = Load(..);
B = LOFilter(...);
C = LOJoin(A1,B);
D = LOJoin(A2,B);

Thanks!
Swati

Reply via email to