summaryrefslogtreecommitdiff
path: root/sql/item.h
diff options
context:
space:
mode:
authorAleksey Midenkov <midenok@gmail.com>2021-05-27 17:00:14 +0300
committerAleksey Midenkov <midenok@gmail.com>2021-09-29 21:05:54 +0300
commit38dc726d268839a62e2beb45ef4330978418a57f (patch)
tree42bd2b9d62ceb754f2d0b2fb6aecf8cf27c7873a /sql/item.h
parentc70fc55bd7599cee91fe271ac7fb1f89ef79aa3e (diff)
downloadmariadb-git-38dc726d268839a62e2beb45ef4330978418a57f.tar.gz
MDEV-24176 Preparations
1. moved fix_vcol_exprs() call to open_table() mysql_alter_table() doesn't do lock_tables() so it cannot win from fix_vcol_exprs() from there. Tests affected: main.default_session 2. Vanilla cleanups and comments.
Diffstat (limited to 'sql/item.h')
-rw-r--r--sql/item.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/sql/item.h b/sql/item.h
index 4c78ed0ea3d..edefb4fca26 100644
--- a/sql/item.h
+++ b/sql/item.h
@@ -1737,6 +1737,13 @@ public:
/*========= Item processors, to be used with Item::walk() ========*/
virtual bool remove_dependence_processor(void *arg) { return 0; }
virtual bool cleanup_processor(void *arg);
+ /*
+ TODO: Remove cleanup_excluding_fields_processor()
+
+ This is just a quick hack to exclude wrongly working Item_field from
+ processing. Now it works due to correct execution environment (see
+ next commit). Related to MDEV-10355
+ */
virtual bool cleanup_excluding_fields_processor(void *arg) { return cleanup_processor(arg); }
virtual bool cleanup_excluding_const_fields_processor(void *arg) { return cleanup_processor(arg); }
virtual bool collect_item_field_processor(void *arg) { return 0; }
@@ -2924,6 +2931,12 @@ public:
const char *db_name;
const char *table_name;
LEX_CSTRING field_name;
+ /*
+ NOTE: came from TABLE::alias_name_used and this is only a hint! It works
+ only in need_correct_ident() condition. On other cases it is FALSE even if
+ table_name is alias! It cannot be TRUE in these cases, lots of spaghetti
+ logic depends on that.
+ */
bool alias_name_used; /* true if item was resolved against alias */
/*
Cached value of index for this field in table->field array, used by prep.