[fix](spill join) fix coredump of debug_string (#36723)

## Proposed changes

Pick #36715

<!--Describe your changes.-->
This commit is contained in:
TengJianPing
2024-06-25 16:33:33 +08:00
committed by GitHub
parent 785a1f49f5
commit 11201feae5
2 changed files with 7 additions and 8 deletions

View File

@ -437,13 +437,12 @@ Status PartitionedHashJoinProbeLocalState::recovery_build_blocks_from_disk(Runti
return st;
}
std::string PartitionedHashJoinProbeOperatorX::debug_string(RuntimeState* state,
int indentation_level) const {
std::string PartitionedHashJoinProbeLocalState::debug_string(int indentation_level) const {
fmt::memory_buffer debug_string_buffer;
fmt::format_to(debug_string_buffer, "{}, in mem join probe: {}",
JoinProbeOperatorX<PartitionedHashJoinProbeLocalState>::debug_string(
state, indentation_level),
_inner_probe_operator ? _inner_probe_operator->debug_string(state, 0) : "NULL");
fmt::format_to(debug_string_buffer, "{}, short_circuit_for_probe: {}",
PipelineXSpillLocalState<PartitionedHashJoinSharedState>::debug_string(
indentation_level),
_shared_state ? std::to_string(_shared_state->short_circuit_for_probe) : "NULL");
return fmt::to_string(debug_string_buffer);
}

View File

@ -61,6 +61,8 @@ public:
void update_build_profile(RuntimeProfile* child_profile);
void update_probe_profile(RuntimeProfile* child_profile);
std::string debug_string(int indentation_level = 0) const override;
friend class PartitionedHashJoinProbeOperatorX;
private:
@ -155,8 +157,6 @@ public:
Status pull(doris::RuntimeState* state, vectorized::Block* output_block,
bool* eos) const override;
std::string debug_string(RuntimeState* state, int indentation_level = 0) const override;
bool need_more_input_data(RuntimeState* state) const override;
DataDistribution required_data_distribution() const override {
if (_join_op == TJoinOp::NULL_AWARE_LEFT_ANTI_JOIN) {