- Don't cache
Noneon unselected FK join trees, see #3083. - Some fixes for edge-cases around non-unique aliases and unicode aliases, see #3081 and #3078.
- Ensure subqueries get appropriate parens inside single argument functions. Functions that do not want the extra parens (exists, e.g.) will not add extra parens.
exists()wraps the query inEXISTS(...)rather than replacing its columns, fixing queries that order by or filter on a selected alias, and queries on MySQL that select two columns w/the same name.- Composite primary key columns are introspected in key-order.
