Gabriel39 commented on code in PR #65404:
URL: https://github.com/apache/doris/pull/65404#discussion_r3619104750


##########
be/src/exec/scan/file_scanner.cpp:
##########
@@ -2033,6 +2058,9 @@ Status FileScanner::close(RuntimeState* state) {
     if (_cur_reader) {

Review Comment:
   @-



##########
be/src/exec/scan/file_scanner.cpp:
##########
@@ -2033,6 +2058,9 @@ Status FileScanner::close(RuntimeState* state) {
     if (_cur_reader) {

Review Comment:
   [P1] Please close both retained readers even when one cleanup fails. This PR 
makes `_cur_reader` and `_cached_paimon_jni_reader` coexist when a JNI split is 
followed by a native/CPP split. If closing the current reader fails here, 
`RETURN_IF_ERROR` skips the cached Java reader entirely; moreover, 
`_try_close()` has already set `_is_closed`, so a later close attempt returns 
OK without retrying either resource. The cached Paimon scanner can therefore 
retain its Java scanner, IOManager/temp files, and async-reader threads. Please 
attempt both closes while preserving the first error, and make failed 
retained-reader cleanup retryable (as `FileScannerV2::close()` already does by 
restoring the close state).



-- 
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