Closed Bug 1737164 Opened 4 years ago Closed 4 years ago

"seeking backwards is not allowed" when fetching win64-clang artifact

Categories

(Firefox Build System :: Bootstrap Configuration, defect)

defect

Tracking

(firefox95 fixed)

RESOLVED FIXED
95 Branch
Tracking Status
firefox95 --- fixed

People

(Reporter: mhentges, Assigned: glandium)

References

Details

Attachments

(1 file)

On the aceba6246b0e revision, ./mach bootstrap fails because of the underlying command:

$ ./mach artifact toolchain --bootstrap --from-build win64-clang
 0:03.97 Setting up artifact clang.tar.zst
 0:03.97 Using artifact from local cache: c:\Users\Mitch\.mozbuild\toolchains\f6ddecfc4d47c5ba-clang.tar.zst
 0:04.63 rm tree: c:\dev\firefox\clang
 0:04.64 untarring "c:\dev\firefox\clang.tar.zst"
Error running mach:

    ['artifact', 'toolchain', '--bootstrap', '--from-build', 'win64-clang']

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 artifact| 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:

tarfile.StreamError: seeking backwards is not allowed

  File "c:\dev\firefox\python/mozbuild/mozbuild/artifact_commands.py", line 563, in artifact_toolchain
    unpack_file(local)
  File "c:\dev\firefox\python/mozbuild\mozbuild\action\tooltool.py", line 1001, in unpack_file
    tar.extractall()
  File "c:\mozilla-build\python3\lib\tarfile.py", line 2002, in extractall
    numeric_owner=numeric_owner)
  File "c:\mozilla-build\python3\lib\tarfile.py", line 2044, in extract
    numeric_owner=numeric_owner)
  File "c:\mozilla-build\python3\lib\tarfile.py", line 2122, in _extract_member
    self.makelink(tarinfo, targetpath)
  File "c:\mozilla-build\python3\lib\tarfile.py", line 2215, in makelink
    targetpath)
  File "c:\mozilla-build\python3\lib\tarfile.py", line 2114, in _extract_member
    self.makefile(tarinfo, targetpath)
  File "c:\mozilla-build\python3\lib\tarfile.py", line 2153, in makefile
    source.seek(tarinfo.offset_data)
  File "c:\mozilla-build\python3\lib\tarfile.py", line 520, in seek
    raise StreamError("seeking backwards is not allowed")
Assignee: nobody → mh+mozilla

Original patch by Andi-Bogdan Postelnicu <andi@mozilla.com>.

A workaround is to install python >= 3.8 and to enable Windows developer mode, which allows python's symlink support to work. But we can't rely on that, so for now, we'll just remove the symlinks from the archive.

Pushed by nbeleuzu@mozilla.com: https://hg.mozilla.org/mozilla-central/rev/438a6427019c Don't produce symlinks in Windows clang toolchains.
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 95 Branch

Thank you for the quick update!

Continuing from https://phabricator.services.mozilla.com/D129222#4199168 :

It will now work if you set MOZ_SCM_LEVEL=1 in the environment

I've updated to the latest central where this patch landed.
I'm getting a new error:

0:05.89 untarring "c:(redacted).mozbuild\minidump_stackwalk.tar.zst"

(A moment passes...)

Error running mach:

['artifact', 'toolchain', '--bootstrap', '--from-build', 'win64-clang']

requests.exceptions.HTTPError: 404 Client Error: Not Found for url: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/G4HqMnQWR2GENOeOQHUzQQ/artifacts/public/chain-of-trust.json

File "c:\mozilla-source\mozilla-central\python/mozbuild/mozbuild/artifact_commands.py", line 468, in artifact_toolchain
record = ArtifactRecord(task_id, artifact_name)
File "c:\mozilla-source\mozilla-central\python/mozbuild/mozbuild/artifact_commands.py", line 327, in init
cot.raise_for_status()
File "c:\mozilla-source\mozilla-central\third_party/python/requests\requests\models.py", line 943, in raise_for_status
raise HTTPError(http_error_msg, response=self)

This happens with or without MOZ_SCM_LEVEL=1.

Yeah, from the time it landed, until it finishes building, it's not going to work, unfortunately.

It should work now.

Yep, all good, thank you. 🎉 (And I didn't need MOZ_SCM_LEVEL.)

Pushed by apavel@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/e642552c4fcc Backed out changeset 438a6427019c for landing with other author on a CLOSED TREE https://hg.mozilla.org/integration/autoland/rev/797f1ce8bb54 Don't produce symlinks in Windows clang toolchains. r=glandium DONTBUILD CLOSED TREE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: