Specifying the OR strategy

An OR strategy uses a set of index scans to limit the scan with each of the OR terms, then passes the resulting row IDs through a UnionDistinct operator to get, with a RidJoin from the table, the tuples corresponding to the unique row IDs.

The m_scan (multiscan) abstract plan operator forces index union, hence the OR strategy:

select * from t1
where c11 > 10 or c12 > 100
plan
“(m_scan t1)”