Match between execution methods and abstract plans

There are some limits to join orders and join types, depending on the type of query. One example is outer joins, such as:

select * from t1, t2
where c11 *= c21

Adaptive Server requires the outer member of the outer join to be the outer table during join processing. Therefore, this abstract plan is illegal:

(g_join
    (scan t2)
    (scan t1)
)

Attempting to use this plan results in an error message, and the query is not compiled.