This is an automated email from the ASF dual-hosted git repository.

panxiaolei pushed a commit to branch fix_1023
in repository https://gitbox.apache.org/repos/asf/doris.git

commit 566e767e4781b5307403255883a42a7b0dcfd8f0
Author: BiteTheDDDDt <[email protected]>
AuthorDate: Mon Oct 23 10:25:03 2023 +0800

    catch error on schema_change's next_block
---
 be/src/olap/schema_change.cpp | 18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/be/src/olap/schema_change.cpp b/be/src/olap/schema_change.cpp
index 7dea2906067..fdd6ace66dc 100644
--- a/be/src/olap/schema_change.cpp
+++ b/be/src/olap/schema_change.cpp
@@ -478,9 +478,12 @@ Status 
VSchemaChangeDirectly::_inner_process(RowsetReaderSharedPtr rowset_reader
                 
vectorized::Block::create_unique(new_tablet->tablet_schema()->create_block());
         auto ref_block = 
vectorized::Block::create_unique(base_tablet_schema->create_block());
 
-        rowset_reader->next_block(ref_block.get());
-        if (ref_block->rows() == 0) {
-            break;
+        auto st = rowset_reader->next_block(ref_block.get());
+        if (!st) {
+            if (st.is<ErrorCode::END_OF_FILE>()) {
+                break;
+            }
+            return st;
         }
 
         RETURN_IF_ERROR(_changer.change_block(ref_block.get(), 
new_block.get()));
@@ -551,9 +554,12 @@ Status 
VSchemaChangeWithSorting::_inner_process(RowsetReaderSharedPtr rowset_rea
 
     do {
         auto ref_block = 
vectorized::Block::create_unique(base_tablet_schema->create_block());
-        rowset_reader->next_block(ref_block.get());
-        if (ref_block->rows() == 0) {
-            break;
+        auto st = rowset_reader->next_block(ref_block.get());
+        if (!st) {
+            if (st.is<ErrorCode::END_OF_FILE>()) {
+                break;
+            }
+            return st;
         }
 
         RETURN_IF_ERROR(_changer.change_block(ref_block.get(), 
new_block.get()));


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to