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

Fix QEMU-based Linux wheel jobs #8987

Merged
merged 1 commit into from
Oct 25, 2022
Merged

Conversation

kevinhartman
Copy link
Contributor

@kevinhartman kevinhartman commented Oct 24, 2022

Summary

There appears to be an issue with memory consumption under the hood when using QEMU with Rust cargo:
rust-lang/cargo#10583.

This is causing the CI wheel workflow to run out of memory and fail for QEMU-based jobs, e.g.:
https://github.com/Qiskit/qiskit-terra/actions/runs/3244845622/jobs/5322060193#step:6:1964

Due to this issue the original release of Terra 0.22.0 never actually produced wheels for Linux aarch64, ppc64le, and s390x. A separate branch has been created to manually retrigger the 0.22.0 release wheel jobs, which have now completed successfully (also used in validating the changes in this PR).
https://github.com/Qiskit/qiskit-terra/compare/0.22.0...Qiskit:qiskit-terra:dnm-non-x86-64-wheels-retry?expand=1

Details and comments

From the discussion on the linked issue, the workaround is to tell cargo to use the Git executable directly, rather than libgit2.

Edit:
As noted by @mtreinish below, setting CARGO_NET_GIT_FETCH_WITH_CLI=true in the pyproject.toml changes the behavior to use the Git executable for all Linux configurations, including x64.

@kevinhartman kevinhartman requested a review from a team as a code owner October 24, 2022 21:14
@qiskit-bot
Copy link
Collaborator

Thank you for opening a new pull request.

Before your PR can be merged it will first need to pass continuous integration tests and be reviewed. Sometimes the review process can be slow, so please be patient.

While you're waiting, please feel free to review other open PRs. While only a subset of people are authorized to approve pull requests for merging, everyone is encouraged to review open pull requests. Doing reviews helps reduce the burden on the core team and helps make the project's code better for everyone.

One or more of the the following people are requested to review this:

  • @Qiskit/terra-core

Copy link
Member

@mtreinish mtreinish left a comment

Choose a reason for hiding this comment

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

I guess this changes the git usage for cargo on x86_64 builds too, but that shouldn't be an issue. Thanks for fixing this!

@mtreinish mtreinish added stable backport potential The bug might be minimal and/or import enough to be port to stable automerge Changelog: None Do not include in changelog labels Oct 24, 2022
@coveralls
Copy link

Pull Request Test Coverage Report for Build 3316257189

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • 28 unchanged lines in 2 files lost coverage.
  • Overall coverage decreased (-0.04%) to 84.378%

Files with Coverage Reduction New Missed Lines %
src/results/marginalization.rs 14 80.46%
src/sampled_exp_val.rs 14 63.93%
Totals Coverage Status
Change from base Build 3310085506: -0.04%
Covered Lines: 61678
Relevant Lines: 73097

💛 - Coveralls

@mergify mergify bot merged commit 799caa7 into Qiskit:main Oct 25, 2022
mergify bot pushed a commit that referenced this pull request Oct 25, 2022
mergify bot added a commit that referenced this pull request Oct 25, 2022
(cherry picked from commit 799caa7)

Co-authored-by: Kevin Hartman <kevin@hart.mn>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Changelog: None Do not include in changelog stable backport potential The bug might be minimal and/or import enough to be port to stable
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants