Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[data] Fix wrong output order of streaming_split #36919

Merged
merged 3 commits into from
Jun 29, 2023

Conversation

raulchen
Copy link
Contributor

@raulchen raulchen commented Jun 28, 2023

Why are these changes needed?

The output order of OutputSplitter should be FIFO, instead of LIFO. This bug also makes streaming_split's order non-deterministic, because it depends on when the OutputSplitter's outputs are taken.

Related issue number

#35053

Checks

  • I've signed off every commit(by using the -s flag, i.e., git commit -s) in this PR.
  • I've run scripts/format.sh to lint the changes in this PR.
  • I've included any doc changes needed for https://docs.ray.io/en/master/.
    • I've added any new APIs to the API Reference. For example, if I added a
      method in Tune, I've added it in doc/source/tune/api/ under the
      corresponding .rst file.
  • I've made sure the tests are passing. Note that there might be a few flaky tests, see the recent failures at https://flakey-tests.ray.io/
  • Testing Strategy
    • Unit tests
    • Release tests
    • This PR is not tested :(

Copy link
Contributor

@ericl ericl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah... great catch!

@@ -103,6 +103,17 @@ def run(self):
c1.start()
c0.join()
c1.join()

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could also add a unit test to test_operators.py for OutputSplitter

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added

raulchen added 2 commits June 28, 2023 16:19
Signed-off-by: Hao Chen <chenh1024@gmail.com>
Signed-off-by: Hao Chen <chenh1024@gmail.com>
@raulchen raulchen force-pushed the streaming-split-preserve-order branch from 9acdfe8 to 8a04b2f Compare June 28, 2023 23:19
Signed-off-by: Hao Chen <chenh1024@gmail.com>
@raulchen raulchen merged commit f9912eb into ray-project:master Jun 29, 2023
@raulchen raulchen deleted the streaming-split-preserve-order branch June 29, 2023 02:09
arvind-chandra pushed a commit to lmco/ray that referenced this pull request Aug 31, 2023
The output order of OutputSplitter should be FIFO, instead of LIFO. This bug also makes streaming_split's order non-deterministic, because it depends on when the OutputSplitter's outputs are taken.

---------

Signed-off-by: Hao Chen <chenh1024@gmail.com>
Signed-off-by: e428265 <arvind.chandramouli@lmco.com>
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.

3 participants