Skip to content

Conversation

@sfc-gh-jkew
Copy link
Contributor

The BackendCostCalculator was originally designed to return None when no suitable backend was available. It would do this when the max_cost of all backend were exceeded. In practice, and with changes related to considering multiple backends for pre-operation switches it was realized that this was too restrictive and it would throw a ValueError under certain workloads.

This change allows the calculator to first calculate a backend considering max_cost but, if one is not found, then calculate one disregarding max_cost. A backend should always be returned in this case.

What do these changes do?

  • first commit message and PR title follow format outlined here

    NOTE: If you edit the PR title to match this format, you need to add another commit (even if it's empty) or amend your last commit for the CI job that checks the PR title to pick up the new PR title.

  • passes flake8 modin/ asv_bench/benchmarks scripts/doc_checker.py
  • passes black --check modin/ asv_bench/benchmarks scripts/doc_checker.py
  • signed commit with git commit -s
  • Resolves BUG: When there is only one backend available for a merge and error may occur #7684
  • tests added and passing
  • module layout described at docs/development/architecture.rst is up-to-date

@sfc-gh-jkew sfc-gh-jkew changed the title BUG-#7684: When there is only one backend available for a merge an error may occur BUG-#7684: When we exceed max_cot for all available Backends an error may occur Oct 1, 2025
@sfc-gh-jkew sfc-gh-jkew changed the title BUG-#7684: When we exceed max_cot for all available Backends an error may occur BUG-#7684: When we exceed max_cost for all available Backends an error may occur Oct 1, 2025
@sfc-gh-jkew sfc-gh-jkew changed the title BUG-#7684: When we exceed max_cost for all available Backends an error may occur FIX-#7684: When we exceed max_cost for all available Backends an error may occur Oct 1, 2025
@sfc-gh-jkew sfc-gh-jkew marked this pull request as ready for review October 1, 2025 05:44
@sfc-gh-jkew sfc-gh-jkew merged commit 4d28700 into main Oct 1, 2025
78 checks passed
sfc-gh-mvashishtha pushed a commit that referenced this pull request Oct 2, 2025
…r may occur (#7685)

The BackendCostCalculator was originally designed to return None when no
suitable backend was available. It would do this when the max_cost of
all backend were exceeded. In practice, and with changes related to
considering multiple backends for pre-operation switches it was realized
that this was too restrictive and it would throw a ValueError under
certain workloads.

This change allows the calculator to first calculate a backend
considering max_cost but, if one is not found, then calculate one
disregarding max_cost. A backend should always be returned in this case.

## What do these changes do?

- [x] first commit message and PR title follow format outlined
[here](https://modin.readthedocs.io/en/latest/development/contributing.html#commit-message-formatting)
> **_NOTE:_** If you edit the PR title to match this format, you need to
add another commit (even if it's empty) or amend your last commit for
the CI job that checks the PR title to pick up the new PR title.
- [x] passes `flake8 modin/ asv_bench/benchmarks scripts/doc_checker.py`
- [x] passes `black --check modin/ asv_bench/benchmarks
scripts/doc_checker.py`
- [x] signed commit with `git commit -s` <!-- you can amend your commit
with a signature via `git commit -amend -s` -->
- [x] Resolves #7684
- [x] tests added and passing
- [x] module layout described at `docs/development/architecture.rst` is
up-to-date <!-- if you have added, renamed or removed files or
directories please update the documentation accordingly -->
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.

BUG: When there is only one backend available for a merge and error may occur

3 participants