summaryrefslogtreecommitdiff
path: root/sql/sql_class.cc
diff options
context:
space:
mode:
authorDmitry Shulga <dmitry.shulga@mariadb.com>2022-02-15 12:20:43 +0700
committerDmitry Shulga <dmitry.shulga@mariadb.com>2022-02-16 21:53:12 +0700
commite5693d31e2bbb5be23f0f57e309e280a6de2ac4b (patch)
tree536d0833b4735d46a777d4ac25e9285cd1716a27 /sql/sql_class.cc
parente12d841ea7c5f4851e3bb8189668ff9de9135e3b (diff)
downloadmariadb-git-bb-10.8-MDEV-5816.tar.gz
MDEV-5816: Stored programs: validation of stored program statementsbb-10.8-MDEV-5816
Added storing of sql expression for instruction being parsed inside the classes derived from the class sp_lex_instr. Stored sql expression is returned by the abstract method sp_lex_instr::get_expr_query redefined in the derived classes. The virtual method sp_lex_instr::get_query() has beens added to return a parseable string for a statement that corresponds to the given instruction.
Diffstat (limited to 'sql/sql_class.cc')
-rw-r--r--sql/sql_class.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/sql/sql_class.cc b/sql/sql_class.cc
index ac050eb2fd4..ab15a08874f 100644
--- a/sql/sql_class.cc
+++ b/sql/sql_class.cc
@@ -8153,3 +8153,11 @@ THD_list_iterator *THD_list_iterator::iterator()
{
return &server_threads;
}
+
+
+LEX_CSTRING make_string(THD *thd, const char *start_ptr,
+ const char *end_ptr)
+{
+ size_t length = end_ptr - start_ptr;
+ return {strmake_root(thd->mem_root, start_ptr, length), length};
+}