Closed
Bug 1272544
Opened 8 years ago
Closed 8 years ago
git artifact builds failing: WindowsError: [Error 206] The filename or extension is too long
Categories
(Firefox Build System :: General, defect)
Tracking
(firefox49 fixed)
RESOLVED
FIXED
mozilla49
Tracking | Status | |
---|---|---|
firefox49 | --- | fixed |
People
(Reporter: markh, Unassigned)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
Traceback below. The problem is that _get_hg_revisions_from_git() is executing:
% git rev-list --topo-order HEAD~500..HEAD
and it then hopes to pass the output of that, via the command-line to:
% git cinnabar git2hg ...
The issue is that the rev-list command is returning 2369 full hashes, which appears to exceed a Windows command-line limit (which isn't *too* surprising - the cmdline in this case is 97128 bytes!)
The workarounds:
1) Use --abbrev-commit on the rev-list command. This reduces the command-line down to ~20k and does work, but it takes cinnabar ~30s to output the hg lists - a quick scan of cinnabar's code shows that it makes its own |git rev-list| call to turn them back into long hashes, so I'm guessing this is much slower than it would be if full hashes were passed.
2) Change the initial revlist command to something like |git rev-list --topo-order --max-count=500 HEAD|
3) Change NUM_REVISIONS_TO_QUERY from 500 to, say, 100.
All the above workarounds worked for me. I'm guessing (2) is reasonable - if it is, I'll put up a patch. If it's not, it might be necessary to change cinnabar to allow reading of the revisions from stdin and have artifacts.py pipe them in that way.
The details of the failure are as follows:
>
> WindowsError: [Error 206] The filename or extension is too long
> File "o:\src\moz\gecko\python/mozbuild/mozbuild/mach_commands.py", line 1549, in artifact_install
> return artifacts.install_from(source, self.distdir)
> File "o:\src\moz\gecko\python/mozbuild\mozbuild\artifacts.py", line 1037, in install_from
> return self.install_from_recent(distdir)
> File "o:\src\moz\gecko\python/mozbuild\mozbuild\artifacts.py", line 999, in install_from_recent
> return self._install_from_hg_pushheads(hg_pushheads, distdir)
> File "o:\src\moz\gecko\python/mozbuild\mozbuild\artifacts.py", line 977, in _install_from_hg_pushheads
> for hg_hash in hg_pushheads:
> File "o:\src\moz\gecko\python/mozbuild\mozbuild\artifacts.py", line 871, in _find_pushheads
> last_revs = self._get_recent_public_revisions()
> File "o:\src\moz\gecko\python/mozbuild\mozbuild\artifacts.py", line 857, in _get_recent_public_revisions
> return self._get_hg_revisions_from_git()
> File "o:\src\moz\gecko\python/mozbuild\mozbuild\artifacts.py", line 838, in _get_hg_revisions_from_git
> ] + rev_list.splitlines())
> File "c:\mozilla-build\python\lib\subprocess.py", line 566, in check_output
> process = Popen(stdout=PIPE, *popenargs, **kwargs)
> File "c:\mozilla-build\python\lib\subprocess.py", line 710, in __init__
> errread, errwrite)
> File "c:\mozilla-build\python\lib\subprocess.py", line 958, in _execute_child
> startupinfo)
(line numbers might be off by a line or 2 as I added a couple of prints, but you get the idea)
Comment 1•8 years ago
|
||
Either or both of 2 and 3 sound reasonable.
Reporter | ||
Comment 2•8 years ago
|
||
Review commit: https://reviewboard.mozilla.org/r/52403/diff/#index_header See other reviews: https://reviewboard.mozilla.org/r/52403/
Attachment #8752059 -
Flags: review?(cmanchester)
Updated•8 years ago
|
Attachment #8752059 -
Flags: review?(cmanchester) → review+
Comment 3•8 years ago
|
||
Comment on attachment 8752059 [details] MozReview Request: Bug 1272544 - artifact builds with git now only consider the last 500 revisions rather than all revisions for the last 500 commits. r?chmanchester https://reviewboard.mozilla.org/r/52403/#review49465 Thank you for the patch.
Comment 5•8 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/950d344b6e43
Status: NEW → RESOLVED
Closed: 8 years ago
status-firefox49:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla49
Updated•6 years ago
|
Product: Core → Firefox Build System
You need to log in
before you can comment on or make changes to this bug.
Description
•