Hello,

I am using beam java sdk 2.19.0 (with enableStreamingEngine set as true)
and very heavily use stateful beam processing model.
However, sometimes I am seeing the following exception while reading value
from state for a key (Please note : here my key is a POJO where fields
create a kind of composite key. Also I am using AvroCoder for this key):

Caused by: java.util.concurrent.ExecutionException:
org.apache.beam.runners.dataflow.worker.KeyTokenInvalidException: Unable to
fetch data due to token mismatch for key
0ggadot_static@prosimo.ioHaa552bec-25f2-11ea-8705-267acc424a25H9219bdd5-335f-11ea-bd4f-de07a30b09ca
@ OC-AU sydney

   1.
      1. at
      org.apache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent.
      AbstractFuture.getDoneValue (AbstractFuture.java:531
      
<https://console.cloud.google.com/debug/fromlog?appModule=Dataflow%20Jobs&appVersion=2020-07-02_10_32_35-16490648164981155775&file=org%2Fapache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent%2FAbstractFuture.java&line=531&project=prosimo>
      )
      2. at
      org.apache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent.
      AbstractFuture.get (AbstractFuture.java:492
      
<https://console.cloud.google.com/debug/fromlog?appModule=Dataflow%20Jobs&appVersion=2020-07-02_10_32_35-16490648164981155775&file=org%2Fapache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent%2FAbstractFuture.java&line=492&project=prosimo>
      )
      3. at
      org.apache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent.
      AbstractFuture$TrustedFuture.get (AbstractFuture.java:83
      
<https://console.cloud.google.com/debug/fromlog?appModule=Dataflow%20Jobs&appVersion=2020-07-02_10_32_35-16490648164981155775&file=org%2Fapache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent%2FAbstractFuture.java&line=83&project=prosimo>
      )
      4. at
      org.apache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent.
      ForwardingFuture.get (ForwardingFuture.java:62
      
<https://console.cloud.google.com/debug/fromlog?appModule=Dataflow%20Jobs&appVersion=2020-07-02_10_32_35-16490648164981155775&file=org%2Fapache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent%2FForwardingFuture.java&line=62&project=prosimo>
      )
      5. atorg.apache.beam.runners.dataflow.worker.
      WindmillStateReader$WrappedFuture.get (WindmillStateReader.java:316
      
<https://console.cloud.google.com/debug/fromlog?appModule=Dataflow%20Jobs&appVersion=2020-07-02_10_32_35-16490648164981155775&file=org%2Fapache.beam.runners.dataflow.worker%2FWindmillStateReader.java&line=316&project=prosimo>
      )
      6. atorg.apache.beam.runners.dataflow.worker.
      WindmillStateInternals$WindmillValue.read (
      WindmillStateInternals.java:385
      
<https://console.cloud.google.com/debug/fromlog?appModule=Dataflow%20Jobs&appVersion=2020-07-02_10_32_35-16490648164981155775&file=org%2Fapache.beam.runners.dataflow.worker%2FWindmillStateInternals.java&line=385&project=prosimo>
      )

Caused by: org.apache.beam.runners.dataflow.worker.KeyTokenInvalidException:
Unable to fetch data due to token mismatch for key <key>

   1.
      1. atorg.apache.beam.runners.dataflow.worker.
      WindmillStateReader.consumeResponse (WindmillStateReader.java:482
      
<https://console.cloud.google.com/debug/fromlog?appModule=Dataflow%20Jobs&appVersion=2020-07-02_10_32_35-16490648164981155775&file=org%2Fapache.beam.runners.dataflow.worker%2FWindmillStateReader.java&line=482&project=prosimo>
      )
      2. atorg.apache.beam.runners.dataflow.worker.
      WindmillStateReader.startBatchAndBlock (WindmillStateReader.java:420
      
<https://console.cloud.google.com/debug/fromlog?appModule=Dataflow%20Jobs&appVersion=2020-07-02_10_32_35-16490648164981155775&file=org%2Fapache.beam.runners.dataflow.worker%2FWindmillStateReader.java&line=420&project=prosimo>
      )
      3. atorg.apache.beam.runners.dataflow.worker.
      WindmillStateReader$WrappedFuture.get (WindmillStateReader.java:313
      
<https://console.cloud.google.com/debug/fromlog?appModule=Dataflow%20Jobs&appVersion=2020-07-02_10_32_35-16490648164981155775&file=org%2Fapache.beam.runners.dataflow.worker%2FWindmillStateReader.java&line=313&project=prosimo>
      )


Any help to fix this issue would be greatly appreciated.

Thanks and Regards
Mohil

Reply via email to