suxiaogang223 opened a new pull request, #65868:
URL: https://github.com/apache/doris/pull/65868
### What problem does this PR solve?
Backport of #65381 to `branch-4.1`.
Doris 4.1 can read Paimon external tables but does not have a write path.
This PR adds `INSERT INTO` and `INSERT OVERWRITE` through a JNI bridge to the
Paimon Java SDK, including planner and transaction integration, type
conversion, partitioned writes, commit and abort handling, outcome
reconciliation, and Doris-managed spill paths.
The backport keeps the branch-4.1 architecture:
- Retains the JDBC-specific sink paths instead of bringing the newer generic
connector-sink framework into 4.1.
- Retains the branch-4.1 `FileSystemProvider` transaction API.
- Adapts Paimon logical and physical sink copies to the Nereids plan
interfaces available in 4.1.
The source PR was squash-pushed as one commit before this backport. This
branch also contains one backport commit.
### Release note
Add Paimon external table write support through JNI.
### Check List (For Author)
- Test: Unit Test
- `./build.sh --fe --be-java-extensions`
- `./run-fe-ut.sh --run
org.apache.doris.datasource.paimon.PaimonTransactionTest,org.apache.doris.paimon.PaimonJniWriterTest,org.apache.doris.nereids.parser.ParseInsertPartitionSpecTest`
- `JAVA_TOOL_OPTIONS="--add-opens=java.base/java.nio=ALL-UNNAMED"
./run-fe-ut.sh --run org.apache.doris.paimon.PaimonJniWriterTest`
- Behavior changed: Yes, Paimon external tables support `INSERT INTO` and
`INSERT OVERWRITE`.
- Does this need documentation: No
BE compilation and regression tests were not rerun for this backport.
--
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]