Uploaded image for project: 'Apache S4'
  1. Apache S4
  2. S4-131

checkpoint error "CancellationException"

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 0.6
    • 0.7
    • None

    Description

      Then I get this error:
      14:21:50.251 [Checkpointing-storage-0] WARN org.apache.s4.core.ft.SaveStateTask - Cannot save checkpoint : [PROTO_ID];[KEY] --> [example.WordSumPE];[word]
      java.util.concurrent.ExecutionException: com.esotericsoftware.kryo.KryoException: java.util.ConcurrentModificationException
      Serialization trace:
      classes (sun.misc.Launcher$AppClassLoader)
      contextClassLoader (java.lang.Thread)
      thread (java.util.concurrent.ThreadPoolExecutor$Worker)
      workers (java.util.concurrent.ThreadPoolExecutor)
      fetchingThreadPool (org.apache.s4.core.ft.SafeKeeper)
      checkpointingFramework (example.wordcountApp)
      app (org.apache.s4.core.Stream)
      downStream (example.WordSumPE)
      at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:232) ~[na:1.6.0_22]
      at java.util.concurrent.FutureTask.get(FutureTask.java:91) ~[na:1.6.0_22]
      at org.apache.s4.core.ft.SaveStateTask.run(SaveStateTask.java:66) ~[bin/:na]
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [na:1.6.0_22]
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [na:1.6.0_22]
      at java.lang.Thread.run(Thread.java:662) [na:1.6.0_22]
      Caused by: com.esotericsoftware.kryo.KryoException: java.util.ConcurrentModificationException
      Serialization trace:
      classes (sun.misc.Launcher$AppClassLoader)
      contextClassLoader (java.lang.Thread)
      thread (java.util.concurrent.ThreadPoolExecutor$Worker)
      workers (java.util.concurrent.ThreadPoolExecutor)
      fetchingThreadPool (org.apache.s4.core.ft.SafeKeeper)
      checkpointingFramework (example.wordcountApp)
      app (org.apache.s4.core.Stream)
      downStream (example.WordSumPE)
      at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:585) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:504) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:504) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.Kryo.writeObjectOrNull(Kryo.java:552) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.CollectionSerializer.write(CollectionSerializer.java:68) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.CollectionSerializer.write(CollectionSerializer.java:18) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:504) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:504) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:504) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:504) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:504) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:213) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.Kryo.writeClassAndObject(Kryo.java:571) ~[kryo-2.20.jar:na]
      at org.apache.s4.comm.serialize.KryoSerDeser.serialize(KryoSerDeser.java:91) ~[bin/:na]
      at org.apache.s4.core.ProcessingElement.serializeState(ProcessingElement.java:802) ~[bin/:na]
      at org.apache.s4.core.ft.SerializeTask.call(SerializeTask.java:42) ~[bin/:na]
      at org.apache.s4.core.ft.SerializeTask.call(SerializeTask.java:1) ~[bin/:na]
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) ~[na:1.6.0_22]
      at java.util.concurrent.FutureTask.run(FutureTask.java:138) ~[na:1.6.0_22]
      ... 3 common frames omitted
      Caused by: java.util.ConcurrentModificationException: null
      at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372) ~[na:1.6.0_22]
      at java.util.AbstractList$Itr.next(AbstractList.java:343) ~[na:1.6.0_22]
      at com.esotericsoftware.kryo.serializers.CollectionSerializer.write(CollectionSerializer.java:74) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.CollectionSerializer.write(CollectionSerializer.java:18) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:504) ~[kryo-2.20.jar:na]
      at com.esotericsoftware.kryo.serializers.FieldSerializer$ObjectField.write(FieldSerializer.java:564) ~[kryo-2.20.jar:na]
      ... 35 common frames omitted

      I debug the program and at the position : SaveStateTask.run "futureSerializedState.get(1000, TimeUnit.MILLISECONDS)." The futureTask get "CancellationException" displayed above error.

      Attachments

        Activity

          People

            Unassigned Unassigned
            yangdingyu Dingyu Yang
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: