anton-vinogradov opened a new pull request, #13292: URL: https://github.com/apache/ignite/pull/13292
## Description [IGNITE-28831](https://issues.apache.org/jira/browse/IGNITE-28831) `IgniteDataTransferObjectProcessor` throws a `NullPointerException` during annotation processing, which breaks compilation of `modules/core` from source: ``` mvn -o -q -pl modules/core -am test-compile -DskipTests -Dcheckstyle.skip=true ``` ### Root cause `IDTOSerializerGenerator.className(TypeMirror)` stripped everything before the first space to drop a *leading* type-use annotation (e.g. `@NotNull java.util.Collection`). But the compiler renders a type-use annotation (`@Nullable`/`@NotNull`) **inline, right before the simple name** of a qualified type: ``` [email protected] Collection<...> ``` The first-space heuristic discarded the `java.util.` qualifier and returned only `Collection`, which caused: 1. `COLL_IMPL.get("Collection")` → `null` → NPE in `simpleName()` for fields such as `BaselineNode.addrs` (`@NotNull Collection<ResolvedAddresses>`) and `IdleVerifyResult.txHashConflicts` (`@Nullable List<List<TransactionsHashRecord>>`). 2. Malformed `import String;` / `import Exception;` / `import IdleVerifyResult;` in the generated serializers for `DurableBackgroundCleanupIndexTreeTaskV2`, `SnapshotPartitionsVerifyResult`, `VisorTaskResult` (the `'.' expected` compile errors) for `@Nullable`-annotated fields. The subsequent cascade of `cannot find symbol: class *ViewWalker` errors is a side effect: the processor's exception aborts the annotation-processing round, so the separate `SystemViewRowAttributeWalkerProcessor` output never gets compiled. ### Fix Strip type-use annotations wherever they occur (preserving the package qualifier) instead of the first-space heuristic. The change is confined to the codegen module; DTO classes are not touched. ### Verification `mvn -o -q -pl modules/core -am test-compile -DskipTests -Dcheckstyle.skip=true` completes with `BUILD SUCCESS`, and the serializers for `BaselineNode`, `IdleVerifyResult`, `DurableBackgroundCleanupIndexTreeTaskV2`, `SnapshotPartitionsVerifyResult`, `VisorTaskResult` are generated and compile. 🤖 Generated with [Claude Code](https://claude.com/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]
