parent
2bfab633de
commit
e67f0a904f
@ -114,7 +114,7 @@ public:
|
||||
};
|
||||
|
||||
common::ObCurTraceId::TraceId trace_id_;
|
||||
int32_t plan_line_id_; // which SQL operater the session is processing when sampling
|
||||
int32_t plan_line_id_; // which SQL operator the session is processing when sampling
|
||||
char sql_id_[common::OB_MAX_SQL_ID_LENGTH + 1];
|
||||
bool session_type_; // false=0, FOREGROUND, true=1, BACKGROUND
|
||||
bool is_wr_sample_; // true represents this node should be sampled into wr.
|
||||
|
2
deps/oblib/src/lib/hash/ob_hashtable.h
vendored
2
deps/oblib/src/lib/hash/ob_hashtable.h
vendored
@ -1165,7 +1165,7 @@ public:
|
||||
// if callback failed, erase the node
|
||||
// parameters:
|
||||
// flag: 0 shows that not cover existing object.
|
||||
// callback: MUST with a int operater()
|
||||
// callback: MUST with a int operator()
|
||||
// return value:
|
||||
// OB_SUCCESS for success, the node is set
|
||||
// OB_HASH_EXIST for node already exist
|
||||
|
@ -3022,7 +3022,7 @@ private:
|
||||
uint64_t invoker_id_;
|
||||
uint64_t package_id_;
|
||||
uint64_t proc_id_;
|
||||
uint64_t is_object_udf_; // 1: true, why use uint64_t but not bool, for the convinence with llvm cg
|
||||
uint64_t is_object_udf_; // 1: true, why use uint64_t but not bool, for the convenience with llvm cg
|
||||
ObPLSEArray<int64_t> subprogram_path_;
|
||||
ObPLSEArray<InOutParam> params_;
|
||||
ObPLSEArray<int64_t> nocopy_params_;
|
||||
|
@ -10985,7 +10985,7 @@ int ObDDLService::alter_table_in_trans(obrpc::ObAlterTableArg &alter_table_arg,
|
||||
ObArray<AlterTableSchema*> inc_table_schemas;
|
||||
ObArray<AlterTableSchema*> del_table_schemas;
|
||||
ObArenaAllocator allocator("ModifyPart");
|
||||
//table partitons
|
||||
//table partitions
|
||||
ObArray<int64_t> new_partition_ids;
|
||||
if (OB_SUCC(ret) && alter_table_arg.is_alter_partitions_) {
|
||||
if (OB_FAIL(check_restore_point_allow(tenant_id, *orig_table_schema))) {
|
||||
@ -12535,7 +12535,7 @@ int ObDDLService::check_alter_partitions(const ObTableSchema &orig_table_schema,
|
||||
} else if (obrpc::ObAlterTableArg::TRUNCATE_PARTITION == alter_part_type) {
|
||||
bool is_truncate = true;
|
||||
if (OB_FAIL(check_alter_drop_partitions(orig_table_schema, alter_table_arg, is_truncate))) {
|
||||
LOG_WARN("failed to check truncate partitons", K(ret), K(orig_table_schema), K(alter_table_arg));
|
||||
LOG_WARN("failed to check truncate partitions", K(ret), K(orig_table_schema), K(alter_table_arg));
|
||||
}
|
||||
is_drop_or_truncate = true;
|
||||
} else if (obrpc::ObAlterTableArg::TRUNCATE_SUB_PARTITION == alter_part_type) {
|
||||
|
@ -91,7 +91,7 @@ public:
|
||||
* if task is already cleared, return OB_SUCCESS and related info recorded in history
|
||||
*
|
||||
* @param[in] task_id: transfer task id
|
||||
* @param[out] all_part_list: all partitons of the transfer task
|
||||
* @param[out] all_part_list: all partitions of the transfer task
|
||||
* @param[out] finished_part_list: successfully transferred partitions + needless transferred (not exist or not in src LS) partitions
|
||||
* @return
|
||||
* - OB_SUCCESS: clear task successfully
|
||||
|
@ -58,7 +58,7 @@ int ObAllBackupScheduleTaskStat::inner_get_next_row(ObNewRow *&row)
|
||||
return ret;
|
||||
};
|
||||
if (OB_FAIL(omt_->operate_in_each_tenant(func_iterate_tenant_task_scheduler))) {
|
||||
LOG_WARN("fail to operater in each tenant", K(ret));
|
||||
LOG_WARN("fail to operate in each tenant", K(ret));
|
||||
} else {
|
||||
scanner_it_ = scanner_.begin();
|
||||
start_to_read_ = true;
|
||||
|
@ -582,7 +582,7 @@ int AlterTableSchema::add_alter_column(const AlterColumnSchema &alter_column_sch
|
||||
return ret;
|
||||
}
|
||||
|
||||
int AlterTableSchema::assign_subpartiton_key_info(const common::ObPartitionKeyInfo& src_info)
|
||||
int AlterTableSchema::assign_subpartition_key_info(const common::ObPartitionKeyInfo& src_info)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
|
||||
|
@ -598,7 +598,7 @@ public:
|
||||
}
|
||||
inline const common::ObString &get_new_part_name() const { return new_part_name_; }
|
||||
inline int set_new_part_name(const common::ObString &new_part_name);
|
||||
int assign_subpartiton_key_info(const common::ObPartitionKeyInfo& src_info);
|
||||
int assign_subpartition_key_info(const common::ObPartitionKeyInfo& src_info);
|
||||
|
||||
int add_alter_column(const AlterColumnSchema &column, const bool need_allocate);
|
||||
void reset();
|
||||
|
@ -2695,7 +2695,7 @@ int ObTableSchema::add_partition_key(const common::ObString &column_name)
|
||||
ret = OB_ERR_BAD_FIELD_ERROR;
|
||||
LOG_WARN("fail to get column schema, return NULL", K(column_name), K(ret));
|
||||
} else if (column->is_part_key_column()) {
|
||||
LOG_INFO("already partiton key", K(column_name), K(ret));
|
||||
LOG_INFO("already partition key", K(column_name), K(ret));
|
||||
} else if (FALSE_IT(construct_partition_key_column(*column, partition_key_column))) {
|
||||
} else if (OB_FAIL(column->set_part_key_pos(partition_key_info_.get_size() + 1))) {
|
||||
LOG_WARN("Failed to set partition key position", K(ret));
|
||||
@ -2717,7 +2717,7 @@ int ObTableSchema::add_subpartition_key(const common::ObString &column_name)
|
||||
ret = OB_ERR_BAD_FIELD_ERROR;
|
||||
LOG_WARN("fail to get column schema, return NULL", K(column_name), K(ret));
|
||||
} else if (column->is_subpart_key_column()) {
|
||||
LOG_INFO("already partiton key", K(column_name), K(ret));
|
||||
LOG_INFO("already partition key", K(column_name), K(ret));
|
||||
} else if (FALSE_IT(construct_partition_key_column(*column, partition_key_column))) {
|
||||
} else if (OB_FAIL(column->set_subpart_key_pos(subpartition_key_info_.get_size() + 1))) {
|
||||
LOG_WARN("Failed to set partition key position", K(ret));
|
||||
@ -7208,7 +7208,7 @@ int ObTableSchema::check_primary_key_cover_partition_column()
|
||||
} else if (OB_FAIL(check_rowkey_cover_partition_keys(partition_key_info_))) {
|
||||
LOG_WARN("Check rowkey cover partition key failed", K(ret));
|
||||
} else if (OB_FAIL(check_rowkey_cover_partition_keys(subpartition_key_info_))) {
|
||||
LOG_WARN("Check rowkey cover subpartiton key failed", K(ret));
|
||||
LOG_WARN("Check rowkey cover subpartition key failed", K(ret));
|
||||
}
|
||||
|
||||
return ret;
|
||||
@ -7432,7 +7432,7 @@ int ObTableSchema::get_subpart_ids(
|
||||
for (int64_t i = 0; OB_SUCC(ret) && i < subpart_num; i++) {
|
||||
if (OB_ISNULL(subpart_array[i])) {
|
||||
ret = OB_SCHEMA_ERROR;
|
||||
LOG_WARN("get invalid partiton array", K(ret), K(i), K(subpart_num));
|
||||
LOG_WARN("get invalid partition array", K(ret), K(i), K(subpart_num));
|
||||
} else if (OB_FAIL(subpart_ids.push_back(subpart_array[i]->get_sub_part_id()))) {
|
||||
LOG_WARN("push back failed", K(ret));
|
||||
}
|
||||
|
@ -2775,7 +2775,7 @@ int ObDmlCgService::generate_fk_check_ctdef(const ObLogDelUpd &op,
|
||||
ObSEArray<ObRawExpr *, 4> constraint_dep_exprs;
|
||||
ObSEArray<ObRawExpr *, 4> constraint_raw_exprs;
|
||||
if (OB_ISNULL(part_id_expr_for_lookup = fk_part_id_expr)) {
|
||||
// check if table to perform das task is partiton table
|
||||
// check if table to perform das task is partition table
|
||||
} else if (OB_FAIL(cg_.generate_calc_part_id_expr(*part_id_expr_for_lookup, nullptr, rt_part_id_expr))) {
|
||||
LOG_WARN("generate rt part_id_expr failed", K(ret), KPC(part_id_expr_for_lookup));
|
||||
} else if (OB_ISNULL(rt_part_id_expr)) {
|
||||
|
@ -235,7 +235,7 @@ int check_list_value_duplicate(T **partition_array,
|
||||
!ObSQLUtils::is_same_type_for_compare(tmp_row.get_cell(z).get_meta(),
|
||||
row.get_cell(z).get_meta())) {
|
||||
ret = OB_ERR_PARTITION_VALUE_ERROR;
|
||||
LOG_WARN("partiton value should have same meta info", K(ret), K(tmp_row), K(row), K(j));
|
||||
LOG_WARN("partition value should have same meta info", K(ret), K(tmp_row), K(row), K(j));
|
||||
}
|
||||
}
|
||||
if (OB_SUCC(ret) && tmp_row == row) {
|
||||
@ -634,7 +634,7 @@ int ObPartitionExecutorUtils::check_increasing_range_value(T **array,
|
||||
&& !rowkey_cur->get_obj_ptr()[j].is_max_value()
|
||||
&& !rowkey_last->get_obj_ptr()[j].is_max_value()) {
|
||||
ret = OB_ERR_PARTITION_VALUE_ERROR;
|
||||
LOG_WARN("partiton value should have same meta info", K(ret), K(*rowkey_cur), K(*rowkey_last), K(j));
|
||||
LOG_WARN("partition value should have same meta info", K(ret), K(*rowkey_cur), K(*rowkey_last), K(j));
|
||||
} else if (rowkey_cur->get_obj_ptr()[j].is_max_value() &&
|
||||
rowkey_last->get_obj_ptr()[j].is_max_value()) {
|
||||
need_check_maxvalue = true;
|
||||
|
@ -2045,7 +2045,7 @@ int ObHashJoinOp::asyn_dump_partition(
|
||||
LOG_TRACE("debug dump partition", K(is_left), K(start_dumped_part_idx),
|
||||
K(last_dumped_partition_idx), K(cur_dumped_partition_),
|
||||
K(pre_total_dumped_size), K(dumped_size), K(dump_all), K(lbt()));
|
||||
// secondly dump one buffer per partiton one by one
|
||||
// secondly dump one buffer per partition one by one
|
||||
bool finish_dump = false;
|
||||
while (OB_SUCC(ret) && !finish_dump) {
|
||||
finish_dump = true;
|
||||
@ -3991,7 +3991,7 @@ int ObHashJoinOp::insert_batch_row(const int64_t cur_partition_in_memory)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
bool need_material = true;
|
||||
bool dumped_partiton = false;
|
||||
bool dumped_partition = false;
|
||||
ObHashJoinStoredJoinRow *stored_row = nullptr;
|
||||
const int64_t part_idx = get_part_idx(cur_right_hash_value_);
|
||||
if (part_idx < cur_partition_in_memory) {
|
||||
@ -4003,14 +4003,14 @@ int ObHashJoinOp::insert_batch_row(const int64_t cur_partition_in_memory)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
dumped_partiton = true;
|
||||
dumped_partition = true;
|
||||
}
|
||||
if (!need_material) {
|
||||
} else if (nullptr != right_read_row_) {
|
||||
if (OB_FAIL(right_hj_part_array_[part_idx].add_row(right_read_row_, stored_row))) {
|
||||
LOG_WARN("fail to add row", K(ret));
|
||||
} else {
|
||||
if (!dumped_partiton && right_hj_part_array_[part_idx].has_switch_block()) {
|
||||
if (!dumped_partition && right_hj_part_array_[part_idx].has_switch_block()) {
|
||||
cur_full_right_partition_ = part_idx;
|
||||
cur_left_hist_ = &part_histograms_[cur_full_right_partition_];
|
||||
}
|
||||
@ -4021,7 +4021,7 @@ int ObHashJoinOp::insert_batch_row(const int64_t cur_partition_in_memory)
|
||||
LOG_WARN("fail to add row", K(ret));
|
||||
} else {
|
||||
stored_row->set_hash_value(cur_right_hash_value_);
|
||||
if (!dumped_partiton && right_hj_part_array_[part_idx].has_switch_block()) {
|
||||
if (!dumped_partition && right_hj_part_array_[part_idx].has_switch_block()) {
|
||||
cur_full_right_partition_ = part_idx;
|
||||
cur_left_hist_ = &part_histograms_[cur_full_right_partition_];
|
||||
// need right to probe, it may return left and right data, so it need save temporarily
|
||||
@ -4163,7 +4163,7 @@ int ObHashJoinOp::get_next_batch_right_rows()
|
||||
has_fill_left_row_ = false;
|
||||
if (OB_ITER_END == ret) {
|
||||
ret = OB_SUCCESS;
|
||||
// probe left all right rows from 0 partition to last partiton
|
||||
// probe left all right rows from 0 partition to last partition
|
||||
cur_full_right_partition_ = -1;
|
||||
LOG_DEBUG("debug partition start", K(cur_full_right_partition_));
|
||||
if (!enable_batch_) {
|
||||
|
@ -90,7 +90,7 @@ int ObRecursiveUnionAllOp::inner_open()
|
||||
} else if (OB_ISNULL(op_kit = ctx_.get_operator_kit(MY_SPEC.pump_operator_id_))
|
||||
|| OB_ISNULL(op_kit->op_)) {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
LOG_WARN("get ObOperater from exec ctx failed", K(MY_SPEC.pump_operator_id_), K(op_kit), K(MY_SPEC.search_expr_), K(MY_SPEC.strategy_));
|
||||
LOG_WARN("get ObOperator from exec ctx failed", K(MY_SPEC.pump_operator_id_), K(op_kit), K(MY_SPEC.search_expr_), K(MY_SPEC.strategy_));
|
||||
} else {
|
||||
inner_data_.set_left_child(left_);
|
||||
inner_data_.set_right_child(right_);
|
||||
|
@ -40,7 +40,7 @@ int ObTableScanWithIndexBackOp::inner_open()
|
||||
if (OB_ISNULL(op_kit = ctx_.get_operator_kit(MY_SPEC.get_index_scan_tree_id()))
|
||||
|| OB_ISNULL(op_kit->op_)) {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
LOG_WARN("get ObOperater from exec ctx failed", K(MY_SPEC.get_index_scan_tree_id()));
|
||||
LOG_WARN("get ObOperator from exec ctx failed", K(MY_SPEC.get_index_scan_tree_id()));
|
||||
} else if (FALSE_IT(index_scan_tree_ = op_kit->op_)) {
|
||||
} else if (OB_FAIL(prepare_scan_param())) {
|
||||
if (OB_ITER_END != ret) {
|
||||
|
@ -52,7 +52,7 @@ int ObShuffleService::get_partition_ids(ObExecContext &exec_ctx,
|
||||
const ObIArray<ObTransmitRepartColumn> &repart_sub_columns,
|
||||
int64_t &part_id,
|
||||
int64_t &subpart_id,
|
||||
bool &no_match_partiton)
|
||||
bool &no_match_partition)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
if (OB_FAIL(init_expr_ctx(exec_ctx))) {
|
||||
@ -69,10 +69,10 @@ int ObShuffleService::get_partition_ids(ObExecContext &exec_ctx,
|
||||
}
|
||||
if (OB_SUCC(ret)) {
|
||||
if (part_id == NO_MATCH_PARTITION || subpart_id == NO_MATCH_PARTITION) {
|
||||
no_match_partiton = true;
|
||||
no_match_partition = true;
|
||||
}
|
||||
}
|
||||
LOG_DEBUG("get part id and subpart id", K(part_id), K(subpart_id), K(no_match_partiton));
|
||||
LOG_DEBUG("get part id and subpart id", K(part_id), K(subpart_id), K(no_match_partition));
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -63,7 +63,7 @@ public:
|
||||
const ObIArray<ObTransmitRepartColumn> &repart_sub_columns,
|
||||
int64_t &part_idx,
|
||||
int64_t &subpart_idx,
|
||||
bool &no_match_partiton);
|
||||
bool &no_match_partition);
|
||||
|
||||
// 这个接口仅在px框架下使用, 非px请使用上面接口.
|
||||
int get_partition_ids(ObExecContext &exec_ctx,
|
||||
@ -76,7 +76,7 @@ public:
|
||||
const ObPxPartChMap &ch_map,
|
||||
int64_t &part_id,
|
||||
int64_t &subpart_id,
|
||||
bool &no_match_partiton,
|
||||
bool &no_match_partition,
|
||||
ObRepartitionType part_type);
|
||||
private:
|
||||
int init_expr_ctx(ObExecContext &exec_ctx);
|
||||
|
@ -2382,7 +2382,7 @@ int ObSPIService::spi_resolve_prepare(common::ObIAllocator &allocator,
|
||||
LOG_WARN("push_back error", K(ret));
|
||||
}
|
||||
}
|
||||
// add debug info, for convinence of sql reconstruct debug
|
||||
// add debug info, for convenience of sql reconstruct debug
|
||||
LOG_DEBUG("spi prepare, source sql and prepared reconstruct sql", K(sql),
|
||||
K(pl_prepare_result.result_set_->get_route_sql()));
|
||||
if (OB_SUCC(ret)) {
|
||||
|
@ -365,7 +365,7 @@ int ObDelUpdLogPlan::calculate_table_location_and_sharding(const ObDelUpdStmt &s
|
||||
table_partition_info = new(table_partition_info) ObTablePartitionInfo(allocator_);
|
||||
ObTableLocationType location_type = OB_TBL_LOCATION_UNINITIALIZED;
|
||||
ObAddr &server = get_optimizer_context().get_local_server_addr();
|
||||
table_partition_info->get_table_location().set_check_no_partiton(stmt.is_merge_stmt());
|
||||
table_partition_info->get_table_location().set_check_no_partition(stmt.is_merge_stmt());
|
||||
if (OB_FAIL(calculate_table_location(stmt,
|
||||
filters,
|
||||
table_id,
|
||||
|
@ -554,7 +554,7 @@ int ObLogDelUpd::find_pdml_part_id_producer(ObLogicalOperator *op,
|
||||
} else {
|
||||
if (OB_SUCC(ret) && NULL == producer && op->get_type() == log_op_def::LOG_EXCHANGE
|
||||
&& static_cast<ObLogExchange*>(op)->is_producer()) {
|
||||
// find the first exchange below dml, use this exchange generate partiton id for pdml insert
|
||||
// find the first exchange below dml, use this exchange generate partition id for pdml insert
|
||||
producer = static_cast<ObLogExchange*>(op);
|
||||
}
|
||||
for (int64_t i = 0; OB_SUCC(ret) && NULL == src_tsc && i < op->get_num_of_child(); i++) {
|
||||
@ -564,7 +564,7 @@ int ObLogDelUpd::find_pdml_part_id_producer(ObLogicalOperator *op,
|
||||
}
|
||||
if (OB_SUCC(ret) && NULL != src_tsc && op->get_type() == log_op_def::LOG_EXCHANGE
|
||||
&& static_cast<ObLogExchange*>(op)->is_producer()) {
|
||||
// generate partiton id by exchange above dml target table scan
|
||||
// generate partition id by exchange above dml target table scan
|
||||
producer = static_cast<ObLogExchange*>(op);
|
||||
}
|
||||
}
|
||||
|
@ -543,7 +543,7 @@ protected: // memeber variables
|
||||
// // removal these in cg layer, up to opt layer.
|
||||
common::ObSEArray<uint64_t, 4, common::ModulePageAllocator, true> ddl_output_column_ids_;
|
||||
// removal these in cg layer, up to opt layer end.
|
||||
// table partiton locations
|
||||
// table partition locations
|
||||
ObTablePartitionInfo *table_partition_info_; //this member is not in copy_without_child,
|
||||
//because its used in EXCHANGE stage, and
|
||||
//copy_without_child used before this
|
||||
|
@ -725,7 +725,7 @@ int ObTableLocation::assign(const ObTableLocation &other)
|
||||
is_non_partition_optimized_ = other.is_non_partition_optimized_;
|
||||
tablet_id_ = other.tablet_id_;
|
||||
object_id_ = other.object_id_;
|
||||
check_no_partiton_ = other.check_no_partiton_;
|
||||
check_no_partition_ = other.check_no_partition_;
|
||||
if (OB_FAIL(loc_meta_.assign(other.loc_meta_))) {
|
||||
LOG_WARN("assign loc meta failed", K(ret), K(other.loc_meta_));
|
||||
}
|
||||
@ -855,7 +855,7 @@ void ObTableLocation::reset()
|
||||
is_non_partition_optimized_ = false;
|
||||
tablet_id_.reset();
|
||||
object_id_ = OB_INVALID_ID;
|
||||
check_no_partiton_ = false;
|
||||
check_no_partition_ = false;
|
||||
}
|
||||
int ObTableLocation::init(share::schema::ObSchemaGetterGuard &schema_guard,
|
||||
const ObDMLStmt &stmt,
|
||||
@ -1706,7 +1706,7 @@ int ObTableLocation::calculate_tablet_ids(ObExecContext &exec_ctx,
|
||||
&& 0 == partition_ids.count()
|
||||
&& (stmt::T_INSERT == stmt_type_
|
||||
|| stmt::T_REPLACE == stmt_type_
|
||||
|| check_no_partiton_)) {
|
||||
|| check_no_partition_)) {
|
||||
ret = OB_NO_PARTITION_FOR_GIVEN_VALUE;
|
||||
LOG_USER_WARN(OB_NO_PARTITION_FOR_GIVEN_VALUE);
|
||||
}
|
||||
@ -2891,7 +2891,7 @@ int ObTableLocation::add_partition_columns(const ObDMLStmt &stmt,
|
||||
LOG_WARN("Column id should not be OB_INVALID_ID", K(ret));
|
||||
} else if (only_gen_cols) {//only deal dependented columns for generated partition column
|
||||
if (OB_FAIL(add_partition_column(stmt, table_id, column_id, gen_cols, gen_row_desc))) {
|
||||
LOG_WARN("Failed to add partiton column", K(ret));
|
||||
LOG_WARN("Failed to add partition column", K(ret));
|
||||
}
|
||||
} else {
|
||||
if (col_expr->is_generated_column()) {
|
||||
@ -2918,7 +2918,7 @@ int ObTableLocation::add_partition_columns(const ObDMLStmt &stmt,
|
||||
if (OB_SUCC(ret)) {
|
||||
if (OB_FAIL(add_partition_column(stmt, table_id, column_id,
|
||||
partition_columns, row_desc))) {
|
||||
LOG_WARN("Failed to add partiton column", K(ret));
|
||||
LOG_WARN("Failed to add partition column", K(ret));
|
||||
}
|
||||
}
|
||||
}//end of else
|
||||
@ -3971,7 +3971,7 @@ int ObTableLocation::calc_partition_id_by_row(ObExecContext &exec_ctx,
|
||||
if (OB_FAIL(ret) || range_columns) {
|
||||
} else if (OB_FAIL(calc_partition_id_by_func_value(tablet_mapper, func_result, false,
|
||||
tablet_ids, partition_ids, part_ids))) {
|
||||
LOG_WARN("Failed to calc partiton id by func value", K(ret));
|
||||
LOG_WARN("Failed to calc partition id by func value", K(ret));
|
||||
}
|
||||
if (0 == partition_ids.count() && PARTITION_LEVEL_ONE == calc_range_part_level) {
|
||||
bool is_interval = false;
|
||||
@ -4751,7 +4751,7 @@ OB_DEF_SERIALIZE(ObTableLocation)
|
||||
OB_UNIS_ENCODE(object_id_);
|
||||
OB_UNIS_ENCODE(related_list_);
|
||||
OB_UNIS_ENCODE(table_type_);
|
||||
OB_UNIS_ENCODE(check_no_partiton_);
|
||||
OB_UNIS_ENCODE(check_no_partition_);
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -4829,7 +4829,7 @@ OB_DEF_SERIALIZE_SIZE(ObTableLocation)
|
||||
OB_UNIS_ADD_LEN(object_id_);
|
||||
OB_UNIS_ADD_LEN(related_list_);
|
||||
OB_UNIS_ADD_LEN(table_type_);
|
||||
OB_UNIS_ADD_LEN(check_no_partiton_);
|
||||
OB_UNIS_ADD_LEN(check_no_partition_);
|
||||
return len;
|
||||
}
|
||||
|
||||
@ -4985,7 +4985,7 @@ OB_DEF_DESERIALIZE(ObTableLocation)
|
||||
OB_UNIS_DECODE(object_id_);
|
||||
OB_UNIS_DECODE(related_list_);
|
||||
OB_UNIS_DECODE(table_type_);
|
||||
OB_UNIS_DECODE(check_no_partiton_);
|
||||
OB_UNIS_DECODE(check_no_partition_);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -498,7 +498,7 @@ public:
|
||||
tablet_id_(ObTabletID::INVALID_TABLET_ID),
|
||||
object_id_(OB_INVALID_ID),
|
||||
related_list_(allocator_),
|
||||
check_no_partiton_(false)
|
||||
check_no_partition_(false)
|
||||
{
|
||||
}
|
||||
|
||||
@ -547,7 +547,7 @@ public:
|
||||
tablet_id_(ObTabletID::INVALID_TABLET_ID),
|
||||
object_id_(OB_INVALID_ID),
|
||||
related_list_(allocator_),
|
||||
check_no_partiton_(false)
|
||||
check_no_partition_(false)
|
||||
{
|
||||
}
|
||||
virtual ~ObTableLocation() { reset(); }
|
||||
@ -770,9 +770,9 @@ public:
|
||||
const bool is_dml_table = true);
|
||||
|
||||
int calc_not_partitioned_table_ids(ObExecContext &exec_ctx);
|
||||
void set_check_no_partiton(const bool check)
|
||||
void set_check_no_partition(const bool check)
|
||||
{
|
||||
check_no_partiton_ = check;
|
||||
check_no_partition_ = check;
|
||||
}
|
||||
TO_STRING_KV(K_(loc_meta),
|
||||
K_(part_projector),
|
||||
@ -918,7 +918,7 @@ private:
|
||||
ObRawExpr *col_expr,
|
||||
bool &can_replace);
|
||||
//add partition column
|
||||
//add column to row desc and partiton columns
|
||||
//add column to row desc and partition columns
|
||||
int add_partition_column(const ObDMLStmt &stmt,
|
||||
const uint64_t table_id,
|
||||
const uint64_t column_id,
|
||||
@ -1170,7 +1170,7 @@ private:
|
||||
ObTabletID tablet_id_;
|
||||
ObObjectID object_id_;
|
||||
common::ObList<DASRelatedTabletMap::MapEntry, common::ObIAllocator> related_list_;
|
||||
bool check_no_partiton_;
|
||||
bool check_no_partition_;
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -1732,7 +1732,7 @@ int ObAlterTableResolver::resolve_add_partition(const ParseNode &node,
|
||||
alter_table_schema.get_sub_part_option() = orig_table_schema.get_sub_part_option();
|
||||
alter_table_schema.get_part_option() = orig_table_schema.get_part_option();
|
||||
/* set subpartition key info */
|
||||
OZ (alter_table_schema.assign_subpartiton_key_info(
|
||||
OZ (alter_table_schema.assign_subpartition_key_info(
|
||||
orig_table_schema.get_subpartition_key_info()));
|
||||
OZ (mock_part_func_node(orig_table_schema, true/*is_sub_part*/, subpart_func_node));
|
||||
OZ (resolve_part_func(params_, subpart_func_node,
|
||||
|
@ -10277,7 +10277,7 @@ int ObDDLResolver::resolve_list_partition_elements(ObPartitionedStmt *stmt,
|
||||
} else if (OB_FAIL(resolve_list_partition_value_node(*expr_list_node, partition_name,
|
||||
part_type, part_func_exprs,
|
||||
list_value_exprs, in_tablegroup))) {
|
||||
LOG_WARN("failed to resolve list partiton value node", K(ret));
|
||||
LOG_WARN("failed to resolve list partition value node", K(ret));
|
||||
} else if (OB_NOT_NULL(element_node->children_[PART_ID_NODE])) {
|
||||
// PART_ID is deprecated in 4.0, we just ignore and show warnings here.
|
||||
LOG_USER_WARN_ONCE(OB_NOT_SUPPORTED, "specify part_id");
|
||||
@ -10357,7 +10357,7 @@ int ObDDLResolver::resolve_list_subpartition_elements(ObPartitionedStmt *stmt,
|
||||
} else if (OB_FAIL(resolve_list_partition_value_node(*expr_list_node, partition_name,
|
||||
part_type, part_func_exprs,
|
||||
list_value_exprs, in_tablegroup))) {
|
||||
LOG_WARN("failed to resolve list partiton value node", K(ret));
|
||||
LOG_WARN("failed to resolve list partition value node", K(ret));
|
||||
} else if (OB_NOT_NULL(element_node->children_[PART_ID_NODE])) {
|
||||
// PART_ID is deprecated in 4.0, we just ignore and show warnings here.
|
||||
LOG_USER_WARN_ONCE(OB_NOT_SUPPORTED, "specify part_id");
|
||||
|
@ -3787,7 +3787,7 @@ int ObResolverUtils::check_expr_valid_for_partition(ObRawExpr &expr,
|
||||
part_expr = &expr;
|
||||
}
|
||||
} else if (is_range_part(part_type) || is_list_part(part_type) || is_key_part(part_type)) {
|
||||
//对于partiton by range(xx) 这里的expr是xx
|
||||
//对于partition by range(xx) 这里的expr是xx
|
||||
part_expr = &expr;
|
||||
} else {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
@ -4325,7 +4325,7 @@ int ObResolverUtils::resolve_partition_expr(ObResolverParams ¶ms,
|
||||
ret = OB_ERR_PARTITION_FUNCTION_IS_NOT_ALLOWED;
|
||||
|
||||
} else if (columns.size() <= 0) {
|
||||
//处理partiton中为常量表达式的情况 partition by hash(1+1+1) /partition by range (1+1+1)
|
||||
//处理partition中为常量表达式的情况 partition by hash(1+1+1) /partition by range (1+1+1)
|
||||
//用于限制 partition by hash(1)
|
||||
ret = OB_ERR_WRONG_EXPR_IN_PARTITION_FUNC_ERROR;
|
||||
LOG_WARN("const expr is invalid for thie type of partitioning", K(ret));
|
||||
|
@ -243,7 +243,7 @@ private:
|
||||
* @brief trans_table_item
|
||||
* 将关联target_table的结构改写为关联source_table
|
||||
* 从from item中删除target table
|
||||
* 从partiton信息中删除target table
|
||||
* 从partition信息中删除target table
|
||||
* 重构 rel_idx
|
||||
* @param stmt
|
||||
* @param source_table
|
||||
@ -593,7 +593,7 @@ private:
|
||||
* @brief trans_semi_table_item
|
||||
* 将关联target_table的结构改写为关联source_table
|
||||
* 从table items中删除target table
|
||||
* 从partiton信息中删除target table
|
||||
* 从partition信息中删除target table
|
||||
* 重构 rel_idx
|
||||
* @param stmt
|
||||
* @param source_table
|
||||
|
@ -370,7 +370,7 @@ public:
|
||||
private:
|
||||
int prepare_iter(const ObSqlString &sql_string, common::ObCommonSqlProxy *sql_proxy);
|
||||
int generate_build_select_sql(ObSqlString &sql_string);
|
||||
// to fetch partiton/subpartition name for select sql.
|
||||
// to fetch partition/subpartition name for select sql.
|
||||
int fetch_source_part_info(
|
||||
const common::ObTabletID &src_tablet_id,
|
||||
const share::schema::ObTableSchema &src_table_schema,
|
||||
|
@ -60,7 +60,7 @@ struct ObWrsGetClusterVersionResponse
|
||||
OB_UNIS_VERSION(1);
|
||||
};
|
||||
|
||||
// Cluster Heartbeat Requst Struct
|
||||
// Cluster Heartbeat Request Struct
|
||||
struct ObWrsClusterHeartbeatRequest
|
||||
{
|
||||
common::ObAddr req_server_; // Who I am
|
||||
|
@ -796,14 +796,14 @@ TEST_F(TestServerManager, with_partition)
|
||||
ASSERT_EQ(OB_SUCCESS, server_manager_.get_server_status(B, B_s));
|
||||
|
||||
ASSERT_TRUE(B_s.with_partition_);
|
||||
ASSERT_EQ(OB_SUCCESS, server_manager_.clear_with_partiton(A, A_s.last_hb_time_));
|
||||
ASSERT_EQ(OB_SUCCESS, server_manager_.clear_with_partition(A, A_s.last_hb_time_));
|
||||
|
||||
// last hb time mismatch, return success, keep with partition flag unchanged.
|
||||
ASSERT_EQ(OB_SUCCESS, server_manager_.clear_with_partiton(B, B_s.last_hb_time_ + 1));
|
||||
ASSERT_EQ(OB_SUCCESS, server_manager_.clear_with_partition(B, B_s.last_hb_time_ + 1));
|
||||
ASSERT_EQ(OB_SUCCESS, server_manager_.get_server_status(B, B_s));
|
||||
ASSERT_TRUE(B_s.with_partition_);
|
||||
|
||||
ASSERT_EQ(OB_SUCCESS, server_manager_.clear_with_partiton(B, B_s.last_hb_time_));
|
||||
ASSERT_EQ(OB_SUCCESS, server_manager_.clear_with_partition(B, B_s.last_hb_time_));
|
||||
ASSERT_EQ(OB_SUCCESS, server_manager_.get_server_status(B, B_s));
|
||||
ASSERT_FALSE(B_s.with_partition_);
|
||||
}
|
||||
|
@ -421,7 +421,7 @@ int run_test() {
|
||||
if(!config.is_test_write()) {
|
||||
STORAGE_LOG(WARN, "no thread, cannot start write bench");
|
||||
} else {
|
||||
const int thread_no = config.get_total_partition_num();//one partiton one write thread
|
||||
const int thread_no = config.get_total_partition_num();//one partition one write thread
|
||||
MultiThreadWrite write(thread_no);
|
||||
if(OB_FAIL(write.init(schema_service, &restore_schema, config))){
|
||||
STORAGE_LOG(WARN, "fail to init query", K(ret));
|
||||
@ -459,8 +459,8 @@ int run_test() {
|
||||
|
||||
if (OB_SUCC(ret)) {
|
||||
//multi thread single get speed test
|
||||
const int partiton_num = config.get_total_partition_num();
|
||||
const int thread_no = config.get_single_get_thread_count() * partiton_num;
|
||||
const int partition_num = config.get_total_partition_num();
|
||||
const int thread_no = config.get_single_get_thread_count() * partition_num;
|
||||
if(thread_no <= 0) {
|
||||
STORAGE_LOG(WARN, "no thread, cannot start single get bench");
|
||||
} else {
|
||||
@ -490,8 +490,8 @@ int run_test() {
|
||||
|
||||
if (OB_SUCC(ret)) {
|
||||
//multi thread multi get speed test
|
||||
const int partiton_num = config.get_total_partition_num();
|
||||
int thread_no = config.get_multi_get_thread_count() * partiton_num;
|
||||
const int partition_num = config.get_total_partition_num();
|
||||
int thread_no = config.get_multi_get_thread_count() * partition_num;
|
||||
if(thread_no <= 0) {
|
||||
STORAGE_LOG(WARN, "no thread, cannot start multi get bench");
|
||||
} else {
|
||||
@ -521,8 +521,8 @@ int run_test() {
|
||||
|
||||
if (OB_SUCC(ret)) {
|
||||
//multi thread scan speed test
|
||||
const int partiton_num = config.get_total_partition_num();
|
||||
int thread_no = config.get_scan_thread_count() * partiton_num;
|
||||
const int partition_num = config.get_total_partition_num();
|
||||
int thread_no = config.get_scan_thread_count() * partition_num;
|
||||
if(thread_no <= 0) {
|
||||
STORAGE_LOG(WARN, "no thread, cannot start scan speed bench");
|
||||
} else {
|
||||
|
@ -114,7 +114,7 @@ void MultiThreadSingleGet::run(obsys::CThread *thread, void *arg)
|
||||
int ret = OB_SUCCESS;
|
||||
ObStoragePerfRead read;
|
||||
read.assign_read_cols(read_cols_);
|
||||
// const int partiton_num = config_.get_total_partition_num();
|
||||
// const int partition_num = config_.get_total_partition_num();
|
||||
if(OB_FAIL(read.init(&config_, (int64_t)arg, &cache_suite_, restore_schema_,
|
||||
schema_service_, data_.get_partition_storage(), &barrier_))){
|
||||
STORAGE_LOG(WARN, "fail to init read", K(ret));
|
||||
@ -136,7 +136,7 @@ void MultiThreadMultiGet::run(obsys::CThread *thread, void *arg)
|
||||
|
||||
int ret = OB_SUCCESS;
|
||||
ObStoragePerfRead read;
|
||||
// const int partiton_num = config_.get_total_partition_num();
|
||||
// const int partition_num = config_.get_total_partition_num();
|
||||
read.assign_read_cols(this->read_cols_);
|
||||
if(OB_FAIL(read.init(&config_, (int64_t)arg, &cache_suite_, restore_schema_,
|
||||
schema_service_, data_.get_partition_storage(), &barrier_))){
|
||||
@ -158,7 +158,7 @@ void MultiThreadScan::run(obsys::CThread *thread, void *arg)
|
||||
{
|
||||
|
||||
int ret = OB_SUCCESS;
|
||||
//const int partiton_num = config_.get_total_partition_num();
|
||||
//const int partition_num = config_.get_total_partition_num();
|
||||
|
||||
ObStoragePerfRead read;
|
||||
read.assign_read_cols(this->read_cols_);
|
||||
|
@ -15,8 +15,8 @@ write_to_memtable_percent=0 #the ratio between size of data write to memtable wi
|
||||
|
||||
[read_parameter]
|
||||
single_get_thread_count=0 #each partition how many thread to do single get test, 0 mean not test single get
|
||||
multi_get_thread_count=0 #each partiton how many thread to do multi get test, 0 mean not test multi get
|
||||
scan_thread_count=1 #each partiton how many thread for scan test, 0 mean not test scan
|
||||
multi_get_thread_count=0 #each partition how many thread to do multi get test, 0 mean not test multi get
|
||||
scan_thread_count=1 #each partition how many thread for scan test, 0 mean not test scan
|
||||
total_single_row_count=1000 #every thread total get single row count
|
||||
single_get_times=1000
|
||||
total_multi_row_count=1000 #every thread total multi get row count
|
||||
|
Loading…
x
Reference in New Issue
Block a user