-
Oleg Smirnov authored
Allow queries of multiple SELECTs combined together with UNIONs/EXCEPTs/INTERSECTs to be pushed down to foreign engines. If the foreign engine provides an interface method "create_unit" and the UNIT is a top-level unit of the SQL query then the server tries to push the whole SELECT_LEX_UNIT down to the engine for execution. The engine should perform necessary checks and if they succeed, execute the query. If the engine is unable to execute the whole unit, then another attempt is made to push down SELECTs composing the unit separately using the "create_select" interface method. In this case the results of separate SELECTs are combined at the server side thus composing the final result
f4f5bd75