Skip to content

Fix crash when symmetry generators are pruned - #1689

Merged
rapids-bot[bot] merged 1 commit into
NVIDIA:mainfrom
nguidotti:symmetry-fix
Aug 7, 2026
Merged

Fix crash when symmetry generators are pruned#1689
rapids-bot[bot] merged 1 commit into
NVIDIA:mainfrom
nguidotti:symmetry-fix

Conversation

@nguidotti

Copy link
Copy Markdown
Contributor

If the symmetry generators are pruned from one restart to the next, surviving_generators_ will store the incorrect set of indexes and cause a out-of-bound memory access.

Checklist

  • I am familiar with the Contributing Guidelines.
  • Testing
    • New or existing tests cover these changes
    • Added tests
    • Created an issue to follow-up
    • NA
  • Documentation
    • The documentation is up to date with these changes
    • Added new documentation
    • NA

Signed-off-by: Nicolas L. Guidotti <nguidotti@nvidia.com>
@nguidotti nguidotti added this to the 26.10 milestone Aug 7, 2026
@nguidotti
nguidotti requested a review from chris-maes August 7, 2026 09:59
@nguidotti nguidotti self-assigned this Aug 7, 2026
@nguidotti
nguidotti requested a review from a team as a code owner August 7, 2026 09:59
@nguidotti nguidotti added the bug Something isn't working label Aug 7, 2026
@nguidotti
nguidotti requested a review from hlinsen August 7, 2026 09:59
@nguidotti nguidotti added non-breaking Introduces a non-breaking change mip labels Aug 7, 2026
@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 7865d0f0-1c29-411e-a1be-74afa9715ee4

📥 Commits

Reviewing files that changed from the base of the PR and between 361d41f and 5e2ad9c.

📒 Files selected for processing (1)
  • cpp/src/branch_and_bound/symmetry.hpp

📝 Walkthrough

Walkthrough

orbital_fixing_t::reset now sizes surviving_generators_ using the symmetry object’s current generator count before repopulating active generator indices.

Changes

Symmetry generator reset

Layer / File(s) Summary
Reset generator storage
cpp/src/branch_and_bound/symmetry.hpp
reset resizes surviving_generators_ to the current num_generators value and reinitializes the active generator indices.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Suggested reviewers: chris-maes, hlinsen, ramakrishnap-nv

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description check ✅ Passed The description clearly explains the crash caused by stale generator indexes after symmetry generators are pruned.
Title check ✅ Passed The title clearly identifies the primary change: fixing a crash caused by pruned symmetry generators.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown

CI Test Summary

✅ All 31 test job(s) passed.

@nguidotti

Copy link
Copy Markdown
Contributor Author

/merge

@rapids-bot
rapids-bot Bot merged commit ff6f0ad into NVIDIA:main Aug 7, 2026
95 checks passed
@nguidotti
nguidotti deleted the symmetry-fix branch August 7, 2026 16:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working mip non-breaking Introduces a non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants