Zoltan Borok-Nagy has posted comments on this change. ( http://gerrit.cloudera.org:8080/24140 )
Change subject: IMPALA-14859: Fix crashes in parquet-column-chunk-reader.cc ...................................................................... Patch Set 3: (1 comment) http://gerrit.cloudera.org:8080/#/c/24140/3/be/src/exec/parquet/parquet-column-chunk-reader.cc File be/src/exec/parquet/parquet-column-chunk-reader.cc: http://gerrit.cloudera.org:8080/#/c/24140/3/be/src/exec/parquet/parquet-column-chunk-reader.cc@190 PS3, Line 190: return parent_->dictionary_pool_->mem_tracker()->MemLimitExceeded( : parent_->state_, details, buffer_size); I think it would be cleaner to move the error handling closer to where the error happens: if (copy_buffer) { // Allocate a buffer from dict_page_pool_. After decoding, if all strings // are smallified, this will be freed. Otherwise, it will be acquired by // the last row batch. dict_page_pool_.reset(new MemPool(parent_->scan_node_->mem_tracker())); *dict_values = dict_page_pool_->TryAllocate(buffer_size); // case 1. if (*dict_values == nullptr) { return dict_page_pool_->mem_tracker()->MemLimitExceeded( parent_->state_, details, buffer_size); } } else { if (uncompressed_buffer->TryAllocate(buffer_size)) { *dict_values = uncompressed_buffer->buffer(); // case 2 } else { return uncompressed_buffer->mem_tracker()->MemLimitExceeded( parent_->state_, details, buffer_size); } } DCHECK(*dict_values != nullptr)); -- To view, visit http://gerrit.cloudera.org:8080/24140 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I7e6b4e17c627baf97dee04cdfb9c63cdc0dad3b5 Gerrit-Change-Number: 24140 Gerrit-PatchSet: 3 Gerrit-Owner: Balazs Hevele <[email protected]> Gerrit-Reviewer: Impala Public Jenkins <[email protected]> Gerrit-Reviewer: Yida Wu <[email protected]> Gerrit-Reviewer: Zoltan Borok-Nagy <[email protected]> Gerrit-Comment-Date: Thu, 26 Mar 2026 14:35:19 +0000 Gerrit-HasComments: Yes
