fatmanverse commented on PR #12922: URL: https://github.com/apache/seatunnel/pull/12922#issuecomment-6309090856
Thanks @DanielLeens for the review. All three points are addressed in c7a0742: 1. **Compatibility note (Issue 1):** added a "Zeta REST API: `/submit-jobs` uses `params` values as given" entry to `incompatible-changes.md` (en/zh). Old behavior: values were joined into an un-encoded query string and URL-decoded. New behavior: values are used verbatim. Migration: drop any client-side percent-encoding (`sales%26ops` is now taken literally). The entry also notes that `null` values are skipped, that a non-object `params` returns 400, and that numbers and empty strings are accepted, and that `/submit-job` still URL-decodes its query string. The Batch Submit Jobs section of `rest-api-v2.md` now says that `params` may be omitted and that its values are not URL-decoded. I added the same sentence to `rest-api-v1.md`, because `/hazelcast/rest/maps/submit-jobs` goes through the same `submitJobs` path. 2. **Service-level test (Issue 2):** new `JobInfoServiceSubmitJobsTest` drives `JobInfoService#submitJobs` with `submitJobInternal` stubbed out. It covers an entry without `params` next to one with `"jobName": "sales&ops%20daily"`, which reproduces the NPE and the mangled name when the fix is reverted. It also covers a savepoint request without `jobId`, and a non-object `params` that is rejected before anything is submitted. 3. **String overload Javadoc (Issue 3):** `buildRequestParams(Map, String)` now says that it parses the v1 `submit-job` query string and URL-decodes it, unlike the `params` values read by `buildRequestParams(Map, Map)`. Verified on JDK 17: `JobInfoServiceSubmitJobsTest` (3), `RestUtilSubmitJobsParamsTest` (6), and `RestApiSubmitJobStartWithSavePointTest` (7) all pass, and spotless is clean. The current red `Build` is from `dev`, not from this change. `unit-test` fails in `LLMBooleanOutputTest.readsLegacyFactoryWrapperWithValidationDisabled` (#12929), and the failing IT lanes all stop at `PreconditionViolationException: None of the supporting TestTemplateInvocationContextProviders ...` before any test body runs. I will re-run the failed jobs once `dev` is fixed. -- 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]
