spuru9 opened a new pull request, #28962: URL: https://github.com/apache/flink/pull/28962
**Draft — opened to observe the before/after in CI. Do not review yet.** No JIRA filed; the title carries a placeholder id. ## What is the purpose of the change `TimestampDataSerializerTest` declares its four precision variants as `static` nested classes of an `abstract` outer class. Neither selection path reaches them: - Surefire scans compiled class files and excludes `**/*$*`. That is a surefire default, and the root `pom.xml` also sets it explicitly on the `integration-tests` execution. - JUnit Jupiter only auto-discovers `@Nested` (non-static inner) classes. So the variants have never been selected, and there is no artifact of it — no `Running` line, no report file, no skip count, no warning. On green master build [31416084933](https://github.com/apache/flink/actions/runs/31416084933) the strings `TimestampSerializer0Test`, `TimestampDataSerializerTest`, etc. appear **zero** times across all 13 jobs. Same in 5 further green builds and in the `release-2.3` nightly. ## Brief change log - Turn `TimestampDataSerializerTest` into a plain container class holding an `abstract static` base plus four `@Nested` variants — the layout `MaxWithRetractAggFunctionTest` already uses. - No test logic changes: same serializer, same precisions, same expected lengths. ## Verifying this change The change is itself the test recovery. Locally, `mvn verify -pl flink-table/flink-table-type-utils`: | | tests | |---|---| | before | 151 | | after | **219** | 68 recovered (4 variants x 17 inherited from `SerializerTestBase`), all passing. The four `…TimestampDataSerializerTest$TimestampSerializer{0,3,6,8}Test` entries now appear in surefire output. The container itself reports `Tests run: 0`, matching existing `@Nested` users such as `GenericInMemoryCatalogTest`. To confirm in this PR's CI, look at **Test (module: misc)** — `flink-table-type-utils` is not listed in `MODULES_TABLE`, so `MODULES_MISC`'s negation picks it up — and search the log for `TimestampSerializer`. ## Does this pull request potentially affect one of the following parts: - Dependencies (does it add or upgrade a dependency): **no** - The public API, i.e., is any changed class annotated with `@Public(Evolving)`: **no** - The serializers: **no** (test-only; it restores coverage of `TimestampDataSerializer`) - The runtime per-record code paths (performance sensitive): **no** - Anything that affects deployment or recovery: **no** - The S3 file system connector: **no** ## Documentation - Does this pull request introduce a new feature? **no** ## AI assistance - [x] This contribution was created with the assistance of an AI tool: Claude Code -- 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]
