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

   ### Purpose of this pull request
   
   Fix shared engine and connector regressions exercised by CI. These changes 
were previously included in #12298 and #12299 and are extracted here so that 
the two REST feature PRs remain focused.
   
   - Complete engine task cancellation when a worker leaves or startup/recovery 
fails, including late terminal-state completion. Regression tests cover lost 
members, startup failure, and state cleanup.
   - Preserve PostgreSQL CDC rows at a restored transaction boundary, where a 
commit and the next row can share an LSN. Backport the relevant WAL-position 
handling against the existing Debezium version, with offset and 
savepoint-recovery coverage.
   - Stabilize existing backpressure, checkpoint-failover, split-cluster, 
FilterRowKind, and PayPal fixtures. Retain the previously introduced runtime 
allowances for the transform and JDBC integration jobs.
   
   This includes production fixes exposed by CI, test fixtures, paired 
English/Chinese documentation, and two existing workflow timeout adjustments. 
It does not add a dependency-version upgrade. The CDC schema-disabled behavior 
fix is already on `dev` and is excluded.
   
   ### Does this PR introduce _any_ user-facing change?
   
   Yes. Jobs can finish cancellation after worker loss and return failure after 
exhausting startup/recovery retries. PostgreSQL CDC recovery preserves rows at 
transaction boundaries; older savepoints remain readable and ambiguous 
boundaries may replay a row to avoid data loss. These behaviors are documented 
in English and Chinese.
   
   ### How was this patch tested?
   
   Locally on OpenJDK 11, on commit `a15bdf90c269`:
   
   - `./mvnw spotless:apply` — passed; working tree clean.
   - `./mvnw -q -DskipTests verify` — passed for the full reactor.
   - Engine regression classes: `CoordinatorServiceLostMemberResolutionTest`, 
`TaskExecutionServiceTest`, and `StateTransitionCleanupTest` — 32 cases passed.
   - Connector regression classes: `LsnOffsetTest` and `PayPalClientTest` — 32 
cases passed. The initial combined reactor hit a JUnit launcher startup error 
at PostgreSQL; rerunning the connector modules separately completed 
successfully. No test assertions failed or were skipped.
   
   The full build used an existing local dependency cache after an initial 
download-bound attempt was stopped. The selected regression classes executed 
all 64 cases, including parameterized/repeated cases.
   
   ```bash
   ./mvnw -Pci -pl :seatunnel-engine-server -am \
     -DskipUT=false -DskipIT=true \
     
'-Dtest=CoordinatorServiceLostMemberResolutionTest,TaskExecutionServiceTest,StateTransitionCleanupTest'
 \
     -DfailIfNoTests=false -Dsurefire.failIfNoSpecifiedTests=false \
     -Dskip.ui=true -Dlicense.skipAddThirdParty=true verify
   
   ./mvnw -Pci -pl :connector-cdc-postgres,:connector-http-paypal -am \
     -DskipUT=false -DskipIT=true '-Dtest=LsnOffsetTest,PayPalClientTest' \
     -DfailIfNoTests=false -Dsurefire.failIfNoSpecifiedTests=false \
     -Dskip.ui=true -Dlicense.skipAddThirdParty=true verify
   ```
   
   The extracted changes were also checked structurally: combining this branch 
with either cleaned REST feature branch produces exactly the same source tree 
as merging that original PR head with the current `dev` base.
   
   ### Check list
   
   - [x] No new dependencies or binary packages.
   - [x] English and Chinese behavior documentation updated.
   - [x] Existing test assertions retained; no new test exclusions.
   - [x] Regression coverage included for engine cancellation/startup and 
PostgreSQL recovery.
   


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