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]