[to #49328715] fix a -4016 problem of trigger parser
This commit is contained in:
@ -982,7 +982,8 @@ int ObParser::parse(const ObString &query,
|
||||
ParseResult &parse_result,
|
||||
ParseMode parse_mode,
|
||||
const bool is_batched_multi_stmt_split_on,
|
||||
const bool no_throw_parser_error)
|
||||
const bool no_throw_parser_error,
|
||||
const bool is_pl_inner_parse)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
|
||||
@ -1101,7 +1102,7 @@ int ObParser::parse(const ObString &query,
|
||||
}
|
||||
} else {
|
||||
ObPLParser pl_parser(*(ObIAllocator*)(parse_result.malloc_pool_), connection_collation_);
|
||||
if (OB_FAIL(pl_parser.parse(stmt, stmt, parse_result))) {
|
||||
if (OB_FAIL(pl_parser.parse(stmt, stmt, parse_result, is_pl_inner_parse))) {
|
||||
LOG_WARN("failed to parse stmt as pl", K(stmt), K(ret));
|
||||
// may create ddl func, try it.
|
||||
if ((OB_ERR_PARSE_SQL == ret
|
||||
|
||||
@ -87,7 +87,8 @@ public:
|
||||
ParseResult &parse_result,
|
||||
ParseMode mode=STD_MODE,
|
||||
const bool is_batched_multi_stmt_split_on = false,
|
||||
const bool no_throw_parser_error = false);
|
||||
const bool no_throw_parser_error = false,
|
||||
const bool is_pl_inner_parse = false);
|
||||
|
||||
virtual void free_result(ParseResult &parse_result);
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user