Skip to content

Fix schedule_all completion for empty ranges#2121

Open
fallintoplace wants to merge 1 commit into
NVIDIA:mainfrom
fallintoplace:fix-schedule-all-empty-range
Open

Fix schedule_all completion for empty ranges#2121
fallintoplace wants to merge 1 commit into
NVIDIA:mainfrom
fallintoplace:fix-schedule-all-empty-range

Conversation

@fallintoplace

Copy link
Copy Markdown

Summary

Fix exec::schedule_all on static_thread_pool so empty ranges complete immediately.

countdown_ is initialized from the range size. For an empty range, no child operation is started, so nothing decrements the countdown or completes the final receiver. The operation now sends set_value directly when there are no items to schedule.

Testing

  • cmake --build build --target test.exec
  • ./build/test/exec/test.exec "schedule_all on static_thread_pool handles empty ranges"
  • ./build/test/exec/test.exec "[types][static_thread_pool]"
  • ASAN_OPTIONS=abort_on_error=0:symbolize=1 ./build-asan/test/exec/test.exec "schedule_all on static_thread_pool handles empty ranges"
  • ./build/test/exec/test.exec

@copy-pr-bot

copy-pr-bot Bot commented Jun 19, 2026

Copy link
Copy Markdown

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@ericniebler

Copy link
Copy Markdown
Collaborator

/ok to test 9e2f5f1

@fallintoplace fallintoplace force-pushed the fix-schedule-all-empty-range branch from 9e2f5f1 to b8f2bbb Compare July 4, 2026 21:57
@ericniebler

Copy link
Copy Markdown
Collaborator

/ok to test b8f2bbb

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.

2 participants