Remove warning configurations

This commit is contained in:
LINxiansheng
2021-07-30 14:12:13 +08:00
committed by wangzelin.wzl
parent 62c4fec8b5
commit a331dec52c
107 changed files with 695 additions and 693 deletions

View File

@ -34,8 +34,8 @@ public:
ObMaterialInput() : bypass_(false)
{}
virtual ~ObMaterialInput() = default;
virtual int init(ObExecContext& ctx, ObTaskInfo& task_info, const ObPhyOperator& op);
virtual ObPhyOperatorType get_phy_op_type() const;
virtual int init(ObExecContext& ctx, ObTaskInfo& task_info, const ObPhyOperator& op) override;
virtual ObPhyOperatorType get_phy_op_type() const override;
virtual void reset() override
{
bypass_ = false;

View File

@ -26,7 +26,7 @@ public:
explicit ObMultiPartDelete(common::ObIAllocator& allocator);
virtual ~ObMultiPartDelete();
virtual int create_operator_input(ObExecContext& ctx) const
virtual int create_operator_input(ObExecContext& ctx) const override
{
UNUSED(ctx);
return common::OB_SUCCESS;
@ -35,7 +35,7 @@ public:
{
return subplan_has_foreign_key();
}
virtual bool is_multi_dml() const
virtual bool is_multi_dml() const override
{
return true;
}
@ -46,23 +46,23 @@ private:
* called by open.
* Every op should implement this method.
*/
virtual int inner_open(ObExecContext& ctx) const;
virtual int inner_close(ObExecContext& ctx) const;
virtual int inner_open(ObExecContext& ctx) const override;
virtual int inner_close(ObExecContext& ctx) const override;
/**
* @brief init operator context, will create a physical operator context (and a current row space)
* @param ctx[in], execute context
* @return if success, return OB_SUCCESS, otherwise, return errno
*/
int init_op_ctx(ObExecContext& ctx) const;
int init_op_ctx(ObExecContext& ctx) const override;
int shuffle_delete_row(ObExecContext& ctx, bool& got_row) const;
/**
* @brief called by get_next_row(), get a row from the child operator or row_store
* @param ctx[in], execute context
* @param row[out], ObSqlRow an obj array and row_size
*/
virtual int inner_get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const;
virtual int get_next_row(ObExecContext& ctx, const ObNewRow*& row) const;
virtual int inner_get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const override;
virtual int get_next_row(ObExecContext& ctx, const ObNewRow*& row) const override;
};
} // namespace sql
} // namespace oceanbase

View File

@ -28,7 +28,7 @@ public:
explicit ObMultiPartInsert(common::ObIAllocator& alloc);
virtual ~ObMultiPartInsert();
virtual int create_operator_input(ObExecContext& ctx) const
virtual int create_operator_input(ObExecContext& ctx) const override
{
UNUSED(ctx);
return common::OB_SUCCESS;
@ -37,10 +37,10 @@ public:
{
return subplan_has_foreign_key();
}
void reset();
void reuse();
void reset() override;
void reuse() override;
int set_insert_row_exprs();
virtual bool is_multi_dml() const
virtual bool is_multi_dml() const override
{
return true;
}
@ -51,15 +51,15 @@ protected:
* @param ctx[in], execute context
* @return if success, return OB_SUCCESS, otherwise, return errno
*/
virtual int init_op_ctx(ObExecContext& ctx) const;
virtual int init_op_ctx(ObExecContext& ctx) const override;
/**
* @brief open operator, not including children operators.
* called by open.
* Every op should implement this method.
*/
virtual int inner_open(ObExecContext& ctx) const;
virtual int get_next_row(ObExecContext& ctx, const ObNewRow*& row) const;
virtual int inner_close(ObExecContext& ctx) const;
virtual int inner_open(ObExecContext& ctx) const override;
virtual int get_next_row(ObExecContext& ctx, const ObNewRow*& row) const override;
virtual int inner_close(ObExecContext& ctx) const override;
int shuffle_insert_row(ObExecContext& ctx, bool& got_row) const;
protected:

View File

@ -27,7 +27,7 @@ public:
explicit ObMultiPartUpdate(common::ObIAllocator& allocator);
virtual ~ObMultiPartUpdate();
virtual int create_operator_input(ObExecContext& ctx) const
virtual int create_operator_input(ObExecContext& ctx) const override
{
UNUSED(ctx);
return common::OB_SUCCESS;
@ -36,7 +36,7 @@ public:
{
return subplan_has_foreign_key();
}
virtual bool is_multi_dml() const
virtual bool is_multi_dml() const override
{
return true;
}
@ -47,17 +47,17 @@ private:
* called by open.
* Every op should implement this method.
*/
virtual int inner_open(ObExecContext& ctx) const;
virtual int inner_close(ObExecContext& ctx) const;
virtual int get_next_row(ObExecContext& ctx, const ObNewRow*& row) const;
virtual int inner_open(ObExecContext& ctx) const override;
virtual int inner_close(ObExecContext& ctx) const override;
virtual int get_next_row(ObExecContext& ctx, const ObNewRow*& row) const override;
/**
* @brief init operator context, will create a physical operator context (and a current row space)
* @param ctx[in], execute context
* @return if success, return OB_SUCCESS, otherwise, return errno
*/
int init_op_ctx(ObExecContext& ctx) const;
virtual int inner_get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const;
int init_op_ctx(ObExecContext& ctx) const override;
virtual int inner_get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const override;
int shuffle_update_row(ObExecContext& ctx, bool& got_row) const;
int merge_implicit_cursor(
const common::ObNewRow& full_row, bool is_update, bool client_found_rows, ObPhysicalPlanCtx& plan_ctx) const;

View File

@ -34,7 +34,7 @@ public:
explicit ObMultiTableInsertUp(common::ObIAllocator& alloc);
virtual ~ObMultiTableInsertUp();
virtual int create_operator_input(ObExecContext& ctx) const
virtual int create_operator_input(ObExecContext& ctx) const override
{
UNUSED(ctx);
return common::OB_SUCCESS;
@ -49,7 +49,7 @@ public:
}
int shuffle_final_delete_row(ObExecContext& ctx, const common::ObNewRow& delete_row) const;
int shuffle_final_insert_row(ObExecContext& ctx, const common::ObNewRow& insert_row) const;
virtual bool is_multi_dml() const
virtual bool is_multi_dml() const override
{
return true;
}
@ -60,14 +60,14 @@ protected:
* @param ctx[in], execute context
* @return if success, return OB_SUCCESS, otherwise, return errno
*/
virtual int init_op_ctx(ObExecContext& ctx) const;
virtual int init_op_ctx(ObExecContext& ctx) const override;
/**
* @brief open operator, not including children operators.
* called by open.
* Every op should implement this method.
*/
virtual int inner_open(ObExecContext& ctx) const;
virtual int inner_close(ObExecContext& ctx) const;
virtual int inner_open(ObExecContext& ctx) const override;
virtual int inner_close(ObExecContext& ctx) const override;
int load_insert_up_row(ObExecContext& ctx, common::ObRowStore& row_store) const;
int shuffle_insert_up_row(ObExecContext& ctx, bool& got_row) const;
int shuffle_insert_row(ObExecContext& ctx, common::ObPartMgr& part_mgr, ObMultiTableInsertUpCtx& replace_ctx,

View File

@ -34,7 +34,7 @@ public:
explicit ObMultiTableReplace(common::ObIAllocator& alloc);
virtual ~ObMultiTableReplace();
virtual int create_operator_input(ObExecContext& ctx) const
virtual int create_operator_input(ObExecContext& ctx) const override
{
UNUSED(ctx);
return common::OB_SUCCESS;
@ -49,7 +49,7 @@ public:
}
int shuffle_final_delete_row(ObExecContext& ctx, const common::ObNewRow& delete_row) const;
int shuffle_final_insert_row(ObExecContext& ctx, const common::ObNewRow& insert_row) const;
virtual bool is_multi_dml() const
virtual bool is_multi_dml() const override
{
return true;
}
@ -60,14 +60,14 @@ protected:
* @param ctx[in], execute context
* @return if success, return OB_SUCCESS, otherwise, return errno
*/
virtual int init_op_ctx(ObExecContext& ctx) const;
virtual int init_op_ctx(ObExecContext& ctx) const override;
/**
* @brief open operator, not including children operators.
* called by open.
* Every op should implement this method.
*/
virtual int inner_open(ObExecContext& ctx) const;
virtual int inner_close(ObExecContext& ctx) const;
virtual int inner_open(ObExecContext& ctx) const override;
virtual int inner_close(ObExecContext& ctx) const override;
int load_replace_row(ObExecContext& ctx, common::ObRowStore& row_store) const;
int shuffle_replace_row(ObExecContext& ctx, bool& got_row) const;

View File

@ -69,7 +69,7 @@ public:
explicit ObMultiTableInsert(common::ObIAllocator& alloc);
virtual ~ObMultiTableInsert();
virtual int create_operator_input(ObExecContext& ctx) const
virtual int create_operator_input(ObExecContext& ctx) const override
{
UNUSED(ctx);
return common::OB_SUCCESS;
@ -78,7 +78,7 @@ public:
{
return subplan_has_foreign_key();
}
void reset();
void reset() override;
int check_match_conditions(ObExprCtx& expr_ctx, const ObNewRow& row, bool have_insert_row,
const InsertTableInfo* table_info, int64_t& pre_when_conds_idx, bool& continue_insert, bool& is_match) const;
bool is_multi_insert_first() const
@ -103,7 +103,7 @@ public:
{
return idx < multi_table_insert_infos_.count() ? multi_table_insert_infos_.at(idx) : NULL;
}
virtual bool is_multi_dml() const
virtual bool is_multi_dml() const override
{
return true;
}
@ -114,15 +114,15 @@ protected:
* @param ctx[in], execute context
* @return if success, return OB_SUCCESS, otherwise, return errno
*/
virtual int init_op_ctx(ObExecContext& ctx) const;
virtual int init_op_ctx(ObExecContext& ctx) const override;
/**
* @brief open operator, not including children operators.
* called by open.
* Every op should implement this method.
*/
virtual int inner_open(ObExecContext& ctx) const;
virtual int get_next_row(ObExecContext& ctx, const ObNewRow*& row) const;
virtual int inner_close(ObExecContext& ctx) const;
virtual int inner_open(ObExecContext& ctx) const override;
virtual int get_next_row(ObExecContext& ctx, const ObNewRow*& row) const override;
virtual int inner_close(ObExecContext& ctx) const override;
int shuffle_insert_row(ObExecContext& ctx, bool& got_row) const;
int process_row(ObExecContext& ctx, ObMultiTableInsertCtx& insert_ctx, const ObNewRow*& insert_row) const;
int prepare_insert_row(const ObNewRow* input_row, const DMLSubPlan& insert_dml_sub, ObNewRow& new_row) const;

View File

@ -354,7 +354,7 @@ public:
is_single_part_ = false;
part_infos_.reset();
}
virtual int init(ObExecContext& ctx, ObTaskInfo& task_info, const ObPhyOperator& op);
virtual int init(ObExecContext& ctx, ObTaskInfo& task_info, const ObPhyOperator& op) override;
inline int64_t get_location_idx() const
{
return location_idx_;
@ -363,7 +363,7 @@ public:
{
location_idx_ = location_idx;
}
virtual bool need_serialized() const
virtual bool need_serialized() const override
{
return !is_single_part_;
}
@ -371,7 +371,7 @@ public:
* @brief set allocator which is used for deserialize, but not all objects will use allocator
* while deserializing, so you can override it if you need.
*/
virtual void set_deserialize_allocator(common::ObIAllocator* allocator)
virtual void set_deserialize_allocator(common::ObIAllocator* allocator) override
{
part_infos_.set_allocator(allocator);
}
@ -533,8 +533,8 @@ public:
explicit ObTableModify(common::ObIAllocator& alloc);
~ObTableModify();
void reset();
void reuse();
void reset() override;
void reuse() override;
/**
* @brief the table id specify which table will be modified data
*/
@ -549,7 +549,7 @@ public:
// void set_child_table_id(uint64_t table_id) { child_table_id_ = table_id; }
// void set_parent_table_id(uint64_t table_id) { parent_table_id_ = table_id; }
int add_column_info(const ColumnContent& column);
virtual int create_operator_input(ObExecContext& ctx) const;
virtual int create_operator_input(ObExecContext& ctx) const override;
/**
* @brief table_modify must tell storage every cell's column id in the row
* @param column_id[in], the order of column_id must correspond with the index of column in the row
@ -630,11 +630,11 @@ public:
{
return index_tid_;
}
virtual bool is_dml_operator() const
virtual bool is_dml_operator() const override
{
return true;
}
virtual bool is_dml_without_output() const
virtual bool is_dml_without_output() const override
{
return !is_returning();
}
@ -648,7 +648,7 @@ public:
{
return from_multi_table_dml_;
}
virtual OperatorOpenOrder get_operator_open_order(ObExecContext& ctx) const;
virtual OperatorOpenOrder get_operator_open_order(ObExecContext& ctx) const override;
static common::ObString get_duplicated_rowkey_buffer(const common::ObIArray<uint64_t>& rowkey_ids,
const common::ObNewRow& row, const common::ObTimeZoneInfo* tz_info = NULL);
static int init_dml_param(ObExecContext& ctx, const uint64_t table_id, const ObPhyOperator& phy_op,
@ -743,12 +743,12 @@ protected:
* called by open.
* Every op should implement this method.
*/
virtual int inner_open(ObExecContext& ctx) const;
virtual int inner_open(ObExecContext& ctx) const override;
/**
* @brief close operator, not including children operators.
* Every op should implement this method.
*/
virtual int inner_close(ObExecContext& ctx) const;
virtual int inner_close(ObExecContext& ctx) const override;
int calculate_virtual_column(common::ObExprCtx& expr_ctx, common::ObNewRow& calc_row, int64_t row_num) const;
int calc_returning_row(ObExprCtx& expr_ctx, const ObNewRow& cur_row, ObNewRow& return_row) const;

View File

@ -113,10 +113,10 @@ public:
explicit ObTableUpdate(common::ObIAllocator& alloc);
virtual ~ObTableUpdate();
void reset();
void reuse();
void reset() override;
void reuse() override;
virtual int rescan(ObExecContext& ctx) const override;
int get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const;
int get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const override;
virtual int switch_iterator(ObExecContext& ctx) const override;
int init_updated_column_count(common::ObIAllocator& allocator, int64_t count)
{
@ -161,25 +161,25 @@ protected:
* @param ctx[in], execute context
* @param row[out], ObSqlRow an obj array and row_size
*/
virtual int inner_get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const;
virtual int inner_get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const override;
/**
* @brief open operator, not including children operators.
* called by open.
* Every op should implement this method.
*/
virtual int inner_open(ObExecContext& ctx) const;
virtual int inner_open(ObExecContext& ctx) const override;
/**
* @brief close operator, not including children operators.
* Every op should implement this method.
*/
virtual int inner_close(ObExecContext& ctx) const;
virtual int inner_close(ObExecContext& ctx) const override;
/**
* @brief init operator context, will create a physical operator context (and a current row space)
* @param ctx[in], execute context
* @return if success, return OB_SUCCESS, otherwise, return errno
*/
int init_op_ctx(ObExecContext& ctx) const;
virtual int64_t to_string_kv(char* buf, const int64_t buf_len) const;
int init_op_ctx(ObExecContext& ctx) const override;
virtual int64_t to_string_kv(char* buf, const int64_t buf_len) const override;
inline int update_rows(ObExecContext& ctx, int64_t& affected_rows) const;
int build_lock_row(ObTableUpdateCtx& update_ctx, const common::ObNewRow& old_row) const;
int do_table_update(ObExecContext& ctx) const;

View File

@ -1153,7 +1153,7 @@ public:
virtual ~ObSubQueryRelationalExpr()
{}
virtual int assign(const ObExprOperator& other);
virtual int assign(const ObExprOperator& other) override;
void set_subquery_key(ObSubQueryKey key)
{

View File

@ -79,7 +79,7 @@ public:
virtual void reset() override
{ /*@TODO fix reset member*/
}
virtual int init(ObExecContext& ctx, ObTaskInfo& task_info, const ObPhyOperator& op);
virtual int init(ObExecContext& ctx, ObTaskInfo& task_info, const ObPhyOperator& op) override;
virtual void set_task_id(int64_t task_id)
{
task_id_ = task_id;

View File

@ -43,16 +43,16 @@ public:
ObPxNewRowIterator();
virtual ~ObPxNewRowIterator();
int get_next_row(common::ObNewRow& row);
int get_next_row(const ObIArray<ObExpr*>& exprs, ObEvalCtx& eval_ctx)
int get_next_row(common::ObNewRow& row) override;
int get_next_row(const ObIArray<ObExpr*>& exprs, ObEvalCtx& eval_ctx) override
{
UNUSED(exprs);
UNUSED(eval_ctx);
return common::OB_ERR_UNEXPECTED;
}
void reset();
void reset() override;
bool is_inited()
bool is_inited() override
{
return is_inited_;
}
@ -60,7 +60,7 @@ public:
{
is_inited_ = true;
}
bool has_next()
bool has_next() override
{
return rows_ > 0 && row_store_it_.has_next();
}
@ -69,7 +69,7 @@ public:
return is_eof_;
}
bool is_iter_end()
bool is_iter_end() override
{
return is_iter_end_;
}
@ -79,8 +79,8 @@ public:
return row_store_.get_row_cnt();
}
void set_iterator_end();
int load_buffer(const dtl::ObDtlLinkedBuffer& buffer);
void set_iterator_end() override;
int load_buffer(const dtl::ObDtlLinkedBuffer& buffer) override;
void set_rows(int64_t rows)
{
rows_ = rows;
@ -105,15 +105,15 @@ public:
ObPxDatumRowIterator();
virtual ~ObPxDatumRowIterator();
int get_next_row(const ObIArray<ObExpr*>& exprs, ObEvalCtx& eval_ctx);
int get_next_row(common::ObNewRow& row)
int get_next_row(const ObIArray<ObExpr*>& exprs, ObEvalCtx& eval_ctx) override;
int get_next_row(common::ObNewRow& row) override
{
UNUSED(row);
return common::OB_ERR_UNEXPECTED;
}
void reset();
void reset() override;
bool is_inited()
bool is_inited() override
{
return is_inited_;
}
@ -121,7 +121,7 @@ public:
{
is_inited_ = true;
}
bool has_next()
bool has_next() override
{
return rows_ > 0 && datum_store_it_.has_next();
}
@ -130,7 +130,7 @@ public:
return is_eof_;
}
bool is_iter_end()
bool is_iter_end() override
{
return is_iter_end_;
}
@ -140,8 +140,8 @@ public:
return datum_store_.get_row_cnt();
}
void set_iterator_end();
int load_buffer(const dtl::ObDtlLinkedBuffer& buffer);
void set_iterator_end() override;
int load_buffer(const dtl::ObDtlLinkedBuffer& buffer) override;
void set_rows(int64_t rows)
{
rows_ = rows;

View File

@ -29,15 +29,15 @@ class ObInMemoryTopnSort : public ObBaseSort {
public:
ObInMemoryTopnSort();
virtual ~ObInMemoryTopnSort();
virtual void reset();
virtual void reuse();
virtual int add_row(const common::ObNewRow& row, bool& need_sort);
virtual int sort_rows();
virtual int get_next_row(common::ObNewRow& row);
virtual void reset() override;
virtual void reuse() override;
virtual int add_row(const common::ObNewRow& row, bool& need_sort) override;
virtual int sort_rows() override;
virtual int get_next_row(common::ObNewRow& row) override;
virtual int64_t get_row_count() const override;
virtual int64_t get_used_mem_size() const override;
virtual int get_next_compact_row(common::ObString& compact_row);
virtual int set_sort_columns(const common::ObIArray<ObSortColumn>& sort_columns, const int64_t preifx_pos);
virtual int get_next_compact_row(common::ObString& compact_row) override;
virtual int set_sort_columns(const common::ObIArray<ObSortColumn>& sort_columns, const int64_t preifx_pos) override;
inline void set_fetch_with_ties(bool is_fetch_with_ties)
{
is_fetch_with_ties_ = is_fetch_with_ties;

View File

@ -49,16 +49,16 @@ public:
ObLocalMergeSort();
virtual ~ObLocalMergeSort();
virtual void reset();
virtual void reuse();
virtual int add_row(const common::ObNewRow& row, bool& need_sort);
virtual int sort_rows();
virtual int get_next_row(common::ObNewRow& row);
virtual void reset() override;
virtual void reuse() override;
virtual int add_row(const common::ObNewRow& row, bool& need_sort) override;
virtual int sort_rows() override;
virtual int get_next_row(common::ObNewRow& row) override;
virtual int64_t get_used_mem_size() const override;
virtual int inner_dump(ObIMergeSort& merge_sort, bool dump_last);
virtual int dump(ObIMergeSort& merge_sort);
virtual int final_dump(ObIMergeSort& merge_sort);
virtual int set_sort_columns(const common::ObIArray<ObSortColumn>& sort_columns, const int64_t preifx_pos);
virtual int dump(ObIMergeSort& merge_sort) override;
virtual int final_dump(ObIMergeSort& merge_sort) override;
virtual int set_sort_columns(const common::ObIArray<ObSortColumn>& sort_columns, const int64_t preifx_pos) override;
virtual void set_cur_input(int64_t nth_input)
{
cur_input_ = nth_input;

View File

@ -26,14 +26,14 @@ public:
ObSpecificColumnsSort(const char* label, uint64_t malloc_block_size, uint64_t tenant_id,
oceanbase::common::ObCtxIds::ObCtxIdEnum ctx_id);
virtual ~ObSpecificColumnsSort(){};
virtual void reset();
virtual void reuse();
virtual void rescan();
virtual int set_sort_columns(const common::ObIArray<ObSortColumn>& sort_columns, const int64_t prefix_pos);
virtual int add_row(const common::ObNewRow& row, bool& need_sort);
virtual void reset() override;
virtual void reuse() override;
virtual void rescan() override;
virtual int set_sort_columns(const common::ObIArray<ObSortColumn>& sort_columns, const int64_t prefix_pos) override;
virtual int add_row(const common::ObNewRow& row, bool& need_sort) override;
int add_row_without_copy(common::ObNewRow* row);
virtual int sort_rows();
virtual int get_next_row(common::ObNewRow& row);
virtual int sort_rows() override;
virtual int get_next_row(common::ObNewRow& row) override;
int get_sort_result_array(common::ObArray<const common::ObNewRow*>& sort_result);
virtual int64_t get_row_count() const override
{
@ -43,12 +43,12 @@ public:
{
return row_alloc_.used();
}
virtual int init_tenant_id(uint64_t tenant_id)
virtual int init_tenant_id(uint64_t tenant_id) override
{
row_alloc_.set_tenant_id(tenant_id);
return common::OB_SUCCESS;
}
virtual int get_next_compact_row(common::ObString& compact_row)
virtual int get_next_compact_row(common::ObString& compact_row) override
{
UNUSED(compact_row);
return common::OB_SUCCESS;

View File

@ -54,14 +54,14 @@ public:
ObTableScanInput();
virtual ~ObTableScanInput();
virtual void reset() override;
virtual int init(ObExecContext& ctx, ObTaskInfo& task_info, const ObPhyOperator& op);
virtual int init(ObExecContext& ctx, ObTaskInfo& task_info, const ObPhyOperator& op) override;
int64_t get_location_idx() const;
inline void set_location_idx(int64_t location_idx)
{
location_idx_ = location_idx;
}
virtual ObPhyOperatorType get_phy_op_type() const;
virtual void set_deserialize_allocator(common::ObIAllocator* allocator);
virtual ObPhyOperatorType get_phy_op_type() const override;
virtual void set_deserialize_allocator(common::ObIAllocator* allocator) override;
int reassign_ranges(ObIArray<ObNewRange>& ranges);
int translate_pid_to_ldx(ObExecContext& ctx, int64_t partition_id, int64_t table_location_key, int64_t ref_table_id,
@ -193,15 +193,15 @@ public:
public:
explicit ObTableScan(common::ObIAllocator& allocator);
virtual ~ObTableScan();
virtual void reset();
virtual void reuse();
virtual void reset() override;
virtual void reuse() override;
// renew the TSC by a new granule task info and do table scan
int reassign_task_and_do_table_scan(ObExecContext& ctx, ObGranuleTaskInfo& info) const;
// get task from exection ctx
int get_gi_task_and_restart(ObExecContext& ctx) const;
// virtual int get_next_row(ObExecContext &ctx, const common::ObNewRow *&row) const;
virtual int rescan(ObExecContext& ctx) const;
virtual int create_operator_input(ObExecContext& ctx) const;
virtual int rescan(ObExecContext& ctx) const override;
virtual int create_operator_input(ObExecContext& ctx) const override;
DECLARE_VIRTUAL_TO_STRING;
@ -574,20 +574,20 @@ protected:
* @param ctx[in], execute context
* @return if success, return OB_SUCCESS, otherwise, return errno
*/
virtual int init_op_ctx(ObExecContext& ctx) const;
virtual int init_op_ctx(ObExecContext& ctx) const override;
virtual bool need_filter_row() const override;
virtual int inner_get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const;
virtual int inner_get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const override;
/**
* @brief open operator, not including children operators.
* called by open.
* Every op should implement this method.
*/
virtual int inner_open(ObExecContext& ctx) const;
virtual int inner_open(ObExecContext& ctx) const override;
/**
* @brief close operator, not including children operators.
* Every op should implement this method.
*/
virtual int inner_close(ObExecContext& ctx) const;
virtual int inner_close(ObExecContext& ctx) const override;
// helper
int calc_expr_int_value(
common::ObExprCtx& expr_ctx, const ObSqlExpression& expr, int64_t& retval, bool& is_null_value) const;

View File

@ -38,8 +38,8 @@ public:
force_save_interm_result_ = false;
slice_events_ = NULL;
}
virtual int init(ObExecContext& ctx, ObTaskInfo& task_info, const ObPhyOperator& op);
inline virtual ObPhyOperatorType get_phy_op_type() const
virtual int init(ObExecContext& ctx, ObTaskInfo& task_info, const ObPhyOperator& op) override;
inline virtual ObPhyOperatorType get_phy_op_type() const override
{
return PHY_DISTRIBUTED_TRANSMIT;
}

View File

@ -84,8 +84,8 @@ public:
explicit ObTransmit(common::ObIAllocator& alloc);
virtual ~ObTransmit();
// virtual int close(ObExecContext &ctx) const;
void reset();
void reuse();
void reset() override;
void reuse() override;
inline void set_interm_result_manager(ObIntermResultManager* result_mgr);
inline void set_split_task_count(int64_t count);
inline int64_t get_split_task_count() const;
@ -106,7 +106,7 @@ public:
{
return job_conf_;
}
int add_compute(ObColumnExpression* expr);
int add_compute(ObColumnExpression* expr) override;
int add_filter(ObSqlExpression* expr);
int init_repart_columns(int64_t repart_count, int64_t repart_sub_count);
@ -208,8 +208,8 @@ public:
}
protected:
virtual int inner_get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const;
virtual int inner_open(ObExecContext& ctx) const;
virtual int inner_get_next_row(ObExecContext& ctx, const common::ObNewRow*& row) const override;
virtual int inner_open(ObExecContext& ctx) const override;
virtual int64_t to_string_kv(char* buf, const int64_t buf_len) const override;
protected:

View File

@ -35,7 +35,7 @@ public:
share::schema::ObSchemaGetterGuard* guard_schema);
bool is_inited() const;
virtual ObIPartitionLocationCache::PartitionLocationCacheType get_type() const
virtual ObIPartitionLocationCache::PartitionLocationCacheType get_type() const override
{
return ObIPartitionLocationCache::PART_LOC_CACHE_TYPE_SQL;
}
@ -80,7 +80,7 @@ public:
const common::ObPartitionKey& partition, const int64_t expire_renew_time, bool& is_limited) override;
// link table.
virtual int get_link_table_location(const uint64_t table_id, share::ObPartitionLocation& location);
virtual int get_link_table_location(const uint64_t table_id, share::ObPartitionLocation& location) override;
ObSqlPartitionLocationCache::LocationDistributedMode get_location_distributed_mode(const uint64_t table_id) const;

View File

@ -396,7 +396,7 @@ public:
return est_cost_info_;
}
const ObShardingInfo* get_sharding_info() const;
virtual void get_name_internal(char* buf, const int64_t buf_len, int64_t& pos) const
virtual void get_name_internal(char* buf, const int64_t buf_len, int64_t& pos) const override
{
BUF_PRINTF("@");
BUF_PRINTF("%lu", table_id_);
@ -483,7 +483,7 @@ public:
int cost_nest_loop_join(double& op_cost, double& cost);
int cost_merge_join(double& op_cost, double& cost);
int cost_hash_join(double& op_cost, double& cost);
virtual void get_name_internal(char* buf, const int64_t buf_len, int64_t& pos) const
virtual void get_name_internal(char* buf, const int64_t buf_len, int64_t& pos) const override
{
BUF_PRINTF("<");
if (NULL != left_path_) {
@ -542,7 +542,7 @@ public:
virtual ~SubQueryPath()
{}
virtual int estimate_cost() override;
virtual void get_name_internal(char* buf, const int64_t buf_len, int64_t& pos) const
virtual void get_name_internal(char* buf, const int64_t buf_len, int64_t& pos) const override
{
BUF_PRINTF("@sub_");
BUF_PRINTF("%lu", subquery_id_);

View File

@ -35,13 +35,13 @@ public:
{
type_ = type;
}
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int allocate_exchange_post(AllocExchContext* ctx) override
{
UNUSED(ctx);
return common::OB_NOT_SUPPORTED;
}
virtual bool is_consume_child_1by1() const
virtual bool is_consume_child_1by1() const override
{
return true;
}

View File

@ -51,7 +51,7 @@ public:
{
return conflict_exprs_;
}
uint64_t hash(uint64_t seed) const;
uint64_t hash(uint64_t seed) const override;
void set_table_id(uint64_t table_id)
{
table_id_ = table_id;
@ -80,7 +80,7 @@ public:
TO_STRING_KV(K_(table_id), K_(index_tid), K_(only_data_table), K_(conflict_exprs), K_(access_exprs));
private:
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
private:
uint64_t table_id_;

View File

@ -24,7 +24,7 @@ public:
{}
virtual ~ObLogCount()
{}
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int generate_link_sql_pre(GenLinkStmtContext& link_ctx) override;
inline ObRawExpr* get_rownum_limit_expr() const
@ -37,11 +37,11 @@ public:
}
int set_limit_size();
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
virtual uint64_t hash(uint64_t seed) const;
int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual uint64_t hash(uint64_t seed) const override;
int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int allocate_expr_pre(ObAllocExprContext& ctx) override;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
private:
ObRawExpr* rownum_limit_expr_;

View File

@ -82,14 +82,14 @@ public:
{
check_constraint_exprs_ = check_constraint_exprs;
}
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual uint64_t get_hash(uint64_t seed) const
{
return seed;
}
virtual uint64_t hash(uint64_t seed) const;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual uint64_t hash(uint64_t seed) const override;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual int reordering_project_columns() override;
void set_ignore(bool is_ignore)
{
@ -195,7 +195,7 @@ public:
{
table_columns_ = table_columns;
}
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
ObTablePartitionInfo& get_table_partition_info()
{
@ -261,7 +261,7 @@ private:
int do_reordering_project_columns(ObLogicalOperator& child);
protected:
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int add_exprs_to_ctx_for_pdml(
ObAllocExprContext& ctx, const ObIArray<ObRawExpr*>& input_exprs, uint64_t producer_id);

View File

@ -32,14 +32,14 @@ public:
*/
virtual int allocate_expr_pre(ObAllocExprContext& ctx) override;
virtual int est_cost();
virtual int est_cost() override;
virtual int copy_without_child(ObLogicalOperator*& out)
virtual int copy_without_child(ObLogicalOperator*& out) override
{
out = NULL;
return common::OB_SUCCESS;
}
virtual const char* get_name() const;
virtual const char* get_name() const override;
private:
DISALLOW_COPY_AND_ASSIGN(ObLogDelete);

View File

@ -24,13 +24,13 @@ public:
virtual ~ObLogDistinct()
{}
const char* get_name() const;
const char* get_name() const override;
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
int push_down_distinct(
AllocExchContext* ctx, common::ObIArray<OrderItem>& sort_keys, ObLogicalOperator*& exchange_point);
int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
// this interface can be used for adding distinct expr
inline ObIArray<ObRawExpr*>& get_distinct_exprs()
{
@ -49,8 +49,8 @@ public:
return append(distinct_exprs_, exprs);
}
virtual int inner_replace_generated_agg_expr(
const common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& to_replace_exprs);
uint64_t hash(uint64_t seed) const;
const common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& to_replace_exprs) override;
uint64_t hash(uint64_t seed) const override;
inline void set_hash_type()
{
@ -78,7 +78,7 @@ public:
}
virtual int est_cost() override;
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
virtual int transmit_op_ordering();
virtual int transmit_op_ordering() override;
virtual bool is_block_op() const override
{
return false;

View File

@ -38,7 +38,7 @@ public:
virtual ~ObLogExchange()
{}
virtual int est_cost() override;
virtual const char* get_name() const;
virtual const char* get_name() const override;
int set_sort_keys(const common::ObIArray<OrderItem>& order_keys);
const common::ObIArray<OrderItem>& get_sort_keys() const
{
@ -132,18 +132,18 @@ public:
{
return is_merge_sort_;
}
inline bool is_block_op() const
inline bool is_block_op() const override
{
return is_local_order_;
}
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int32_t get_explain_name_length() const;
virtual int get_explain_name_internal(char* buf, const int64_t buf_len, int64_t& pos);
virtual int32_t get_explain_name_length() const override;
virtual int get_explain_name_internal(char* buf, const int64_t buf_len, int64_t& pos) override;
virtual int allocate_expr_pre(ObAllocExprContext& ctx) override;
int check_output_dep_specific(ObRawExprCheckDep& checker);
int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual int set_exchange_info(ObExchangeInfo& exch_info);
virtual int transmit_op_ordering();
virtual int transmit_op_ordering() override;
const common::ObIArray<ObRawExpr*>& get_repart_keys() const
{
return exch_info_.repartition_keys_;
@ -212,7 +212,7 @@ public:
virtual int px_pipe_blocking_post(ObPxPipeBlockingCtx& ctx) override;
virtual int allocate_granule_post(AllocGIContext& ctx) override;
virtual int allocate_granule_pre(AllocGIContext& ctx) override;
uint64_t hash(uint64_t seed) const;
uint64_t hash(uint64_t seed) const override;
bool is_local_order() const
{
return is_local_order_;
@ -222,7 +222,7 @@ public:
is_local_order_ = local_order;
}
virtual int compute_op_ordering() override;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
SlaveMappingType get_slave_mapping_type()
{
return exch_info_.get_slave_mapping_type();
@ -234,7 +234,7 @@ public:
int update_sharding_conds(AllocExchContext& ctx);
private:
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int print_plan_head_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int inner_replace_generated_agg_expr(

View File

@ -21,7 +21,7 @@ public:
ObLogExprValues(ObLogPlan& plan) : ObLogicalOperator(plan), need_columnlized_(false)
{}
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int copy_without_child(ObLogicalOperator*& out)
virtual int copy_without_child(ObLogicalOperator*& out) override
{
return clone(out);
}
@ -56,13 +56,13 @@ public:
virtual int compute_table_set() override;
virtual int compute_fd_item_set() override;
virtual int compute_one_row_info() override;
virtual int allocate_dummy_output();
uint64_t hash(uint64_t seed) const;
virtual int allocate_dummy_output() override;
uint64_t hash(uint64_t seed) const override;
virtual int allocate_expr_post(ObAllocExprContext& ctx) override;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
private:
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
private:
bool need_columnlized_;

View File

@ -25,7 +25,7 @@ public:
{}
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
void add_values_expr(ObRawExpr* expr)
{
value_expr_ = expr;
@ -43,7 +43,7 @@ public:
virtual int compute_equal_set() override;
virtual int compute_fd_item_set() override;
virtual int compute_table_set() override;
uint64_t hash(uint64_t seed) const;
uint64_t hash(uint64_t seed) const override;
int generate_access_exprs(ObIArray<ObRawExpr*>& access_exprs) const;
virtual int allocate_expr_pre(ObAllocExprContext& ctx) override;
virtual int allocate_expr_post(ObAllocExprContext& ctx) override;
@ -56,10 +56,10 @@ public:
{
return table_id_;
}
int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
private:
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
private:
uint64_t table_id_;

View File

@ -33,7 +33,7 @@ public:
virtual ~ObLogGranuleIterator()
{}
const char* get_name() const;
const char* get_name() const override;
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int allocate_expr_pre(ObAllocExprContext& ctx) override;

View File

@ -35,8 +35,8 @@ public:
{}
// const char* get_name() const;
virtual int32_t get_explain_name_length() const;
virtual int get_explain_name_internal(char* buf, const int64_t buf_len, int64_t& pos);
virtual int32_t get_explain_name_length() const override;
virtual int get_explain_name_internal(char* buf, const int64_t buf_len, int64_t& pos) override;
// Get the 'group-by' expressions
inline common::ObIArray<ObRawExpr*>& get_group_by_exprs()
{
@ -56,7 +56,7 @@ public:
{
return rollup_exprs_.count() > 0;
}
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
inline void set_hash_type()
{
algo_ = HASH_AGGREGATE;
@ -83,7 +83,7 @@ public:
// @brief SET the ROLLUP COLUMNS
int set_rollup_exprs(const common::ObIArray<ObRawExpr*>& rollup_exprs);
int set_aggr_exprs(const common::ObIArray<ObAggFunRawExpr*>& aggr_exprs);
ObSelectLogPlan* get_plan()
ObSelectLogPlan* get_plan() override
{
return static_cast<ObSelectLogPlan*>(my_plan_);
}
@ -97,11 +97,11 @@ public:
common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& group_push_down_replaced_exprs);
int should_push_down_group_by(AllocExchContext& ctx, ObIArray<ObRawExpr*>& distinct_exprs, bool& should_push_groupby,
bool& should_push_distinct);
virtual uint64_t hash(uint64_t seed) const;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual uint64_t hash(uint64_t seed) const override;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual int est_cost() override;
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
virtual int transmit_op_ordering();
virtual int transmit_op_ordering() override;
virtual bool is_block_op() const override
{
return MERGE_AGGREGATE != get_algo();
@ -146,7 +146,7 @@ private:
*/
int pull_up_aggr_exprs_analyze(
common::ObIArray<ObRawExpr*>& aggr_exprs, common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& ctx_record_arr);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
int get_child_groupby_algorithm(const bool is_distinct, const bool can_push_down_distinct, const bool need_sort,
const bool child_need_sort, AggregateAlgo& aggr_algo);
@ -157,8 +157,8 @@ private:
common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& ctx_record_arr,
common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& push_down_arr);
virtual int inner_replace_generated_agg_expr(
const common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& to_replace_exprs);
virtual int print_outline(planText& plan);
const common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& to_replace_exprs) override;
virtual int print_outline(planText& plan) override;
int is_need_print_agg_type(planText& plan_text, const ObStmtHint& stmt_hint, bool& is_need);
int alloc_topk_if_needed();
int allocate_topk_if_needed(ObLogicalOperator* exchange_point, const ObLogGroupBy* child_group_by,

View File

@ -133,7 +133,7 @@ public:
virtual ~ObLogInsert()
{}
virtual int copy_without_child(ObLogicalOperator*& out)
virtual int copy_without_child(ObLogicalOperator*& out) override
{
out = NULL;
return common::OB_SUCCESS;
@ -149,7 +149,7 @@ public:
virtual int inner_replace_generated_agg_expr(
const ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& to_replace_exprs) override;
const char* get_name() const;
const char* get_name() const override;
int calc_cost();
inline const common::ObIArray<ObRawExpr*>* get_column_convert_exprs() const
@ -233,9 +233,9 @@ public:
/**
* Get the hash value of the INSERT operator
*/
virtual uint64_t hash(uint64_t seed) const;
virtual uint64_t hash(uint64_t seed) const override;
int generate_sharding_info(ObShardingInfo& target_sharding_info);
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
int calculate_table_location();
int get_join_keys(const AllocExchContext& ctx, ObIArray<ObRawExpr*>& target_keys, ObIArray<ObRawExpr*>& source_keys);
@ -262,11 +262,11 @@ private:
protected:
int add_exprs_without_column_conv(
const common::ObIArray<ObRawExpr*>& src_exprs, common::ObIArray<ObRawExpr*>& dst_exprs);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int need_multi_table_dml(AllocExchContext& ctx, ObShardingInfo& sharding_info, bool& is_needed) override;
bool is_table_update_part_key() const;
bool is_table_insert_sequence_part_key() const;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual int check_output_dep_specific(ObRawExprCheckDep& checker) override;
protected:
bool is_replace_;

View File

@ -37,12 +37,12 @@ public:
virtual int allocate_expr_pre(ObAllocExprContext& ctx) override;
virtual int allocate_expr_post(ObAllocExprContext& ctx) override;
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual int extract_value_exprs();
virtual int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual int extract_value_exprs() override;
virtual int inner_replace_generated_agg_expr(
const common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*>>& to_replace_exprs) override;
const char* get_name() const;
const char* get_name() const override;
const common::ObIArray<RawExprArray>& get_multi_value_exprs() const
{
return multi_value_exprs_;
@ -103,7 +103,7 @@ public:
int remove_const_expr(const common::ObIArray<ObRawExpr*>& old_exprs, common::ObIArray<ObRawExpr*>& new_exprs) const;
protected:
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int need_multi_table_dml(AllocExchContext& ctx, ObShardingInfo& sharding_info, bool& is_needed) override;
int is_insert_table_id(uint64_t table_id, bool& is_true) const;

View File

@ -174,7 +174,7 @@ public:
{
return get_child(second_child);
}
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
int gen_filters();
int gen_output_columns();
/**
@ -184,7 +184,7 @@ public:
int update_weak_part_exprs(AllocExchContext* ctx);
virtual int allocate_expr_post(ObAllocExprContext& ctx);
virtual int allocate_expr_post(ObAllocExprContext& ctx) override;
//@brief Set all the join predicates
int set_join_conditions(const common::ObIArray<ObRawExpr*>& conditions)
{
@ -225,7 +225,7 @@ public:
return right_expected_ordering_;
}
virtual int inner_replace_generated_agg_expr(
const common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& to_replace_exprs);
const common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& to_replace_exprs) override;
const common::ObIArray<ObOrderDirection>& get_merge_directions() const
{
return merge_directions_;
@ -238,15 +238,15 @@ public:
/**
* Get the operator's hash value
*/
virtual uint64_t hash(uint64_t seed) const;
virtual uint64_t hash(uint64_t seed) const override;
// const char* get_name() const;
virtual int32_t get_explain_name_length() const;
virtual int get_explain_name_internal(char* buf, const int64_t buf_len, int64_t& pos);
virtual int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual int32_t get_explain_name_length() const override;
virtual int get_explain_name_internal(char* buf, const int64_t buf_len, int64_t& pos) override;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
virtual int re_calc_cost();
virtual int transmit_op_ordering();
virtual int re_calc_cost() override;
virtual int transmit_op_ordering() override;
/*
* IN right_child_sharding_info the join's right child sharding info
* IN right_keys the right join equal condition
@ -255,7 +255,7 @@ public:
int bloom_filter_partition_type(
const ObShardingInfo& right_child_sharding_info, ObIArray<ObRawExpr*>& right_keys, PartitionFilterType& type);
virtual bool is_block_input(const int64_t child_idx) const override;
virtual bool is_consume_child_1by1() const
virtual bool is_consume_child_1by1() const override
{
return HASH_JOIN == join_algo_;
}
@ -271,7 +271,7 @@ public:
return (NESTED_LOOP_JOIN == join_algo_) && nl_params_.empty();
}
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
virtual int compute_table_set() override;
bool is_enable_gi_partition_pruning() const
@ -305,8 +305,8 @@ private:
ObIArray<ObExprCalcType>& calc_types);
int make_sort_keys(common::ObIArray<ObRawExpr*>& sort_expr, common::ObIArray<OrderItem>& directions);
virtual int allocate_expr_pre(ObAllocExprContext& ctx) override;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_outline(planText& plan);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int print_outline(planText& plan) override;
int print_material_nl(planText& plan_text, JoinTreeType join_tree_type, bool is_need_print);
int print_use_join(planText& plan_text, JoinTreeType join_tree_type, bool is_need_print);
int print_pq_distribute(planText& plan_text, JoinTreeType join_tree_type, bool is_need_print);

View File

@ -90,15 +90,15 @@ public:
virtual int est_cost() override;
virtual int allocate_granule_pre(AllocGIContext &ctx);
virtual int allocate_granule_post(AllocGIContext &ctx);
virtual int allocate_exchange_post(AllocExchContext* ctx);
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int transmit_op_ordering() override;
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
virtual uint64_t hash(uint64_t seed) const;
virtual int copy_without_child(ObLogicalOperator*& out);
int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
virtual uint64_t hash(uint64_t seed) const override;
virtual int copy_without_child(ObLogicalOperator*& out) override;
int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
void set_fetch_with_ties(bool is_fetch_with_ties)
{
is_fetch_with_ties_ = is_fetch_with_ties;

View File

@ -25,8 +25,8 @@ public:
ObLogLink(ObLogPlan& plan);
virtual ~ObLogLink()
{}
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int generate_link_sql_pre(GenLinkStmtContext& link_ctx) override;

View File

@ -23,7 +23,7 @@ public:
{}
virtual ~ObLogMaterial()
{}
virtual int copy_without_child(ObLogicalOperator*& out)
virtual int copy_without_child(ObLogicalOperator*& out) override
{
return clone(out);
}

View File

@ -81,16 +81,16 @@ public:
}
int add_delete_exprs_to_ctx(ObAllocExprContext& ctx);
int add_all_table_assignments_to_ctx(ObAllocExprContext& ctx);
virtual uint64_t hash(uint64_t seed) const;
const char* get_name() const;
virtual uint64_t hash(uint64_t seed) const override;
const char* get_name() const override;
int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
int add_merge_exprs_to_ctx(ObAllocExprContext& ctx, const ObIArray<ObRawExpr*>& exprs);
int classify_merge_subquery_expr(const ObIArray<ObRawExpr*>& exprs, ObIArray<ObRawExpr*>& subquery_exprs,
ObIArray<ObRawExpr*>& non_subquery_exprs);
private:
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker) override;
int add_all_source_table_columns_to_ctx(ObAllocExprContext& ctx);
DISALLOW_COPY_AND_ASSIGN(ObLogMerge);

View File

@ -23,13 +23,13 @@ public:
ObLogMonitoringDump(ObLogPlan& plan) : ObLogicalOperator(plan), flags_(0), dst_op_line_id_(0)
{}
virtual ~ObLogMonitoringDump() = default;
const char* get_name() const;
const char* get_name() const override;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int compute_op_ordering() override;
virtual int transmit_op_ordering() override;
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est);
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
virtual int print_outline(planText& plan_text) override;
int print_tracing(planText& plan_text);
inline void set_flags(uint64_t flags)

View File

@ -99,8 +99,8 @@ public:
virtual int allocate_expr_pre(ObAllocExprContext& ctx) override;
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int transmit_op_ordering() override;
virtual uint64_t hash(uint64_t seed) const;
virtual int copy_without_child(ObLogicalOperator*& out);
virtual uint64_t hash(uint64_t seed) const override;
virtual int copy_without_child(ObLogicalOperator*& out) override;
private:
ObItemType into_type_;

View File

@ -25,9 +25,9 @@ public:
{}
virtual ~ObLogSequence()
{}
virtual uint64_t hash(uint64_t seed) const;
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual uint64_t hash(uint64_t seed) const override;
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
int allocate_exchange_post(AllocExchContext* ctx) override;
const common::ObIArray<uint64_t>& get_sequence_ids() const
{

View File

@ -44,7 +44,7 @@ public:
ObSelectLogPlan* get_right_plan() const;
ObSelectStmt* get_left_stmt() const;
ObSelectStmt* get_right_stmt() const;
const char* get_name() const;
const char* get_name() const override;
inline void assign_set_distinct(const bool is_distinct)
{
is_distinct_ = is_distinct;
@ -69,7 +69,7 @@ public:
{
return is_distinct_;
}
virtual bool is_consume_child_1by1() const
virtual bool is_consume_child_1by1() const override
{
return ObSelectStmt::UNION == set_op_ && (HASH_SET == set_algo_ || !is_distinct_);
}
@ -81,10 +81,10 @@ public:
{
return set_op_;
}
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
int calculate_sharding_info(
ObIArray<ObRawExpr*>& left_keys, ObIArray<ObRawExpr*>& right_keys, ObShardingInfo& output_sharding);
virtual int allocate_exchange_post(AllocExchContext* ctx);
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
int get_set_child_exprs(common::ObIArray<ObRawExpr*>& left_keys, common::ObIArray<ObRawExpr*>& right_keys);
int get_calc_types(common::ObIArray<ObExprCalcType>& calc_types);
const common::ObIArray<ObOrderDirection>& get_set_directions() const
@ -112,7 +112,7 @@ public:
virtual int est_cost() override;
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
int get_children_cost_info(ObIArray<ObBasicCostInfo>& children_cost_info);
virtual int transmit_op_ordering();
virtual int transmit_op_ordering() override;
int set_left_expected_ordering(const common::ObIArray<OrderItem>& left_expected_ordering);
int set_right_expected_ordering(const common::ObIArray<OrderItem>& right_expected_ordering);
@ -128,7 +128,7 @@ public:
int set_search_ordering(const common::ObIArray<OrderItem>& search_ordering);
int set_cycle_items(const common::ObIArray<ColumnItem>& cycle_items);
uint64_t hash(uint64_t seed) const;
uint64_t hash(uint64_t seed) const override;
const common::ObIArray<OrderItem>& get_search_ordering()
{
return search_ordering_;

View File

@ -100,7 +100,7 @@ public:
{
return topk_offset_count_;
}
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
// @brief Set the sorting columns
int set_sort_keys(const common::ObIArray<OrderItem>& order_keys);
int check_prefix_sort();
@ -112,9 +112,9 @@ public:
int allocate_exchange(AllocExchContext* ctx, ObExchangeInfo& exch_info) override;
int push_down_sort(ObLogicalOperator* consumer_exc);
virtual int allocate_expr_pre(ObAllocExprContext& ctx) override;
virtual uint64_t hash(uint64_t seed) const;
int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual const char* get_name() const;
virtual uint64_t hash(uint64_t seed) const override;
int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual const char* get_name() const override;
int set_topk_params(
ObRawExpr* limit_count, ObRawExpr* limit_offset, int64_t minimum_row_cuont, int64_t topk_precision);
inline int64_t get_minimum_row_count() const
@ -125,21 +125,21 @@ public:
{
return topk_precision_;
}
virtual int transmit_op_ordering();
virtual int transmit_op_ordering() override;
virtual bool is_block_op() const override
{
return !is_prefix_sort();
}
virtual int compute_op_ordering() override;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
virtual int generate_link_sql_pre(GenLinkStmtContext& link_ctx) override;
protected:
virtual int inner_replace_generated_agg_expr(
const common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*>>& to_replace_exprs);
const common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*>>& to_replace_exprs) override;
private:
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
private:
common::ObSEArray<OrderItem, 8, common::ModulePageAllocator, true> sort_keys_;

View File

@ -30,7 +30,7 @@ public:
{}
~ObLogSubPlanFilter()
{}
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
int allocate_exchange_post(AllocExchContext* ctx) override;
int check_if_match_partition_wise(const AllocExchContext& ctx, bool& is_partition_wise);
int has_serial_child(bool& has_serial_child);
@ -47,8 +47,8 @@ public:
int gen_output_columns();
virtual int est_cost() override;
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
virtual int transmit_op_ordering();
virtual int transmit_local_ordering();
virtual int transmit_op_ordering() override;
virtual int transmit_local_ordering() override;
/**
* Get the exec params
@ -109,12 +109,12 @@ public:
int get_subquery_exprs(ObIArray<ObRawExpr*>& subquery_exprs);
virtual int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int re_calc_cost();
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int re_calc_cost() override;
int get_children_cost_info(common::ObIArray<ObBasicCostInfo>& children_cost_info);
uint64_t hash(uint64_t seed) const;
uint64_t hash(uint64_t seed) const override;
void set_update_set(bool update_set)
{
update_set_ = update_set;
@ -123,8 +123,8 @@ public:
{
return update_set_;
}
int allocate_granule_pre(AllocGIContext& ctx);
int allocate_granule_post(AllocGIContext& ctx);
int allocate_granule_pre(AllocGIContext& ctx) override;
int allocate_granule_post(AllocGIContext& ctx) override;
virtual int compute_one_row_info() override;
protected:

View File

@ -27,13 +27,13 @@ public:
virtual int est_cost() override;
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
virtual int copy_without_child(ObLogicalOperator*& out);
int allocate_expr_post(ObAllocExprContext& ctx);
virtual int copy_without_child(ObLogicalOperator*& out) override;
int allocate_expr_post(ObAllocExprContext& ctx) override;
int allocate_exchange_post(AllocExchContext* ctx) override;
int update_weak_part_exprs(AllocExchContext* ctx);
int gen_filters();
int gen_output_columns();
int set_properties();
int set_properties() override;
void set_subquery_id(uint64_t subquery_id)
{
subquery_id_ = subquery_id;
@ -54,16 +54,16 @@ public:
{
return access_exprs_;
}
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int transmit_op_ordering();
virtual int transmit_local_ordering();
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int transmit_op_ordering() override;
virtual int transmit_local_ordering() override;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
virtual int generate_link_sql_pre(GenLinkStmtContext& link_ctx) override;
private:
virtual int print_operator_for_outline(planText& plan_text);
virtual int is_used_join_type_hint(JoinAlgo join_algo, bool& is_used);
virtual int is_used_in_leading_hint(bool& is_used);
virtual int print_operator_for_outline(planText& plan_text) override;
virtual int is_used_join_type_hint(JoinAlgo join_algo, bool& is_used) override;
virtual int is_used_in_leading_hint(bool& is_used) override;
private:
uint64_t subquery_id_;

View File

@ -34,15 +34,15 @@ public:
{}
virtual ~ObLogTableLookup()
{}
virtual int allocate_expr_post(ObAllocExprContext& ctx);
virtual int allocate_expr_post(ObAllocExprContext& ctx) override;
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int compute_property(Path* path);
virtual int compute_property(Path* path) override;
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
virtual int transmit_op_ordering();
virtual uint64_t hash(uint64_t seed) const;
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int transmit_op_ordering() override;
virtual uint64_t hash(uint64_t seed) const override;
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
inline void set_table_id(const uint64_t table_id)
{
table_id_ = table_id;
@ -95,7 +95,7 @@ public:
{
return calc_part_id_expr_;
}
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
int init_calc_part_id_expr();
int replace_gen_column(ObRawExpr* part_expr, ObRawExpr*& new_part_expr);

View File

@ -80,7 +80,7 @@ public:
virtual ~ObLogTableScan()
{}
const char* get_name() const;
const char* get_name() const override;
// not used at the moment
TO_STRING_KV(K_(table_id), K_(index_table_id), K_(is_fake_cte_table), K_(table_name), K_(index_name));
@ -330,7 +330,7 @@ public:
/**
* Copy operator and it's properties without copying its child operators
*/
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int copy_without_child(ObLogicalOperator*& out) override;
/**
* Generate the filtering expressions
@ -351,7 +351,7 @@ public:
* */
virtual int allocate_granule_post(AllocGIContext& ctx) override;
virtual int compute_property(Path* path);
virtual int compute_property(Path* path) override;
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
int get_index_cost(int64_t column_count, bool index_back, double& cost);
@ -360,12 +360,12 @@ public:
/**
* This function add all output columns from column items.
*/
virtual int allocate_expr_post(ObAllocExprContext& ctx);
virtual int allocate_expr_post(ObAllocExprContext& ctx) override;
/**
* Generate hash value for the operator using given seed
*/
virtual uint64_t hash(uint64_t seed) const;
virtual uint64_t hash(uint64_t seed) const override;
/**
* Get table name
@ -494,7 +494,7 @@ public:
return exist_hint_;
}
virtual int inner_replace_generated_agg_expr(
const common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& to_replace_exprs);
const common::ObIArray<std::pair<ObRawExpr*, ObRawExpr*> >& to_replace_exprs) override;
inline common::ObIArray<bool>& get_filter_before_index_flags()
{
return filter_before_index_back_;
@ -667,8 +667,8 @@ public:
return session_id_;
}
virtual int transmit_op_ordering();
virtual int transmit_local_ordering();
virtual int transmit_op_ordering() override;
virtual int transmit_local_ordering() override;
bool is_need_feedback() const;
int set_filters(const common::ObIArray<ObRawExpr*>& filters);
int refine_query_range();
@ -698,24 +698,24 @@ private: // member functions
int pick_out_startup_filters();
int filter_before_index_back_set();
bool is_covered(ObRelIds& rel_ids);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
// virtual int print_outline(char *buf, int64_t &buf_len, int64_t &pos, bool is_oneline);
virtual int print_outline(planText& plan_text);
virtual int print_outline(planText& plan_text) override;
int print_outline_data(planText& plan_text);
int print_all_no_index(const ObIndexHint& index_hint, planText& plan_text);
int print_single_no_index(const ObString& index_name, planText& plan_text);
int get_index_hint(bool& is_used_hint, const ObIndexHint*& index_hint);
int print_used_index(planText& plan_text);
virtual int print_operator_for_outline(planText& plan_text);
virtual int is_used_join_type_hint(JoinAlgo join_algo, bool& is_used);
virtual int is_used_in_leading_hint(bool& is_used);
virtual int print_operator_for_outline(planText& plan_text) override;
virtual int is_used_join_type_hint(JoinAlgo join_algo, bool& is_used) override;
virtual int is_used_in_leading_hint(bool& is_used) override;
int print_no_use_late_materialization(planText& plan_text);
int print_range_annotation(char* buf, int64_t buf_len, int64_t& pos, ExplainType type);
int print_filter_before_indexback_annotation(char* buf, int64_t buf_len, int64_t& pos);
int print_limit_offset_annotation(char* buf, int64_t buf_len, int64_t& pos, ExplainType type);
int print_ranges(char* buf, int64_t buf_len, int64_t& pos, const ObIArray<ObNewRange>& ranges);
int print_split_range_annotation(char* buf, int64_t buf_len, int64_t& pos, ExplainType type);
virtual int explain_index_selection_info(char* buf, int64_t& buf_len, int64_t& pos);
virtual int explain_index_selection_info(char* buf, int64_t& buf_len, int64_t& pos) override;
int generate_part_filter(ObRawExpr*& part_filter_expr);
int fill_link_stmt(
const common::ObIArray<ObRawExpr*>& select_strs, const TableItem& table_item, ObLinkStmt& link_stmt);

View File

@ -24,7 +24,7 @@ class ObLogTempTableAccess : public ObLogicalOperator {
public:
ObLogTempTableAccess(ObLogPlan& plan);
virtual ~ObLogTempTableAccess();
virtual int copy_without_child(ObLogicalOperator*& out)
virtual int copy_without_child(ObLogicalOperator*& out) override
{
return clone(out);
}
@ -59,7 +59,7 @@ public:
{
return is_last_access_;
}
int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
inline common::ObString& get_table_name()
{
return temp_table_name_;
@ -72,7 +72,7 @@ public:
{
return access_exprs_;
}
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
private:
DISALLOW_COPY_AND_ASSIGN(ObLogTempTableAccess);

View File

@ -25,7 +25,7 @@ public:
ObLogTempTableInsert(ObLogPlan& plan);
virtual ~ObLogTempTableInsert();
virtual int copy_without_child(ObLogicalOperator*& out)
virtual int copy_without_child(ObLogicalOperator*& out) override
{
return clone(out);
}

View File

@ -30,7 +30,7 @@ public:
virtual int allocate_exchange(AllocExchContext* ctx, ObExchangeInfo& exch_info) override;
virtual int compute_op_ordering() override;
virtual int transmit_local_ordering() override;
virtual bool is_consume_child_1by1() const
virtual bool is_consume_child_1by1() const override
{
return true;
}

View File

@ -49,11 +49,11 @@ public:
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int allocate_exchange(AllocExchContext* ctx, bool parts_order);
virtual uint64_t hash(uint64_t seed) const;
virtual int copy_without_child(ObLogicalOperator*& out);
int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
virtual uint64_t hash(uint64_t seed) const override;
virtual int copy_without_child(ObLogicalOperator*& out) override;
int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
private:
int64_t minimum_row_count_;

View File

@ -26,9 +26,9 @@ public:
~ObLogUnpivot()
{}
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int allocate_expr_post(ObAllocExprContext& ctx);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int allocate_expr_post(ObAllocExprContext& ctx) override;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
int allocate_exchange_post(AllocExchContext* ctx) override;
int calc_cost();
@ -36,7 +36,7 @@ public:
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
int gen_filters();
int gen_output_columns();
int set_properties();
int set_properties() override;
void set_subquery_id(uint64_t subquery_id)
{
subquery_id_ = subquery_id;
@ -57,8 +57,8 @@ public:
{
return access_exprs_;
}
virtual int transmit_op_ordering();
virtual int transmit_local_ordering();
virtual int transmit_op_ordering() override;
virtual int transmit_local_ordering() override;
virtual int compute_op_ordering() override;
virtual int compute_fd_item_set() override;

View File

@ -33,15 +33,15 @@ public:
return tables_assignments_;
}
virtual int copy_without_child(ObLogicalOperator*& out);
int allocate_exchange_post(AllocExchContext* ctx);
virtual int copy_without_child(ObLogicalOperator*& out) override;
int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int est_cost();
virtual int est_cost() override;
virtual uint64_t hash(uint64_t seed) const;
virtual uint64_t hash(uint64_t seed) const override;
virtual int allocate_expr_pre(ObAllocExprContext& ctx) override;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker);
virtual const char* get_name() const;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker) override;
virtual const char* get_name() const override;
void set_update_set(bool update_set)
{
update_set_ = update_set;
@ -51,10 +51,10 @@ public:
return update_set_;
}
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const;
virtual int inner_append_not_produced_exprs(ObRawExprUniqueSet& raw_exprs) const override;
private:
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
int get_update_table(ObDMLStmt* stmt, ObColumnRefRawExpr* col_expr, uint64_t& ref_id);

View File

@ -30,12 +30,12 @@ public:
{}
virtual ~ObLogValues()
{}
virtual int allocate_exchange_post(AllocExchContext* ctx)
virtual int allocate_exchange_post(AllocExchContext* ctx) override
{
UNUSED(ctx);
return common::OB_SUCCESS;
}
virtual int copy_without_child(ObLogicalOperator*& out)
virtual int copy_without_child(ObLogicalOperator*& out) override
{
out = NULL;
return common::OB_SUCCESS;
@ -64,7 +64,7 @@ public:
{
return row_store_;
}
uint64_t hash(uint64_t seed) const
uint64_t hash(uint64_t seed) const override
{
if (NULL != explain_plan_) {
seed = do_hash(*explain_plan_, seed);

View File

@ -23,8 +23,8 @@ public:
virtual ~ObLogWindowFunction()
{}
virtual int allocate_exchange_post(AllocExchContext* ctx) override;
virtual int copy_without_child(ObLogicalOperator*& out);
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type);
virtual int copy_without_child(ObLogicalOperator*& out) override;
virtual int print_my_plan_annotation(char* buf, int64_t& buf_len, int64_t& pos, ExplainType type) override;
inline int add_window_expr(ObWinFunRawExpr* win_expr)
{
@ -36,12 +36,12 @@ public:
}
virtual int est_cost() override;
virtual int re_est_cost(const ObLogicalOperator* parent, double need_row_count, bool& re_est) override;
virtual int transmit_op_ordering();
virtual int transmit_op_ordering() override;
virtual int allocate_expr_pre(ObAllocExprContext& ctx) override;
virtual int check_output_dep_specific(ObRawExprCheckDep& checker) override;
int is_my_window_expr(const ObRawExpr* expr, bool& is_mine);
virtual bool is_block_op() const override;
virtual uint64_t hash(uint64_t seed) const;
virtual uint64_t hash(uint64_t seed) const override;
virtual int allocate_granule_post(AllocGIContext& ctx) override;
virtual int allocate_granule_pre(AllocGIContext& ctx) override;
int get_win_partition_intersect_exprs(ObIArray<ObWinFunRawExpr*>& win_exprs, ObIArray<ObRawExpr*>& win_part_exprs);

View File

@ -259,7 +259,7 @@ public:
{
has_global_index_ |= has_global_index;
}
virtual bool check_table_be_modified(uint64_t ref_table_id) const;
virtual bool check_table_be_modified(uint64_t ref_table_id) const override;
void set_dml_source_from_join(bool from_join)
{
dml_source_from_join_ = from_join;
@ -270,7 +270,7 @@ public:
}
virtual int update_base_tid_cid();
virtual int inner_get_share_exprs(ObIArray<ObRawExpr*>& candi_share_exprs) const;
virtual int inner_get_share_exprs(ObIArray<ObRawExpr*>& candi_share_exprs) const override;
virtual int replace_inner_stmt_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
uint64_t get_insert_table_id(uint64_t table_offset = 0) const;
@ -278,8 +278,8 @@ public:
uint64_t get_ref_table_id() const;
protected:
int inner_get_relation_exprs(RelExprCheckerBase& expr_checker);
virtual int inner_get_relation_exprs_for_wrapper(RelExprChecker& expr_checker)
int inner_get_relation_exprs(RelExprCheckerBase& expr_checker) override;
virtual int inner_get_relation_exprs_for_wrapper(RelExprChecker& expr_checker) override
{
return ObDelUpdStmt::inner_get_relation_exprs(expr_checker);
}

View File

@ -195,7 +195,7 @@ public:
is_all_const_values_ = is_all_const;
}
// is used to replace all references to from expr in stmt
virtual int replace_expr_in_stmt(ObRawExpr* from, ObRawExpr* to);
virtual int replace_expr_in_stmt(ObRawExpr* from, ObRawExpr* to) override;
int64_t get_value_index(uint64_t table_id, uint64_t column_id) const;
const ObUniqueConstraintCheckStmt& get_constraint_check_stmt() const
{
@ -294,9 +294,9 @@ public:
protected:
// Get the root expr of all query-related expressions in
// stmt (expression generated by the attributes specified in the query statement)
virtual int inner_get_relation_exprs(RelExprCheckerBase& expr_checker);
virtual int inner_get_relation_exprs(RelExprCheckerBase& expr_checker) override;
// get the root expr that needs to be processed by enum_set_wrapper in stmt
virtual int inner_get_relation_exprs_for_wrapper(RelExprChecker& expr_checker);
virtual int inner_get_relation_exprs_for_wrapper(RelExprChecker& expr_checker) override;
int replace_dupkey_exprs(const common::ObIArray<ObRawExpr*>& other_exprs,
const common::ObIArray<ObRawExpr*>& new_exprs, ObDupKeyScanInfo& scan_info);

View File

@ -620,7 +620,7 @@ public:
}
int get_select_exprs(ObIArray<ObRawExpr*>& select_exprs, const bool is_for_outout = false);
int get_select_exprs(ObIArray<ObRawExpr*>& select_exprs, const bool is_for_outout = false) const;
int inner_get_share_exprs(ObIArray<ObRawExpr*>& candi_share_exprs) const;
int inner_get_share_exprs(ObIArray<ObRawExpr*>& candi_share_exprs) const override;
const common::ObIArray<ObAggFunRawExpr*>& get_aggr_items() const
{
return agg_items_;
@ -783,7 +783,7 @@ public:
{
return for_update_columns_;
}
virtual bool is_affect_found_rows() const
virtual bool is_affect_found_rows() const override
{
bool ret = false;
if (select_type_ == AFFECT_FOUND_ROWS) {
@ -793,7 +793,7 @@ public:
}
return ret;
}
virtual bool has_link_table() const
virtual bool has_link_table() const override
{
bool bret = ObDMLStmt::has_link_table();
for (int64_t i = 0; !bret && i < set_query_.count(); i++) {
@ -835,7 +835,7 @@ public:
bool is_mix_of_group_func_and_fileds() const;
// replace expression from %from to %to, only replace expr pointer of stmt,
// will not recursive replace of expr
virtual int replace_expr_in_stmt(ObRawExpr* from, ObRawExpr* to);
virtual int replace_expr_in_stmt(ObRawExpr* from, ObRawExpr* to) override;
void set_star_select()
{
is_select_star_ = true;
@ -856,14 +856,14 @@ public:
{
return is_match_topk_;
}
virtual bool is_set_stmt() const
virtual bool is_set_stmt() const override
{
return NONE != set_op_;
}
int get_child_stmt_size(int64_t& child_size) const;
int get_child_stmts(common::ObIArray<ObSelectStmt*>& child_stmts) const;
int set_child_stmt(const int64_t child_num, ObSelectStmt* child_stmt);
int get_from_subquery_stmts(common::ObIArray<ObSelectStmt*>& child_stmts) const;
int get_child_stmt_size(int64_t& child_size) const override;
int get_child_stmts(common::ObIArray<ObSelectStmt*>& child_stmts) const override;
int set_child_stmt(const int64_t child_num, ObSelectStmt* child_stmt) override;
int get_from_subquery_stmts(common::ObIArray<ObSelectStmt*>& child_stmts) const override;
const common::ObIArray<ObWinFunRawExpr*>& get_window_func_exprs() const
{
return win_func_exprs_;
@ -962,7 +962,7 @@ public:
{
return get_sample_info_by_table_id(table_id) != nullptr;
}
virtual bool check_table_be_modified(uint64_t ref_table_id) const;
virtual bool check_table_be_modified(uint64_t ref_table_id) const override;
// check aggregation has distinct or group concat e.g.:
// count(distinct c1)
@ -1018,8 +1018,8 @@ private:
const ObIArray<ObMultiRollupItem>& multi_rollup_items, const ObExprInfoFlag flag, bool& has) const;
protected:
virtual int inner_get_relation_exprs(RelExprCheckerBase& expr_checker);
virtual int inner_get_relation_exprs_for_wrapper(RelExprChecker& expr_checker)
virtual int inner_get_relation_exprs(RelExprCheckerBase& expr_checker) override;
virtual int inner_get_relation_exprs_for_wrapper(RelExprChecker& expr_checker) override
{
return inner_get_relation_exprs(expr_checker);
}

View File

@ -1677,7 +1677,7 @@ public:
int deep_copy(ObRawExprFactory& expr_factory, const ObConstRawExpr& other, const uint64_t copy_types,
bool use_new_allocator = false);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
void set_value(const oceanbase::common::ObObj& val);
void set_literal_prefix(const common::ObString& name);
void set_expr_obj_meta(const common::ObObjMeta& meta)
@ -1698,13 +1698,13 @@ public:
{
return true == is_date_unit_;
}
virtual void reset();
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
virtual void reset() override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual uint64_t hash_internal(uint64_t seed) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
virtual uint64_t hash_internal(uint64_t seed) const override;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
DECLARE_VIRTUAL_TO_STRING;
private:
@ -1741,12 +1741,12 @@ public:
int deep_copy(ObRawExprFactory& expr_factory, const ObVarRawExpr& other, const uint64_t copy_types,
bool use_new_allocator = false);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
virtual int do_visit(ObRawExprVisitor& visitor) override;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
void set_result_type_assigned(bool v)
{
result_type_assigned_ = v;
@ -1779,13 +1779,13 @@ public:
int deep_copy(ObRawExprFactory& expr_factory, const ObUserVarIdentRawExpr& other, const uint64_t copy_types,
bool use_new_allocator = false);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
virtual void reset();
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
virtual void reset() override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual uint64_t hash_internal(uint64_t seed) const;
virtual uint64_t hash_internal(uint64_t seed) const override;
bool get_is_contain_assign() const
{
@ -1860,7 +1860,7 @@ public:
int assign(const ObQueryRefRawExpr& other);
int deep_copy(ObStmtFactory& stmt_factory, ObRawExprFactory& expr_factory, const ObQueryRefRawExpr& other);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
int64_t get_ref_id() const;
void set_ref_id(int64_t id);
ObSelectStmt* get_ref_stmt();
@ -1892,7 +1892,7 @@ public:
return OB_LOGICAL_OPERATOR == ref_type_;
}
void set_output_column(int64_t output_column);
int64_t get_output_column() const;
int64_t get_output_column() const override;
int add_column_type(const ObExprResType& type)
{
return column_types_.push_back(type);
@ -1921,17 +1921,17 @@ public:
{
return is_cursor_;
}
virtual void reset();
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
virtual void reset() override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual uint64_t hash_internal(uint64_t seed) const
virtual uint64_t hash_internal(uint64_t seed) const override
{
return common::do_hash(ref_id_, seed);
}
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
VIRTUAL_TO_STRING_KV(N_ITEM_TYPE, type_, N_RESULT_TYPE, result_type_, N_EXPR_INFO, info_, N_REL_ID, rel_ids_, N_ID,
ref_id_, K_(expr_level), K_(expr_levels), K_(output_column), K_(is_set), K_(is_cursor), K_(column_types),
K_(enum_set_values));
@ -2044,7 +2044,7 @@ public:
int assign(const ObColumnRefRawExpr& other);
int deep_copy(ObRawExprFactory& expr_factory, const ObColumnRefRawExpr& other, bool use_new_allocator = false);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
uint64_t get_table_id() const;
uint64_t get_column_id() const;
uint64_t& get_table_id();
@ -2116,12 +2116,12 @@ public:
{
return get_column_id();
}
virtual void reset();
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
virtual void reset() override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual uint64_t hash_internal(uint64_t seed) const;
virtual uint64_t hash_internal(uint64_t seed) const override;
bool is_from_alias_table() const { return from_alias_table_; }
void set_from_alias_table(bool value) { from_alias_table_ = value; }
@ -2211,7 +2211,7 @@ public:
real_expr_ = expr;
}
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
VIRTUAL_TO_STRING_KV(N_ITEM_TYPE, type_, N_RESULT_TYPE, result_type_, N_EXPR_INFO, info_, N_REL_ID, rel_ids_, N_TID,
table_id_, N_CID, column_id_, K_(database_name), K_(table_name), K_(synonym_name), K_(synonym_db_name),
@ -2283,8 +2283,8 @@ public:
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
int deep_copy(
ObRawExprFactory& expr_factory, const ObSetOpRawExpr& other, const uint64_t copy_types, bool use_new_allocator);
@ -2325,7 +2325,7 @@ public:
int deep_copy(ObRawExprFactory& expr_factory, const ObAliasRefRawExpr& other, const uint64_t copy_types,
bool use_new_allocator = false);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
const ObRawExpr* get_ref_expr() const;
ObRawExpr* get_ref_expr();
void set_ref_expr(ObRawExpr* ref_expr)
@ -2357,9 +2357,9 @@ public:
virtual const ObRawExpr* get_param_expr(int64_t index) const override;
virtual ObRawExpr*& get_param_expr(int64_t index) override;
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual uint64_t hash_internal(uint64_t seed) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
virtual uint64_t hash_internal(uint64_t seed) const override;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
VIRTUAL_TO_STRING_KV(N_ITEM_TYPE, type_, N_RESULT_TYPE, result_type_, N_EXPR_INFO, info_, N_REL_ID, rel_ids_, N_VALUE,
ref_expr_, K_(enum_set_values));
@ -2385,8 +2385,8 @@ public:
int deep_copy(ObRawExprFactory& expr_factory, const ObNonTerminalRawExpr& other, const uint64_t copy_types,
bool use_new_allocator = false);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
virtual void reset()
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
virtual void reset() override
{
free_op();
input_types_.reset();
@ -2408,7 +2408,7 @@ public:
return input_types_.count();
}
virtual uint64_t hash_internal(uint64_t seed) const
virtual uint64_t hash_internal(uint64_t seed) const override
{
return seed;
}
@ -2452,7 +2452,7 @@ public:
int deep_copy(ObRawExprFactory& expr_factory, const ObOpRawExpr& other, const uint64_t copy_types,
bool use_new_allocator = false);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
int set_param_expr(ObRawExpr* expr); // unary op
int set_param_exprs(ObRawExpr* first_expr, ObRawExpr* second_expr); // binary op
int set_param_exprs(ObRawExpr* first_expr, ObRawExpr* second_expr, ObRawExpr* third_expr); // triple op
@ -2480,25 +2480,25 @@ public:
return exprs_;
}
int64_t get_param_count() const;
const ObRawExpr* get_param_expr(int64_t index) const;
ObRawExpr*& get_param_expr(int64_t index);
virtual int64_t get_output_column() const
int64_t get_param_count() const override;
const ObRawExpr* get_param_expr(int64_t index) const override;
ObRawExpr*& get_param_expr(int64_t index) override;
virtual int64_t get_output_column() const override
{
return T_OP_ROW == get_expr_type() ? get_param_count() : -1;
}
virtual void clear_child();
virtual void reset();
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
virtual void clear_child() override;
virtual void reset() override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
// used for jit expr
virtual int64_t get_children_count() const
virtual int64_t get_children_count() const override
{
return exprs_.count();
}
// used for jit expr
virtual int get_children(jit::expr::ExprArray& jit_exprs) const;
virtual int get_children(jit::expr::ExprArray& jit_exprs) const override;
void set_subquery_key(ObSubQueryKey& key)
{
@ -2511,9 +2511,9 @@ public:
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual uint64_t hash_internal(uint64_t seed) const;
virtual uint64_t hash_internal(uint64_t seed) const override;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
int get_subquery_comparison_name(
const common::ObString& symbol, char* buf, int64_t buf_len, int64_t& pos, ExplainType type) const;
VIRTUAL_TO_STRING_KV(N_ITEM_TYPE, type_, N_RESULT_TYPE, result_type_, N_EXPR_INFO, info_, N_REL_ID, rel_ids_,
@ -2628,7 +2628,7 @@ public:
int deep_copy(ObRawExprFactory& expr_factory, const ObCaseOpRawExpr& other, const uint64_t copy_types,
bool use_new_allocator = false);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
const ObRawExpr* get_arg_param_expr() const;
const ObRawExpr* get_default_param_expr() const;
const ObRawExpr* get_when_param_expr(int64_t index) const;
@ -2663,27 +2663,27 @@ public:
return is_decode_func_;
}
virtual void clear_child();
virtual void reset();
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
virtual void clear_child() override;
virtual void reset() override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual int64_t get_param_count() const;
virtual const ObRawExpr* get_param_expr(int64_t index) const;
virtual ObRawExpr*& get_param_expr(int64_t index);
virtual int64_t get_param_count() const override;
virtual const ObRawExpr* get_param_expr(int64_t index) const override;
virtual ObRawExpr*& get_param_expr(int64_t index) override;
// used for jit
virtual int64_t get_children_count() const
virtual int64_t get_children_count() const override
{
return get_param_count();
}
virtual int get_children(jit::expr::ExprArray& jit_exprs) const;
virtual int get_children(jit::expr::ExprArray& jit_exprs) const override;
virtual uint64_t hash_internal(uint64_t seed) const;
virtual uint64_t hash_internal(uint64_t seed) const override;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
VIRTUAL_TO_STRING_KV(N_ITEM_TYPE, type_, N_RESULT_TYPE, result_type_, N_EXPR_INFO, info_, N_REL_ID, rel_ids_,
K_(expr_levels), N_ARG_CASE, arg_expr_, N_DEFAULT, default_expr_, N_WHEN, when_exprs_, N_THEN, then_exprs_,
N_DECODE, is_decode_func_);
@ -2889,7 +2889,7 @@ public:
int deep_copy(ObRawExprFactory& expr_factory, const ObAggFunRawExpr& other, const uint64_t copy_types,
bool use_new_allocator = false);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
int add_real_param_expr(ObRawExpr* expr);
int replace_real_param_expr(int64_t index, ObRawExpr* expr);
int replace_param_expr(int64_t index, ObRawExpr* expr);
@ -2903,16 +2903,16 @@ public:
bool is_nested_aggr() const;
void set_in_nested_aggr(bool is_nested);
int add_order_item(const OrderItem& order_item);
virtual void clear_child();
virtual void reset();
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
virtual void clear_child() override;
virtual void reset() override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
virtual int64_t get_param_count() const
virtual int64_t get_param_count() const override
{
return real_param_exprs_.count() + order_items_.count();
}
virtual const ObRawExpr* get_param_expr(int64_t index) const;
virtual ObRawExpr*& get_param_expr(int64_t index);
virtual const ObRawExpr* get_param_expr(int64_t index) const override;
virtual ObRawExpr*& get_param_expr(int64_t index) override;
inline int64_t get_real_param_count() const
{
return real_param_exprs_.count();
@ -2955,7 +2955,7 @@ public:
return order_items_;
}
virtual uint64_t hash_internal(uint64_t seed) const
virtual uint64_t hash_internal(uint64_t seed) const override
{
for (int64_t i = 0; i < real_param_exprs_.count(); ++i) {
if (OB_LIKELY(NULL != real_param_exprs_.at(i))) {
@ -2979,7 +2979,7 @@ public:
return udf_meta_;
}
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
const char* get_name_dblink(ObItemType expr_type) const;
VIRTUAL_TO_STRING_KV(N_ITEM_TYPE, type_, N_RESULT_TYPE, result_type_, N_EXPR_INFO, info_, N_REL_ID, rel_ids_,
K_(expr_level), K_(expr_levels), N_CHILDREN, real_param_exprs_, N_DISTINCT, distinct_, N_ORDER_BY, order_items_,
@ -3114,21 +3114,21 @@ public:
bool use_new_allocator = false);
void set_func_name(const common::ObString& name);
const common::ObString& get_func_name() const;
virtual void clear_child();
virtual void clear_child() override;
int check_param_num();
virtual ObExprOperator* get_op();
virtual void reset();
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
virtual ObExprOperator* get_op() override;
virtual void reset() override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual uint64_t hash_internal(uint64_t seed) const
virtual uint64_t hash_internal(uint64_t seed) const override
{
uint64_t hash_ret = common::do_hash(func_name_, seed);
return hash_ret;
}
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
int get_cast_type_name(char* buf, int64_t buf_len, int64_t& pos) const;
int get_column_conv_name(char* buf, int64_t buf_len, int64_t& pos, ExplainType type) const;
void set_op_id(int64_t operator_id)
@ -3404,9 +3404,9 @@ public:
virtual ~ObFunMatchAgainst()
{}
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual uint64_t hash_internal(uint64_t seed) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
virtual uint64_t hash_internal(uint64_t seed) const override;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
inline void set_mode_flag(ObMatchAgainstMode mode_flag)
{
mode_flag_ = mode_flag;
@ -3461,15 +3461,15 @@ public:
{
return fulltext_filter_;
}
int64_t get_param_count() const
int64_t get_param_count() const override
{
return 2;
}
const ObRawExpr* get_param_expr(int64_t index) const;
ObRawExpr*& get_param_expr(int64_t index);
void clear_child();
const ObRawExpr* get_param_expr(int64_t index) const override;
ObRawExpr*& get_param_expr(int64_t index) override;
void clear_child() override;
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
VIRTUAL_TO_STRING_KV(
N_ITEM_TYPE, type_, N_RESULT_TYPE, result_type_, N_EXPR_INFO, info_, N_REL_ID, rel_ids_, K_(mode_flag));
@ -3496,13 +3496,13 @@ public:
virtual ~ObSetIterRawExpr()
{}
virtual int do_visit(ObRawExprVisitor& visitor) override;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
int64_t get_param_count() const
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
int64_t get_param_count() const override
{
return 2;
}
const ObRawExpr* get_param_expr(int64_t index) const;
ObRawExpr*& get_param_expr(int64_t index);
const ObRawExpr* get_param_expr(int64_t index) const override;
ObRawExpr*& get_param_expr(int64_t index) override;
void set_left_expr(ObRawExpr* left_iter)
{
left_iter_ = left_iter;
@ -3511,13 +3511,13 @@ public:
{
right_iter_ = right_iter;
}
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override
{
UNUSED(expr);
UNUSED(check_context);
return false;
}
inline void clear_child()
inline void clear_child() override
{
left_iter_ = NULL;
right_iter_ = NULL;
@ -3544,13 +3544,13 @@ public:
virtual ~ObRowIterRawExpr()
{}
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override
{
UNUSED(expr);
UNUSED(check_context);
return false;
}
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
inline void set_iter_idx(int64_t iter_idx)
{
iter_idx_ = iter_idx;
@ -3755,7 +3755,7 @@ public:
bool use_new_allocator = false);
int replace_param_expr(int64_t partition_expr_index, ObRawExpr* expr);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
inline void set_func_type(ObItemType func_type)
{
func_type_ = func_type;
@ -3813,10 +3813,10 @@ public:
return agg_expr_;
}
virtual void clear_child();
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
virtual void clear_child() override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
virtual int64_t get_param_count() const
virtual int64_t get_param_count() const override
{
int64_t cnt = (agg_expr_ != NULL ? agg_expr_->get_param_count() : 0) + func_params_.count() +
partition_exprs_.count() + order_items_.count() + (upper_.interval_expr_ != NULL ? 1 : 0) +
@ -3831,13 +3831,13 @@ public:
}
return cnt;
}
virtual const ObRawExpr* get_param_expr(int64_t index) const;
virtual ObRawExpr*& get_param_expr(int64_t index);
virtual const ObRawExpr* get_param_expr(int64_t index) const override;
virtual ObRawExpr*& get_param_expr(int64_t index) override;
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual uint64_t hash_internal(uint64_t seed) const;
virtual uint64_t hash_internal(uint64_t seed) const override;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
VIRTUAL_TO_STRING_KV(N_ITEM_TYPE, type_, N_RESULT_TYPE, result_type_, N_EXPR_INFO, info_, N_REL_ID, rel_ids_,
K_(expr_level), K_(expr_levels), K_(func_type), K_(is_distinct), K_(func_params), K_(partition_exprs),
K_(order_items), K_(win_type), K_(is_between), K_(upper), K_(lower), KPC_(agg_expr));
@ -3871,12 +3871,12 @@ public:
int deep_copy(ObRawExprFactory& expr_factory, const ObPseudoColumnRawExpr& other, const uint64_t copy_types,
bool use_new_allocator = false);
virtual int replace_expr(
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs);
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const;
const common::ObIArray<ObRawExpr*>& other_exprs, const common::ObIArray<ObRawExpr*>& new_exprs) override;
virtual bool same_as(const ObRawExpr& expr, ObExprEqualCheckContext* check_context = NULL) const override;
virtual int do_visit(ObRawExprVisitor& visitor) override;
virtual uint64_t hash_internal(uint64_t seed) const;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const;
virtual uint64_t hash_internal(uint64_t seed) const override;
int get_name_internal(char* buf, const int64_t buf_len, int64_t& pos, ExplainType type) const override;
bool is_hierarchical_query_type() const
{
return type_ == T_LEVEL || type_ == T_CONNECT_BY_ISCYCLE || type_ == T_CONNECT_BY_ISLEAF;