From 21ea0e8b82a4a3314b5070918be2c100d047eeab Mon Sep 17 00:00:00 2001 From: 0xacc Date: Wed, 2 Aug 2023 01:18:13 +0000 Subject: [PATCH] [to #51227337] fix ObExecEnv restoration after PL execution --- src/pl/ob_pl.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/pl/ob_pl.cpp b/src/pl/ob_pl.cpp index 5ca5b562bc..5391dfd6a7 100644 --- a/src/pl/ob_pl.cpp +++ b/src/pl/ob_pl.cpp @@ -955,6 +955,13 @@ int ObPLContext::set_exec_env(ObPLFunction &routine) OZ (routine.get_exec_env().store(*session_info_)); OX (need_reset_exec_env_ = true); } + + // always restore sql_mode in mysql mode, + // because sql_mode may be change inside PL. + if (OB_SUCC(ret) && lib::is_mysql_mode()) { + OX(need_reset_exec_env_ = true); + } + return ret; }