hutiefang76 opened a new pull request, #12579:
URL: https://github.com/apache/seatunnel/pull/12579

   ### Purpose of this pull request
   
   Related to #10942. TableMerge rewrites the input table identifier in place. 
When a source feeds two TableMerge branches, the second branch can receive the 
first branch's identifier and fail to resolve the source table. Copy the row 
when changing its identifier, following the existing transform pattern.
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. Sibling transform branches retain the source table identifier. Rows 
already using the target identifier keep the existing pass-through behavior. 
EN/ZH transform docs are updated.
   
   ### How was this patch tested?
   
   JDK 8 and 17: TableMergeTransformTest, 3 tests on each, no 
failures/errors/skips. Covers identifier remapping, null identifier, 
pass-through, RowKind, fields and options. A real Zeta fan-out job with two 
source tables verifies six rows in each branch; the original implementation 
fails with a table-lookup NullPointerException. Local Flink/Spark runs were not 
performed.
   
   Scoped Spotless, reactor `-DskipTests verify`, MarkdownTest (4 tests), and 
`git diff --check` pass on the submitted revision.
   
   ### Check list
   
   * [ ] If any new Jar binary package adding in your PR, please add License 
Notice according
     [New License 
Guide](https://github.com/apache/seatunnel/blob/dev/docs/en/developer/new-license.md)
   * [ ] If necessary, please update the documentation to describe the new 
feature. https://github.com/apache/seatunnel/tree/dev/docs
   * [ ] If necessary, please update `incompatible-changes.md` to describe the 
incompatibility caused by this PR.
   * [ ] If you are contributing the connector code, please check that the 
following files are updated:
     1. Update 
[plugin-mapping.properties](https://github.com/apache/seatunnel/blob/dev/plugin-mapping.properties)
 and add new connector information in it
     2. Update the pom file of 
[seatunnel-dist](https://github.com/apache/seatunnel/blob/dev/seatunnel-dist/pom.xml)
     3. Add ci label in 
[label-scope-conf](https://github.com/apache/seatunnel/blob/dev/.github/workflows/labeler/label-scope-conf.yml)
     4. Add e2e testcase in 
[seatunnel-e2e](https://github.com/apache/seatunnel/tree/dev/seatunnel-e2e/seatunnel-connector-v2-e2e/)
     5. Update connector 
[plugin_config](https://github.com/apache/seatunnel/blob/dev/config/plugin_config)
   


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

Reply via email to