github-actions[bot] commented on code in PR #69300:
URL: https://github.com/apache/doris/pull/69300#discussion_r4317030285


##########
be/src/format_v2/table/hudi_reader.cpp:
##########
@@ -219,6 +219,7 @@ Status 
HudiHybridReader::_init_child_reader(format::TableReader* reader,
             .io_ctx = _io_ctx,
             .runtime_state = _runtime_state,
             .scanner_profile = _scanner_profile,
+            .parquet_profile_cache = _parquet_profile_cache,

Review Comment:
   [P2] Forward the cache through the custom Parquet factories
   
   Native Hudi base-file scans use `HudiReader::create_file_reader()`, which 
overrides the updated generic factory and constructs `ParquetReader` at lines 
75-78 without the new cache argument. Thus the handle forwarded here is unused: 
every Hudi Parquet file still runs the full `ParquetProfile::init()` 
registration sequence against the shared scanner profile lock. 
`IcebergTableReader::_create_delete_file_reader()` has the same omission for 
Parquet position/equality delete files on that profile. These paths retain the 
repeated registration that this change aims to remove. Pass 
`_parquet_profile_cache` through both custom constructors and cover the actual 
table-reader paths in the reuse tests.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to