I'm wondering whether the accumulator value maintained by a FoldFunction is automatically checkpointed?
In general, but specifically when using the WindowedStream.apply variant that takes a FoldFunction: public <R> DataStream<R> apply(R initialValue, FoldFunction<T,R> foldFunction, WindowFunction<R,R,K,W> function, TypeInformation<R> evidence$7) If not, then Flink 1.0.1 still has the issue that you can't pass a RichFoldFunction to WindowedStream.apply (java.lang.UnsupportedOperationException: ReduceFunction of apply can not be a RichFunction). But also, if not, it seems like this would be a common pattern when doing complex (keyed / multi-valued) aggregations, and if the accumulator type R is serializable, there could be a convenience method for a checkpointed fold, like the mapWithState mentioned in the State section of the streaming guide. Thanks, Mike