1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

MDEV-32583 UUID() should be treated as stochastic for the purposes of forcing query materialization

RAND() and UUID() are treated differently with respect to subquery
materialization both should be marked as uncacheable, forcing materialization.
Altered Create_func_uuid(_short)::create_builder().
Added comment in header about UNCACHEABLE_RAND meaning also unmergeable.
This commit is contained in:
Rex
2024-03-19 08:50:19 +12:00
parent 5979dcf95b
commit 9e800eda86
5 changed files with 43 additions and 3 deletions

View File

@ -3621,6 +3621,15 @@ public:
return (context_analysis_only & CONTEXT_ANALYSIS_ONLY_VIEW);
}
/**
Mark all queries in this lex structure as uncacheable for the cause given
@param cause the reason queries are to be marked as uncacheable
Note, any cause is sufficient for st_select_lex_unit::can_be_merged() to
disallow query merges.
*/
inline void uncacheable(uint8 cause)
{
safe_to_cache_query= 0;