Skip to content

fix: use keyed_window.keys for task lookup in accumulator task manager#330

Merged
BulkBeing merged 3 commits intomainfrom
streamsorter
Mar 8, 2026
Merged

fix: use keyed_window.keys for task lookup in accumulator task manager#330
BulkBeing merged 3 commits intomainfrom
streamsorter

Conversation

@BulkBeing
Copy link
Contributor

@BulkBeing BulkBeing commented Mar 7, 2026

fixes: #327

I was able to reproduce the issue consistently with the pipeline mentioned in bug report. I'm running the same pipeline locally for an hour now with this fix, no issues so far and messages are reaching sink.

payload.keys is empty on CLOSE operations since no data is attached, causing "accumulator task not found" errors. keyed_window.keys is the authoritative key identity populated for all operation types. Also updates tests to set keyedWindow.keys independently from payload.keys to match real platform behavior.

Java implementation already uses keys of the keyed window: https://github.com/numaproj/numaflow-java/blob/d08cc313271621bf14dc6c0852a8fa8af7904c2f/src/main/java/io/numaproj/numaflow/accumulator/AccumulatorSupervisorActor.java#L84

payload.keys is empty on CLOSE operations since no data is attached,
causing "accumulator task not found" errors. keyed_window.keys is the
authoritative key identity populated for all operation types. Also
updates tests to set keyedWindow.keys independently from payload.keys
to match real platform behavior.

Signed-off-by: Sreekanth <prsreekanth920@gmail.com>
@codecov
Copy link

codecov bot commented Mar 7, 2026

Codecov Report

❌ Patch coverage is 92.30769% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 94.20%. Comparing base (a66cdda) to head (3368ae4).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
...ow/pynumaflow/accumulator/servicer/task_manager.py 90.00% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #330      +/-   ##
==========================================
+ Coverage   94.17%   94.20%   +0.03%     
==========================================
  Files          66       66              
  Lines        3092     3091       -1     
  Branches      162      162              
==========================================
  Hits         2912     2912              
  Misses        149      149              
+ Partials       31       30       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Signed-off-by: Sreekanth <prsreekanth920@gmail.com>
@BulkBeing BulkBeing marked this pull request as ready for review March 8, 2026 14:37
Signed-off-by: Sreekanth <prsreekanth920@gmail.com>
@BulkBeing BulkBeing merged commit 4d33841 into main Mar 8, 2026
12 checks passed
@BulkBeing BulkBeing deleted the streamsorter branch March 8, 2026 23:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

streamsorter aborted with "accumulator task not found" in case of certain generator inputs

2 participants