DanielLeens opened a new pull request, #13029: URL: https://github.com/apache/seatunnel/pull/13029
### Purpose of this pull request Yes, I am contributing this test-fixture fix to Apache SeaTunnel. Prevent an Amazon SQS E2E fixture startup race that fails unrelated changes. The October 27 [JDK 17 Amazon SQS job](https://github.com/apache/seatunnel/actions/runs/40547910335/job/122376671688), on `403efeee0b3806c77e55c38368abdd41fbf828bd` (#12318, SQL numeric comparisons), failed in `AmazonsqsIT` setup before executing the connector: ```text sh: 1: /testcontainers_start.sh: Text file busy Wait strategy failed. Container exited with code 126 ``` The test uses Testcontainers 1.21.4. Its LocalStack entrypoint waits only for the injected script to exist, which does not establish that copying has finished. See the [versioned startup implementation](https://github.com/testcontainers/testcontainers-java/blob/1.21.4/modules/localstack/src/main/java/org/testcontainers/containers/localstack/LocalStackContainer.java#L113-L119). SeaTunnel adopted this path in #11201 (`60446da971`), which changed the module's LocalStack dependency from 1.19.0 to the shared 1.21.4; the previous implementation did not inject this script. In this fixture, publish a separate marker only after the superclass startup callback finishes copying the original script. The entrypoint waits for that marker before executing the original script. This preserves Testcontainers' initialization and cleanup labels and removes the copy/execute overlap without adding retries or increasing timeouts. The existing LocalStack readiness check remains responsible for service readiness. ### Does this PR introduce any user-facing change? No. Only the Amazon SQS test fixture changes. Production code, dependencies, connector registrations, job configuration, engine coverage and all existing assertions remain unchanged. ### How was this patch tested? - Source-reviewed the Testcontainers 1.21.4 callback, command-modifier and synchronous archive-copy ordering, including startup-failure cleanup. An independent automated reviewer checked the proposed ordering and scope. - Passed scoped `spotless:apply` and `spotless:check` with JDK 17, using `./mvnw -f seatunnel-e2e/seatunnel-connector-v2-e2e/connector-amazonsqs-e2e/pom.xml -nsu -Dmaven.gitcommitid.skip=true` followed by the corresponding Spotless goal. `git diff --check` also passed. - No local compilation, tests, Docker, services or UI were run. No existing build artifacts were reused. Exact-head GitHub CI must run the existing `amazonSqs-connector-it` JDK 11/17 jobs; runtime validation is pending. - The unchanged `testAmazonSqs` still requires successful job execution, exactly one sink message and an exact payload match. This patch changes fixture startup, not test expectations. ### Check list - [x] No production code, POM, dependency, configuration compatibility or connector registration changes. - [x] No tests disabled, assertions removed, or timeout/retry budgets increased. - [x] No new user-facing documentation or incompatible-change entry is needed. -- 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]
