From ccc3ee97843f681695f30dc7b9bdaec3e618fe58 Mon Sep 17 00:00:00 2001 From: obdev Date: Sat, 6 May 2023 13:08:29 +0000 Subject: [PATCH] fix px hang when use px batch rescan and ignore virtual table error --- src/sql/dtl/ob_dtl_basic_channel.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/sql/dtl/ob_dtl_basic_channel.cpp b/src/sql/dtl/ob_dtl_basic_channel.cpp index c2a2e32cfc..e596d6d317 100644 --- a/src/sql/dtl/ob_dtl_basic_channel.cpp +++ b/src/sql/dtl/ob_dtl_basic_channel.cpp @@ -379,10 +379,16 @@ int ObDtlBasicChannel::mock_eof_buffer(int64_t timeout_ts) buffer->set_data_msg(true); buffer->seq_no() = 1; buffer->pos() = 0; - if (OB_FAIL(attach(buffer))) { - LOG_WARN("fail to attach buffer", K(ret)); + if (use_interm_result_) { + if (OB_FAIL(ObDTLIntermResultManager::process_interm_result(buffer, id_))) { + LOG_WARN("fail to process internal result", K(ret)); + } } else { - free_buffer_count(); + if (OB_FAIL(attach(buffer))) { + LOG_WARN("fail to attach buffer", K(ret)); + } else { + free_buffer_count(); + } } } if (NULL != buffer) {