Event-time windows without watermark
warningwindowed-aggregation-without-watermark
Event-time windows need a watermark to know when a window is complete. Without one the processor either waits forever or closes windows early and silently drops late events.
- Severity
- warning
- Selects
- every node of kind stream-processor
- Components in scope
- 34
It looks at every node of kind stream-processor, and fires when:
- — all of these hold:
- — the node's `windowing` is "event-time"
- — the node's `watermarkSeconds` has no value
Stream processor '{{node.id}}' windows by event time but declares no watermark. Late data handling is undefined.Reference designs whose broken twin names this rule in its header. The gate reads the same header, and fails when a rule no design trips.
ad-click-aggregationreferenceairbnb-searchreferencedoordash-deliveryreferencegojek-platformreferencegoogle-mapsreferencekhan-academy-goliathreferencelinkedin-kafkareferencelyft-envoyreferencemetrics-monitoringreferencenubank-corereferencepokemon-goreferencespotify-playbackreferencetiktok-recommendationreferencex-recommendationreference
# yaml-language-server: $schema=../schema/rule.schema.json # Event-time windows need a watermark to know when a window is complete. Without one # the processor either waits forever or closes windows early and drops late events. # Tripped by: designs/doordash-delivery.broken.yaml schemaVersion: "1" type: "rule" id: "windowed-aggregation-without-watermark" severity: "warning" select: node: kind: "stream-processor" when: all: - prop: "windowing" equals: "event-time" - prop: "watermarkSeconds" exists: false message: "Stream processor '{{node.id}}' windows by event time but declares no watermark. Late data handling is undefined."