Skip to content

UDFs do not seem to propagate Watermarks #328

@niall-nai

Description

@niall-nai

Describe the bug
UDFs created with this library do not seem to pass on watermarks to subsequent stages in the pipeline; this effectively makes Reduce components impossible to implement in anything but a simple pipeline

e.g: _event_time=datetime.datetime(2026, 3, 5, 17, 6, 34, 563000), _watermark=datetime.datetime(1969, 12, 31, 23, 59, 59, 999000), _headers={})

To Reproduce
Steps to reproduce the behavior:

  1. Create a simple pipeline which has a source, map udf, reduce udf, and a sink
  2. Log datums coming into the reduce UDF
  3. Check the numaflow UI
  4. Notice watermarks are set between source and map UDF
  5. Notice watermarks are not set between map UDF and reduce UDF
  6. Notice logged datums coming into reduce UDF have a set _event_time but _watermark is effectively set to -1

Expected behavior
Watermarks are propagated through UDFs

Screenshots
If applicable, add screenshots to help explain your problem.

Image Image

Environment (please complete the following information):

  • Kubernetes: v1.32.2
  • Numaflow: v1.4.2 (also v1.7.3)
  • Numaflow-python: 0.10.1 (also 0.12.1)

Message from the maintainers:

Impacted by this bug? Give it a 👍. We often sort issues this way to know what to prioritize.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions