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

Abacn pushed a commit to branch release-2.74
in repository https://gitbox.apache.org/repos/asf/beam.git


The following commit(s) were added to refs/heads/release-2.74 by this push:
     new 865955ab6f2 [Release-2.74] Cherry-pick #38695 into release branch 
(#38727)
865955ab6f2 is described below

commit 865955ab6f2731a180d0acd1985c12d5712cbb8f
Author: Yi Hu <[email protected]>
AuthorDate: Thu May 28 11:31:26 2026 -0400

    [Release-2.74] Cherry-pick #38695 into release branch (#38727)
    
    * [Cloud Spanner Change Streams] Fix inverted evaluation of 
cancelQueryOnHeartbeat (#38695)
    
    This meant that low latency mode for heartbeats was enabled by default and 
disabled in low latency mode instead of the desired opposite.
    
    * Update action.yml
    
    upgrade gradle action to enable the CI - 5.0.0 was removed by 
apache/infrastructure-actions@9ef334e
    
    ---------
    
    Co-authored-by: scwhittle <[email protected]>
    Co-authored-by: RadosÅ‚aw Stankiewicz <[email protected]>
---
 .github/actions/setup-environment-action/action.yml                   | 2 +-
 .../io/gcp/spanner/changestreams/action/HeartbeatRecordAction.java    | 2 +-
 .../gcp/spanner/changestreams/action/HeartbeatRecordActionTest.java   | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/.github/actions/setup-environment-action/action.yml 
b/.github/actions/setup-environment-action/action.yml
index aa10257e3f9..fb5f91de455 100644
--- a/.github/actions/setup-environment-action/action.yml
+++ b/.github/actions/setup-environment-action/action.yml
@@ -76,7 +76,7 @@ runs:
         distribution: 'temurin'
         java-version: ${{ inputs.java-version == 'default' && '11' || 
inputs.java-version }}
     - name: Setup Gradle
-      uses: 
gradle/actions/setup-gradle@4d9f0ba0025fe599b4ebab900eb7f3a1d93ef4c2 # v5
+      uses: 
gradle/actions/setup-gradle@0723195856401067f7a2779048b490ace7a47d7c # v5.0.2
       with:
         cache-disabled: ${{ inputs.disable-cache }}
         validate-wrappers: false
diff --git 
a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/changestreams/action/HeartbeatRecordAction.java
 
b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/changestreams/action/HeartbeatRecordAction.java
index 1b66a548b3d..773f54a15d2 100644
--- 
a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/changestreams/action/HeartbeatRecordAction.java
+++ 
b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/spanner/changestreams/action/HeartbeatRecordAction.java
@@ -104,6 +104,6 @@ public class HeartbeatRecordAction {
       return Optional.empty();
     }
     // no new data, finish reading data
-    return cancelQueryOnHeartbeat ? Optional.empty() : 
Optional.of(ProcessContinuation.resume());
+    return cancelQueryOnHeartbeat ? Optional.of(ProcessContinuation.resume()) 
: Optional.empty();
   }
 }
diff --git 
a/sdks/java/io/google-cloud-platform/src/test/java/org/apache/beam/sdk/io/gcp/spanner/changestreams/action/HeartbeatRecordActionTest.java
 
b/sdks/java/io/google-cloud-platform/src/test/java/org/apache/beam/sdk/io/gcp/spanner/changestreams/action/HeartbeatRecordActionTest.java
index adfc4ea35d4..48fd7c30a1a 100644
--- 
a/sdks/java/io/google-cloud-platform/src/test/java/org/apache/beam/sdk/io/gcp/spanner/changestreams/action/HeartbeatRecordActionTest.java
+++ 
b/sdks/java/io/google-cloud-platform/src/test/java/org/apache/beam/sdk/io/gcp/spanner/changestreams/action/HeartbeatRecordActionTest.java
@@ -232,7 +232,7 @@ public class HeartbeatRecordActionTest {
             watermarkEstimator,
             endTimestamp);
 
-    assertEquals(Optional.empty(), maybeContinuation);
+    assertEquals(Optional.of(ProcessContinuation.resume()), maybeContinuation);
     verify(watermarkEstimator).setWatermark(new 
Instant(timestamp.toSqlTimestamp().getTime()));
   }
 
@@ -254,7 +254,7 @@ public class HeartbeatRecordActionTest {
             watermarkEstimator,
             endTimestamp);
 
-    assertEquals(Optional.of(ProcessContinuation.resume()), maybeContinuation);
+    assertEquals(Optional.empty(), maybeContinuation);
     verify(watermarkEstimator).setWatermark(new 
Instant(timestamp.toSqlTimestamp().getTime()));
   }
 }

Reply via email to