Fix pdml insert bug
This commit is contained in:
		| @ -470,13 +470,7 @@ int ObDelUpdLogPlan::compute_exchange_info_for_pdml_del_upd(const ObShardingInfo | |||||||
|       } |       } | ||||||
|       LOG_TRACE("partition level is one, use pkey reshuffle method"); |       LOG_TRACE("partition level is one, use pkey reshuffle method"); | ||||||
|     } else if (share::schema::PARTITION_LEVEL_TWO == part_level) { |     } else if (share::schema::PARTITION_LEVEL_TWO == part_level) { | ||||||
|       if (source_sharding.is_partition_single()) { |       exch_info.repartition_type_ = OB_REPARTITION_ONE_SIDE_TWO_LEVEL; | ||||||
|         exch_info.repartition_type_ = OB_REPARTITION_ONE_SIDE_ONE_LEVEL_SUB; |  | ||||||
|       } else if (source_sharding.is_subpartition_single()) { |  | ||||||
|         exch_info.repartition_type_ = OB_REPARTITION_ONE_SIDE_ONE_LEVEL_FIRST; |  | ||||||
|       } else { |  | ||||||
|         exch_info.repartition_type_ = OB_REPARTITION_ONE_SIDE_TWO_LEVEL; |  | ||||||
|       } |  | ||||||
|       if (!get_stmt()->is_merge_stmt() && |       if (!get_stmt()->is_merge_stmt() && | ||||||
|           get_optimizer_context().is_pdml_heap_table() && !is_index_maintenance) { |           get_optimizer_context().is_pdml_heap_table() && !is_index_maintenance) { | ||||||
|         exch_info.dist_method_ = ObPQDistributeMethod::PARTITION_RANDOM; |         exch_info.dist_method_ = ObPQDistributeMethod::PARTITION_RANDOM; | ||||||
| @ -598,13 +592,7 @@ int ObDelUpdLogPlan::compute_exchange_info_for_pdml_insert(const ObShardingInfo | |||||||
|       } |       } | ||||||
|     } else if (share::schema::PARTITION_LEVEL_TWO == part_level) { |     } else if (share::schema::PARTITION_LEVEL_TWO == part_level) { | ||||||
|       // pdml op对应的表是分区表,分区内并行处理,使用pkey random shuffle方式 |       // pdml op对应的表是分区表,分区内并行处理,使用pkey random shuffle方式 | ||||||
|       if (target_sharding.is_partition_single()) { |       exch_info.repartition_type_ = OB_REPARTITION_ONE_SIDE_TWO_LEVEL; | ||||||
|         exch_info.repartition_type_ = OB_REPARTITION_ONE_SIDE_ONE_LEVEL_SUB; |  | ||||||
|       } else if (target_sharding.is_subpartition_single()) { |  | ||||||
|         exch_info.repartition_type_ = OB_REPARTITION_ONE_SIDE_ONE_LEVEL_FIRST; |  | ||||||
|       } else { |  | ||||||
|         exch_info.repartition_type_ = OB_REPARTITION_ONE_SIDE_TWO_LEVEL; |  | ||||||
|       } |  | ||||||
|       if ((!get_stmt()->is_merge_stmt() ||  |       if ((!get_stmt()->is_merge_stmt() ||  | ||||||
|            !static_cast<const ObMergeStmt*>(get_stmt())->has_update_clause()) && |            !static_cast<const ObMergeStmt*>(get_stmt())->has_update_clause()) && | ||||||
|            ((get_optimizer_context().is_online_ddl() && get_optimizer_context().is_heap_table_ddl()) |            ((get_optimizer_context().is_online_ddl() && get_optimizer_context().is_heap_table_ddl()) | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	 2149
					2149