I have a pipeline stream-joining video frames and inference results as follows. The reduce UDF vertex accumulator(stream-join) does that join.
[sourcer(input)] ---------------+
| Original-sized frames | Original-sized frames
v |
[mapstreamer(resize)] |
| Scaled-down frames |
v |
[mapstreamer(inference)] |
| Inference results |
v |
[accumulator(stream-join)] <----+
|
| Messages joined on frame index
v
[sinker(output)]
Running that pipeline, I found that the numa container in the reduce UDF vertex pod got down. Its logs said that Failed to write message to WAL and No space left on device. I also found that memory usage of the numa container increased almost monotonically.
- name: stream-join
partitions: 1
scale:
min: 1
max: 1
udf:
container:
image: 192.168.21.17:30003/dci-community-general/dci-poc:stable
imagePullPolicy: IfNotPresent
env:
- name: SCRIPT
value: reduce
envFrom:
- configMapRef:
name: app-env-cm
volumeMounts:
- mountPath: /var/tmp/logs/numaflow-dra/dci_poc
name: log-volume
groupBy:
window:
accumulator:
timeout: 1s
keyed: false
storage:
persistentVolumeClaim:
storageClassName: local-storage
volumeSize: 3Gi
accessMode: ReadWriteOnce
limits:
readBatchSize: 1
volumes:
- name: log-volume
hostPath:
path: /var/tmp/logs/numaflow-dra/dci_poc
type: DirectoryOrCreate
The numa container continues running.
{"timestamp":"2026-02-25T03:18:06.062212Z","level":"INFO","message":"Rotating WAL segment file","current_size":"10335304","file_name":"\"/var/numaflow/pbq/data_437_1771989485410332.wal\"","target":"numaflow_core::reduce::wal::segment::append"}
{"timestamp":"2026-02-25T03:18:06.063321Z","level":"INFO","message":"rename successful","self.current_file_name":"\"/var/numaflow/pbq/data_437_1771989485410332.wal\"","to_file_name":"\"/var/numaflow/pbq/data_437_1771989485410332.wal.frozen\"","target":"numaflow_core::reduce::wal::segment::append"}
{"timestamp":"2026-02-25T03:18:06.190208Z","level":"INFO","message":"Processed messages per second","processed":"31","target":"numaflow_core::tracker"}
{"timestamp":"2026-02-25T03:18:06.416833Z","level":"ERROR","message":"Failed to write message to WAL","e":"Io(Os { code: 28, kind: StorageFull, message: \"No space left on device\" })","target":"numaflow_core::reduce::wal::segment::append"}
{"timestamp":"2026-02-25T03:18:06.416979Z","level":"INFO","message":"Nak received for offset","params.offset":"Int(IntOffset { offset: 8855, partition_idx: 0 })","target":"numaflow_core::pipeline::isb::reader"}
{"timestamp":"2026-02-25T03:18:06.417037Z","level":"INFO","message":"Nak sent for offset","offset":"Int(IntOffset { offset: 8855, partition_idx: 0 })","target":"numaflow_core::pipeline::isb::reader"}
{"timestamp":"2026-02-25T03:18:06.418078Z","level":"ERROR","message":"/app/numaflow-core/src/reduce/pbq.rs:146:18: Receiver dropped: SendError { .. }","target":"numaflow::setup_tracing"}
{"timestamp":"2026-02-25T03:18:06.418486Z","level":"INFO","message":"Unaligned Reduce component is shutting down, waiting for active reduce tasks to complete","target":"numaflow_core::reduce::reducer::unaligned::reducer"}
{"timestamp":"2026-02-25T03:18:06.418515Z","level":"INFO","message":"Waiting for 1 active reduce tasks to complete","target":"numaflow_core::reduce::reducer::unaligned::reducer"}
{"timestamp":"2026-02-25T03:18:06.418677Z","level":"ERROR","message":"Error while joining PBQ reader and reducer","e":"JoinError::Panic(Id(35), \"Receiver dropped: SendError { .. }\", ...)","target":"numaflow_core::pipeline::forwarder::reduce_forwarder"}
{"timestamp":"2026-02-25T03:18:06.418759Z","level":"INFO","message":"Stopped the Lag-Reader Expose tasks","target":"numaflow_core::metrics"}
{"timestamp":"2026-02-25T03:18:06.418939Z","level":"ERROR","message":"Error running pipeline","e":"Forwarder(\"Error while joining PBQ reader and reducer: task 35 panicked with message \\\"Receiver dropped: SendError { .. }\\\"\")","target":"numaflow_core"}
{"timestamp":"2026-02-25T03:18:06.419441Z","level":"INFO","message":"Gracefully Exiting...","target":"numaflow_core"}
{"timestamp":"2026-02-25T03:18:06.419473Z","level":"INFO","message":"Exited.","target":"numaflow"}
{"timestamp":"2026-02-25T03:18:06.421082Z","level":"ERROR","message":"TrackerState dropped with 1 unacknowledged messages still tracked","total_entries":1,"target":"numaflow_core::tracker"}
Describe the bug
I have a pipeline stream-joining video frames and inference results as follows. The reduce UDF vertex
accumulator(stream-join)does that join.Running that pipeline, I found that the numa container in the reduce UDF vertex pod got down. Its logs said that
Failed to write message to WALandNo space left on device. I also found that memory usage of the numa container increased almost monotonically.To Reproduce
kubectl apply -f pipeline1.yamlpipeline1.yaml
The part of the reduce vertex in pipeline1.yaml:
Expected behavior
The numa container continues running.
Logs and screenshots
numa.log (
numacontainer's full logs)The tail of the logs:
Memory usage of the reduce pod:
Environment