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

apkhmv pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
     new 49fce1521c2 IGNITE-28390 Better fix for compute job spotbugs (#7893)
49fce1521c2 is described below

commit 49fce1521c272492230f956815e42625cdb822ab
Author: Vadim Pakhnushev <[email protected]>
AuthorDate: Thu Apr 2 19:33:03 2026 +0300

    IGNITE-28390 Better fix for compute job spotbugs (#7893)
---
 modules/compute/jobs.gradle                            |  1 -
 .../ignite/internal/compute/ItComputeBaseTest.java     |  4 ++--
 .../jobs/embedded/ObservableTimestampResult.java       | 12 ++++++++++--
 .../jobs/standalone/ObservableTimestampResult.java     | 18 ++++++++++--------
 4 files changed, 22 insertions(+), 13 deletions(-)

diff --git a/modules/compute/jobs.gradle b/modules/compute/jobs.gradle
index cd519b0e280..50e758e70b8 100644
--- a/modules/compute/jobs.gradle
+++ b/modules/compute/jobs.gradle
@@ -53,7 +53,6 @@ dependencies {
     jobsImplementation project(':ignite-transactions')
     jobsImplementation project(':ignite-runner')
     jobsImplementation testFixtures(project(':ignite-runner'))
-    jobsCompileOnly libs.spotbugs.annotations
     unit1Implementation project(':ignite-api')
     unit2Implementation project(':ignite-api')
 }
diff --git 
a/modules/compute/src/integrationTest/java/org/apache/ignite/internal/compute/ItComputeBaseTest.java
 
b/modules/compute/src/integrationTest/java/org/apache/ignite/internal/compute/ItComputeBaseTest.java
index 6b64fe363dc..a554ea93c7a 100644
--- 
a/modules/compute/src/integrationTest/java/org/apache/ignite/internal/compute/ItComputeBaseTest.java
+++ 
b/modules/compute/src/integrationTest/java/org/apache/ignite/internal/compute/ItComputeBaseTest.java
@@ -930,11 +930,11 @@ public abstract class ItComputeBaseTest extends 
ClusterPerClassIntegrationTest {
         ObservableTimestampResult jobRes = execution.resultAsync().join();
 
         // The per-job tracker should have the client's observable timestamp.
-        HybridTimestamp jobObservableTs = 
HybridTimestamp.nullableHybridTimestamp(jobRes.perJobTimestamp);
+        HybridTimestamp jobObservableTs = 
HybridTimestamp.nullableHybridTimestamp(jobRes.perJobTimestamp());
         assertThat(jobObservableTs, is(localObservableTs));
 
         // The node's global tracker should NOT be updated by the compute job.
-        HybridTimestamp targetNodeTsAfter = 
HybridTimestamp.nullableHybridTimestamp(jobRes.nodeGlobalTimestamp);
+        HybridTimestamp targetNodeTsAfter = 
HybridTimestamp.nullableHybridTimestamp(jobRes.nodeGlobalTimestamp());
         assertThat(targetNodeTsAfter, is(targetNodeTsBefore));
         assertThat(targetNodeTsAfter, not(jobObservableTs));
     }
diff --git 
a/modules/compute/src/integrationTest/java/org/example/jobs/embedded/ObservableTimestampResult.java
 
b/modules/compute/src/integrationTest/java/org/example/jobs/embedded/ObservableTimestampResult.java
index 73e1df6299b..14c9219ed69 100644
--- 
a/modules/compute/src/integrationTest/java/org/example/jobs/embedded/ObservableTimestampResult.java
+++ 
b/modules/compute/src/integrationTest/java/org/example/jobs/embedded/ObservableTimestampResult.java
@@ -21,8 +21,8 @@ package org.example.jobs.embedded;
  * Result of {@link ObservableTimestampJob} containing both per-job and node 
global observable timestamps.
  */
 public class ObservableTimestampResult {
-    public long perJobTimestamp;
-    public long nodeGlobalTimestamp;
+    private long perJobTimestamp;
+    private long nodeGlobalTimestamp;
 
     public ObservableTimestampResult() {
     }
@@ -31,4 +31,12 @@ public class ObservableTimestampResult {
         this.perJobTimestamp = perJobTimestamp;
         this.nodeGlobalTimestamp = nodeGlobalTimestamp;
     }
+
+    public long perJobTimestamp() {
+        return perJobTimestamp;
+    }
+
+    public long nodeGlobalTimestamp() {
+        return nodeGlobalTimestamp;
+    }
 }
diff --git 
a/modules/compute/src/jobs/java/org/example/jobs/standalone/ObservableTimestampResult.java
 
b/modules/compute/src/jobs/java/org/example/jobs/standalone/ObservableTimestampResult.java
index b5ba3b3df35..a507a6bb2d6 100644
--- 
a/modules/compute/src/jobs/java/org/example/jobs/standalone/ObservableTimestampResult.java
+++ 
b/modules/compute/src/jobs/java/org/example/jobs/standalone/ObservableTimestampResult.java
@@ -17,18 +17,12 @@
 
 package org.example.jobs.standalone;
 
-import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
-
 /**
  * Result of {@link ObservableTimestampJob} containing both per-job and node 
global observable timestamps.
  */
-@SuppressFBWarnings(
-        value = "URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD",
-        justification = "Fields are read in integration tests via deserialized 
object"
-)
 public class ObservableTimestampResult {
-    public long perJobTimestamp;
-    public long nodeGlobalTimestamp;
+    private long perJobTimestamp;
+    private long nodeGlobalTimestamp;
 
     public ObservableTimestampResult() {
     }
@@ -37,4 +31,12 @@ public class ObservableTimestampResult {
         this.perJobTimestamp = perJobTimestamp;
         this.nodeGlobalTimestamp = nodeGlobalTimestamp;
     }
+
+    public long perJobTimestamp() {
+        return perJobTimestamp;
+    }
+
+    public long nodeGlobalTimestamp() {
+        return nodeGlobalTimestamp;
+    }
 }

Reply via email to