Skip to content


GroupStateTimeout represents an aggregation state timeout that defines when a GroupState can be considered timed-out (expired) in Arbitrary Stateful Streaming Aggregation.

GroupStateTimeout is used with the following KeyValueGroupedDataset operations:

  • mapGroupsWithState
  • flatMapGroupsWithState

[[extensions]] .GroupStateTimeouts [cols="30m,70",options="header",width="100%"] |=== | GroupStateTimeout | Description

| EventTimeTimeout | [[EventTimeTimeout]] Timeout based on event time

Used when...FIXME

| NoTimeout | [[NoTimeout]] No timeout

Used when...FIXME

| ProcessingTimeTimeout a| [[ProcessingTimeTimeout]] Timeout based on processing time

FlatMapGroupsWithStateExec physical operator requires that batchTimestampMs is specified when ProcessingTimeTimeout is used.

batchTimestampMs is defined when IncrementalExecution is created (with the state). IncrementalExecution is given OffsetSeqMetadata when StreamExecution is requested to run a streaming batch.