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

   ## What changed
   
   - added a generic `CloseTableEvent` and `SupportCloseTableSinkWriter` hook 
in `seatunnel-api`
   - added engine-side source-reader reverse event delivery so enumerators can 
notify readers about table-level completion
   - propagated close-table events through source -> transform -> sink 
lifecycles
   - taught `MultiTableSinkWriter` to close a table only after all expected 
upstream close-table signals arrive
   - added a bounded JDBC source implementation that reports split completion, 
aggregates per-table completion in the enumerator, and emits close-table 
progress safely to downstream
   - preserved close-table event metadata in `TableRenameTransform`
   
   ## Why
   
   Bounded multi-table jobs currently keep per-table sink resources alive until 
the whole task closes because there is no table-complete control event in the 
open-source pipeline.
   
   The tricky part is parallelism: a single "table finished" event is not safe 
when multiple upstream readers can still have in-flight rows for the same 
table. This PR fixes that by carrying upstream-reader progress in the 
close-table event and only closing a table after all participating readers have 
reported completion.
   
   Closes #10873
   
   ## Validation
   
   - `./mvnw spotless:apply`
   - `./mvnw -pl seatunnel-api -Dtest=MultiTableSinkWriterTest test`
   - `./mvnw -pl seatunnel-connectors-v2/connector-jdbc 
-Dtest=JdbcSourceReaderTest,JdbcSourceSplitEnumeratorTest test`
   - `./mvnw -pl seatunnel-transforms-v2 -Dtest=TableRenameTransformTest test`
   - `./mvnw -pl seatunnel-engine/seatunnel-engine-server -DskipTests compile`
   
   ## Notes
   
   - `./mvnw -pl seatunnel-engine/seatunnel-engine-server -am -DskipTests 
compile` still fails in the pre-existing `seatunnel-config-shade` module 
because it cannot resolve shaded `typesafe-config` classes. That failure is 
outside this PR's change set.
   


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