bneradt opened a new pull request, #484:
URL: https://github.com/apache/trafficserver-ci/pull/484
Each docker agent keeps one ccache directory, `${HOME}/ccache`, shared by
every job that runs on that host. It sits at ccache's 5 GB default and is full
on every agent checked. The cached files are only a few days old at most:
| Host | Size | Median age | Oldest |
|---|---|---|---|
| docker1 | 4.6 GB | 0.3 d | 1.2 d |
| docker3 | 4.1 GB | 0.8 d | 1.8 d |
| docker5 | 4.7 GB | 1.2 d | 1.8 d |
| docker8 | 4.8 GB | 0.8 d | 2.0 d |
| docker12 | 4.3 GB | 1.7 d | 2.9 d |
So any build configuration that hasn't run on a host for a day or two
compiles cold. That includes PRs against the release branches and jobs landing
on a host they rarely visit. The rocky:8, centos:7 and ubuntu:20.04 images run
ccache 3.7, which stores objects uncompressed; those files take 0.7 to 3.5 GB
of each 5 GB cache. On our 4-core agents, a fully cold ATS compile takes about
17 to 21 minutes, against about 1 minute with every object cached.
## Changes
- Set `CCACHE_MAXSIZE = "20G"` in every pipeline in this repository that
mounts the shared cache: 7 GitHub PR pipelines and 9 branch pipelines.
- URTest also runs `ccache --max-size="${CCACHE_MAXSIZE}"`, which writes
`max_size = 20G` into the host's `ccache.conf`. Some active jobs are configured
inline in Jenkins rather than in this repository (for example
`GitHub-sec-master/autest-child`). They mount the same cache without
`CCACHE_MAXSIZE`, so without this step they would trim it back to 5 GB. URTest
runs on nearly every docker host, so the setting spreads within a day.
I checked on docker11 that the `fedora:44` image writes the setting and that
the `rockylinux:8` ccache 3.7.7 reads it back as 20 GB.
## Disk
Jenkins reports at least 53 GiB free on every agent. docker1 has the least,
and every other agent has 109 GiB or more.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]