[FEAT MERGE] 4.1 PL/SQL enhence & development
This commit is contained in:
@ -184,6 +184,8 @@ public:
|
||||
stmt::StmtType get_stmt_type() const;
|
||||
stmt::StmtType get_inner_stmt_type() const;
|
||||
stmt::StmtType get_literal_stmt_type() const;
|
||||
const common::ObString& get_stmt_ps_sql() const { return ps_sql_; }
|
||||
common::ObString& get_stmt_ps_sql() { return ps_sql_; }
|
||||
int64_t get_query_string_id() const;
|
||||
static void refresh_location_cache(ObTaskExecutorCtx &task_exec_ctx, bool is_nonblock, int err);
|
||||
int refresh_location_cache(bool is_nonblock);
|
||||
@ -198,8 +200,10 @@ public:
|
||||
if (0 < my_session_.get_pl_exact_err_msg().length()) {
|
||||
my_session_.get_pl_exact_err_msg().reset();
|
||||
}
|
||||
is_init_ = true;
|
||||
return common::OB_SUCCESS;
|
||||
}
|
||||
bool is_inited() const { return is_init_; }
|
||||
common::ObIAllocator& get_mem_pool() { return mem_pool_; }
|
||||
ObExecContext &get_exec_context() { return exec_ctx_ != nullptr ? *exec_ctx_ : *inner_exec_ctx_; }
|
||||
void set_exec_context(ObExecContext &exec_ctx) { exec_ctx_ = &exec_ctx; }
|
||||
@ -213,7 +217,7 @@ public:
|
||||
int add_returning_param_column(const common::ObField ¶m);
|
||||
|
||||
int from_plan(const ObPhysicalPlan &phy_plan, const common::ObIArray<ObPCParam *> &raw_params);
|
||||
int to_plan(const bool is_ps_mode, ObPhysicalPlan *phy_plan);
|
||||
int to_plan(const PlanCacheMode mode, ObPhysicalPlan *phy_plan);
|
||||
const common::ObString &get_statement_name() const;
|
||||
void set_statement_id(const uint64_t stmt_id);
|
||||
void set_statement_name(const common::ObString name);
|
||||
@ -420,6 +424,8 @@ private:
|
||||
bool is_returning_;
|
||||
bool is_com_filed_list_; //used to mark COM_FIELD_LIST
|
||||
common::ObString wild_str_;//uesd to save filed wildcard in COM_FIELD_LIST;
|
||||
common::ObString ps_sql_; // for sql in pl
|
||||
bool is_init_;
|
||||
};
|
||||
|
||||
|
||||
@ -490,7 +496,9 @@ inline ObResultSet::ObResultSet(ObSQLSessionInfo &session, common::ObIAllocator
|
||||
executor_(),
|
||||
is_returning_(false),
|
||||
is_com_filed_list_(false),
|
||||
wild_str_()
|
||||
wild_str_(),
|
||||
ps_sql_(),
|
||||
is_init_(false)
|
||||
{
|
||||
message_[0] = '\0';
|
||||
// Always called in the ObResultSet constructor
|
||||
|
||||
Reference in New Issue
Block a user