This is an automated email from the ASF dual-hosted git repository.

anton-vinogradov pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git


The following commit(s) were added to refs/heads/master by this push:
     new b29ddfec5d8 IGNITE-28840 Disable incremental compilation on the 
parallel codestyle build (#13299)
b29ddfec5d8 is described below

commit b29ddfec5d898d93f7d41c59afd2c148fdfa4321
Author: Anton Vinogradov <[email protected]>
AuthorDate: Tue Jun 30 12:47:07 2026 +0300

    IGNITE-28840 Disable incremental compilation on the parallel codestyle 
build (#13299)
    
    ## [IGNITE-28840](https://issues.apache.org/jira/browse/IGNITE-28840)
    
    ### Problem
    
    After [IGNITE-28823](https://github.com/apache/ignite/pull/13281)
    parallelized the codestyle step of `commit-check.yml` with `-T 1C`, the
    *Check java code on JDK 17 / Run codestyle and licenses checks* job
    fails intermittently during `ignite-core` `test-compile`:
    
    ```
    [ERROR] IgniteKernal.java:[176,45] cannot find symbol
      symbol:   class ConfigurationViewWalker
      location: package org.apache.ignite.internal.systemview
    [ERROR] IgniteDataTransferObject.java:[27,47] package 
org.apache.ignite.internal.codegen.idto does not exist
    ```
    
    The missing symbols (`*ViewWalker`, `IDTOSerializerFactory`) are sources
    produced by annotation processors
    (`SystemViewRowAttributeWalkerProcessor`,
    `IgniteDataTransferObjectProcessor`). Most runs pass, a minority fail —
    e.g. [run
    
28431196455](https://github.com/apache/ignite/actions/runs/28431196455/job/84246055611).
    
    ### Root cause
    
    `maven-compiler-plugin` runs with incremental compilation enabled by
    default. Under the parallel reactor (`-T 1C`) it detects a changed
    reactor dependency and performs a *partial* recompile of `ignite-core`:
    the annotation processors run over the stale subset only, so the
    generated Walker/Factory classes are not regenerated, while the files
    referencing them are recompiled — hence `cannot find symbol`.
    Single-threaded the recompile set is consistent, so the issue did not
    surface before IGNITE-28823.
    
    The same incremental-compilation pitfall was already worked around for
    the *abandoned tests* step in IGNITE-28823 via
    `-Dmaven.compiler.useIncrementalCompilation=false`; the codestyle step
    was left on incremental compilation.
    
    ### Change
    
    Add `-Dmaven.compiler.useIncrementalCompilation=false` to the codestyle
    / `test-compile` step, forcing a full compile so annotation processors
    always regenerate all sources. The `-T 1C` speed-up is preserved.
    
    🤖 Generated with [Claude Code](https://claude.com/claude-code)
    
    Co-authored-by: Claude Opus 4.8 <[email protected]>
---
 .github/workflows/commit-check.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.github/workflows/commit-check.yml 
b/.github/workflows/commit-check.yml
index d48bca0dce3..b0689cf8f21 100644
--- a/.github/workflows/commit-check.yml
+++ b/.github/workflows/commit-check.yml
@@ -97,7 +97,7 @@ jobs:
 
       - name: Run codestyle and licenses checks
         run: |
-          ./mvnw test-compile 
-Pall-java,licenses,lgpl,checkstyle,examples,check-licenses -B -V -T 1C
+          ./mvnw test-compile 
-Pall-java,licenses,lgpl,checkstyle,examples,check-licenses -B -V -T 1C 
-Dmaven.compiler.useIncrementalCompilation=false
 
       - name: Run abandoned tests checks.
         # Reuse classes from the previous step; the differing profiles 
otherwise trigger a full reactor recompile.

Reply via email to