Closed Bug 1800225 Opened 2 years ago Closed 1 year ago

Exception: The "build" site is out-of-date, even though it has already been activated. Was it modified while this Mach process was running?

Categories

(Firefox Build System :: Mach Core, defect, P2)

defect

Tracking

(firefox-esr102 unaffected, firefox106 unaffected, firefox107 unaffected, firefox108 fixed, firefox109 fixed)

RESOLVED FIXED
109 Branch
Tracking Status
firefox-esr102 --- unaffected
firefox106 --- unaffected
firefox107 --- unaffected
firefox108 --- fixed
firefox109 --- fixed

People

(Reporter: smaug, Assigned: ahochheiden)

References

(Regression)

Details

(Keywords: regression)

Attachments

(1 file)

Something has changed very recently and now I can't build anymore.

import sys; sys.path = [p for p in sys.path if p.lower() != '/home/smaug/mozilla/hg/shistory/ff_build_opt/_virtualenvs/build/lib/python3.10/site-packages'.lower()]
import sys; sys.path.append('/home/smaug/mozilla/hg/shistory/ff_build_opt/_virtualenvs/build/lib/python3.10/site-packages')

---

Error running mach:

['build']

The error occurred in code that was called by the mach command. This is either
a bug in the called code itself or in the way that mach is calling it.
You can invoke |./mach busted| to check if this issue is already on file. If it
isn't, please use |./mach busted file build| to report it. If |./mach busted| is
misbehaving, you can also inspect the dependencies of bug 1543241.

If filing a bug, please include the full output of mach, including this error
message.

The details of the failure are as follows:

Exception: The "build" site is out-of-date, even though it has already been activated. Was it modified while this Mach process was running?

File "/home/smaug/mozilla/hg/shistory/python/mozbuild/mozbuild/build_commands.py", line 224, in build
return driver.build(
File "/home/smaug/mozilla/hg/shistory/python/mozbuild/mozbuild/controller/building.py", line 1295, in build
config_rc = self.configure(
File "/home/smaug/mozilla/hg/shistory/python/mozbuild/mozbuild/controller/building.py", line 1689, in configure
build_site.ensure()
File "/home/smaug/mozilla/hg/shistory/python/mach/mach/site.py", line 568, in ensure
raise Exception(

That is with a clobber build

The Bugbug bot thinks this bug should belong to the 'Firefox Build System::Mach Core' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: General → Mach Core

640895:d55e22227807 Wed Nov 09 21:46:03 2022 +0000 is ok
641011:df6ee8ede2d8 Thu Nov 10 21:59:44 2022 +0000 is broken.

57d2a9aee4e4d9c167ca813e40f0c926f5aa7dcb is ok, c49bf65cd85aa4925e2851f97abce61b071cf704 is broken.

https://hg.mozilla.org/mozilla-central/rev/476e32a794e8a21862b35eaab5719724b81cf792 regressed this

Regressed by: 1795158

Set release status flags based on info from the regressing bug 1795158

:ahochheiden, since you are the author of the regressor, bug 1795158, could you take a look? Also, could you set the severity field?

For more information, please visit auto_nag documentation.

Assignee: nobody → ahochheiden
Severity: -- → S2
Flags: needinfo?(ahochheiden)
Priority: -- → P2

I can't reproduce this, on Windows or on my Linux VM.

Do you have more of the log? What's the Site not up-to-date reason:? (I'm assuming it's the pthfile not matching the expected, but it should print what it is and what it expects.

Flags: needinfo?(smaug)

On POSIX platforms there can be lib and lib64 for site-packages.
On Fedora35 once a virtualenv is created, lib64 is a symlink of lib.
Since we can determine what these paths will be before the virtualenv is
created, realpath has different results before/after, which is
problematic for our pthfile.

Since we only care about resolving the symlink in the prefix (to keep it
in line with the topobjdir, we can simply only realpath that and
disregard that there's a symlink between lib and lib64, which makes
our pthfile that's created and expected always the same on all
platforms.

Flags: needinfo?(smaug)
Pushed by ahochheiden@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/79c3362f76c4
Only `realpath` the `prefix` when resolving the sysconfig packages path r=firefox-build-system-reviewers,glandium
Status: NEW → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 109 Branch
See Also: → 1804456

Comment on attachment 9303552 [details]
Bug 1800225 - Only realpath the prefix when resolving the sysconfig packages path r?#build

Beta/Release Uplift Approval Request

  • User impact if declined: Downstream build failure (bug 1804456).
  • Is this code covered by automated tests?: Yes
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: No
  • If yes, steps to reproduce:
  • List of other uplifts needed: None
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): This is only a change in the build environment. It changes nothing to the resulting build.
  • String changes made/needed:
  • Is Android affected?: No
Attachment #9303552 - Flags: approval-mozilla-release?
Duplicate of this bug: 1804456

The patch landed in nightly and beta is affected.
:ahochheiden, is this bug important enough to require an uplift?

  • If yes, please nominate the patch for beta approval.
  • If no, please set status-firefox108 to wontfix.

For more information, please visit auto_nag documentation.

Flags: needinfo?(ahochheiden)

Comment on attachment 9303552 [details]
Bug 1800225 - Only realpath the prefix when resolving the sysconfig packages path r?#build

Approved for 108.0rc2

Attachment #9303552 - Flags: approval-mozilla-release? → approval-mozilla-release+
Flags: needinfo?(ahochheiden)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: