Gabriel39 opened a new pull request, #65332:
URL: https://github.com/apache/doris/pull/65332
### What problem does this PR solve?
Issue Number: None
Related PR: None
Problem Summary: Paimon JNI scans created TableRead without an IOManager, so
primary-key merge reads could not use Paimon spill-capable merge path. This
adds an opt-in catalog property path for the JNI scanner to create and pass a
Paimon IOManager, uses the Doris BE temporary directory as the default
IOManager parent when the option is enabled, and closes the IOManager on
normal, error, and scanner close paths. The default behavior remains unchanged
unless paimon.doris.enable_jni_io_manager is set to true.
### Release note
Support optional IOManager for Paimon JNI reads.
### Check List (For Author)
- Test: Unit Test
- Passed: ssh [email protected] cd
/mnt/disk3/gabriel/Workspace/dev2/doris/fe && mvn test -pl
be-java-extensions/paimon-scanner -Dtest=PaimonJniScannerTest
- Attempted: ssh [email protected] cd
/mnt/disk3/gabriel/Workspace/dev2/doris && ./run-fe-ut.sh --run
org.apache.doris.datasource.paimon.source.PaimonScanNodeTest#testGetBackendPaimonOptionsForJniIOManager+testGetBackendPaimonOptionsForJdbcCatalog
(blocked before tests by an existing generated FunctionSet compile failure in
the remote worktree)
- Behavior changed: Yes. When paimon.doris.enable_jni_io_manager is true,
JNI Paimon reads pass an IOManager to Paimon TableRead; otherwise behavior is
unchanged.
- Does this need documentation: No
--
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]