Open Bug 1382849 Opened 7 years ago Updated 1 year ago

Toolchain tasks should use a cache/volume for work

Categories

(Firefox Build System :: General, enhancement)

enhancement

Tracking

(firefox57 wontfix)

Tracking Status
firefox57 --- wontfix

People

(Reporter: gps, Assigned: glandium)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Currently, at least the clang toolchain task is building from an aufs filesystem in /home/worker/workspace. This likely slows down operations significantly due to aufs badness. See bug 1291940.

/home/worker/workspace (or wherever intensive work is performed) should be a host-mounted volume/cache backed by ext4 so aufs doesn't interfere.
Comment on attachment 8888538 [details]
Bug 1382849 - Add workspace cache to toolchain docker-worker jobs.

https://reviewboard.mozilla.org/r/159518/#review164880
Attachment #8888538 - Flags: review?(gps) → review+
Assignee: nobody → mh+mozilla
Comment on attachment 8888538 [details]
Bug 1382849 - Add workspace cache to toolchain docker-worker jobs.

https://reviewboard.mozilla.org/r/159518/#review164890
Attachment #8888538 - Flags: review?(dustin) → review+
Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/autoland/rev/0ee08a9803fc
Add workspace cache to toolchain docker-worker jobs. r=dustin,gps
So the problem here is that we're just abusing caches to have access to faster volumes. Ideally, we'd need a non-caching cache.  In fact, we'd want the same thing for try, so that try builds can stop doing this:
https://dxr.mozilla.org/mozilla-central/source/taskcluster/taskgraph/transforms/job/common.py#21

and get fast I/O.

Dustin, what do you think? How far along is taskcluster-worker, and would it solve those aufs problems without abusing caches? If so, what should we do in the interim?
Flags: needinfo?(mh+mozilla) → needinfo?(dustin)
Backout by kwierso@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/b1e444b1b4c7
Backed out changeset 0ee08a9803fc for cctools bustage a=backout
tc-worker wouldn't solve aufs, and I'm not sure if it has a "non-caching cache" option.  At any rate, there's no docker engine for tc-worker yet, and writing such a thing and then switching to it is probably not practical until the migration from buildbot is complete.

At the moment, I suspect a simple 'rm -rf' would do the trick here?
Flags: needinfo?(dustin)
Product: Core → Firefox Build System
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.