Fixed LP bug #784281.
When a view is merged into a select all the depended_from fields pointing to the select of the view should have been corrected to point to the select where the view is used. It was not done yet. This could lead to wrong results returned by queries such as one from the test case for bug 33389. Correction of outer references required walking through all items of the proccesed qurery. To avoid this the following solution was implemented. Each select now contains a pointer to the select it is merged into (if there is any). Such pointers allow to get the corrected value of depended_from on the fly. The function Item_ident::get_depended_from was introduced for this purpose.
Showing
Please register or sign in to comment