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

MDEV-28166 sql_mode=ORACLE: fully qualified package function calls do not work: db.pkg.func()

Also fixes MDEV-19328 sql_mode=ORACLE: Package function in VIEW
This commit is contained in:
Alexander Barkov
2022-03-25 07:05:08 +04:00
parent cd88b0831f
commit 6437b30404
8 changed files with 519 additions and 2 deletions

View File

@ -6680,6 +6680,19 @@ public:
}
void copy(MEM_ROOT *mem_root, const LEX_CSTRING &db,
const LEX_CSTRING &name);
static Database_qualified_name split(const LEX_CSTRING &txt)
{
DBUG_ASSERT(txt.str[txt.length] == '\0'); // Expect 0-terminated input
const char *dot= strchr(txt.str, '.');
if (!dot)
return Database_qualified_name(NULL, 0, txt.str, txt.length);
size_t dblen= dot - txt.str;
Lex_cstring db(txt.str, dblen);
Lex_cstring name(txt.str + dblen + 1, txt.length - dblen - 1);
return Database_qualified_name(db, name);
}
// Export db and name as a qualified name string: 'db.name'
size_t make_qname(char *dst, size_t dstlen) const
{