summaryrefslogtreecommitdiff
path: root/sql/sql_parse.cc
diff options
context:
space:
mode:
authorSergei Petrunia <psergey@askmonty.org>2021-04-15 00:19:13 +0300
committerSergei Petrunia <psergey@askmonty.org>2021-04-17 00:05:29 +0300
commit2656e876828c2d3cb05bd698fc641e333c336034 (patch)
tree7164aca065740925f5c47b2413cda3564eae64b0 /sql/sql_parse.cc
parent3f138fa3a53383b98a934aae72667390ea3bf2eb (diff)
downloadmariadb-git-2656e876828c2d3cb05bd698fc641e333c336034.tar.gz
Cleanup: fake_select_lex->select_number=FAKE_SELECT_LEX_ID, not [U]INT_MAX
SELECT_LEX objects that are "fake_select_lex" (i.e read UNION output) used both INT_MAX and UINT_MAX as select_number. - mysql_explain_union() assigned UINT_MAX - st_select_lex_unit::add_fake_select_lex assigned INT_MAX This didn't matter initially (before EXPLAIN FORMAT=JSON), because the code had no checks for this value. EXPLAIN FORMAT=JSON and later other features did introduce checks for select_number values. The check had to check for two constants and looked really confusing. This patch joins the two constants into one - FAKE_SELECT_LEX_ID.
Diffstat (limited to 'sql/sql_parse.cc')
-rw-r--r--sql/sql_parse.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc
index 3f0e71c747f..ddfc49c6d52 100644
--- a/sql/sql_parse.cc
+++ b/sql/sql_parse.cc
@@ -8954,7 +8954,7 @@ bool st_select_lex_unit::add_fake_select_lex(THD *thd_arg)
DBUG_RETURN(1);
fake_select_lex->include_standalone(this,
(SELECT_LEX_NODE**)&fake_select_lex);
- fake_select_lex->select_number= INT_MAX;
+ fake_select_lex->select_number= FAKE_SELECT_LEX_ID;
fake_select_lex->parent_lex= thd_arg->lex; /* Used in init_query. */
fake_select_lex->make_empty_select();
fake_select_lex->set_linkage(GLOBAL_OPTIONS_TYPE);