git usage can trigger diskspace/memory issues for charms with blobs
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
juju-core |
Fix Released
|
Critical
|
William Reade |
Bug Description
juju-core internal git usage can trigger diskspace/memory issues for charms including (big) blobs.
We have a usecase where we use upgrade-charm to not only push charm code itself, but also 'application' code, and website tar-gzipped content blobs [1] (FYI in the order of ~600MB total - an arguable approach, with its own tradeoffs).
Because of the VCS'ing that juju-core uses to land + merge upgraded charm, /var/lib/
While trying to workaround this issue by manually doing shallow git cloning, got git OOM-killed (order of ~2G RSS, plus non-swap units), succeeded after tuning with [2]
git config --global core.bigFileThr
git config --global pack.windowMemory 256m
I suggest:
[1] Documenting this git workflow as CAVEAT, re: "big" binary blobs.
[2] Having juju-core to tune git to avoid it from potentially interfering with running services.
Related branches
- Juju Engineering: Pending requested
-
Diff: 1382 lines (+875/-162)10 files modifiedworker/uniter/charm/charm_test.go (+12/-2)
worker/uniter/charm/converter.go (+152/-0)
worker/uniter/charm/converter_test.go (+130/-0)
worker/uniter/charm/export_test.go (+10/-0)
worker/uniter/charm/manifest_deployer.go (+1/-1)
worker/uniter/charm/manifest_deployer_test.go (+3/-9)
worker/uniter/modes.go (+19/-5)
worker/uniter/uniter.go (+20/-7)
worker/uniter/uniter_old_test.go (+226/-0)
worker/uniter/uniter_test.go (+302/-138)
Changed in juju-core: | |
status: | New → Triaged |
importance: | Undecided → Low |
tags: | added: docs feature |
tags: |
added: doc removed: docs |
tags: | added: canonical-webops |
tags: | added: cpc |
tags: |
added: pes removed: cpc |
tags: |
added: cts-cloud-review removed: pes |
tags: |
added: docs removed: doc |
Changed in juju-core: | |
assignee: | nobody → William Reade (fwereade) |
Changed in juju-core: | |
milestone: | 1.17.1 → 1.18.0 |
tags: | added: upgrade-charm |
tags: | added: canonical-is |
Changed in juju-core: | |
milestone: | 1.20.0 → 2.0 |
status: | Triaged → In Progress |
Changed in juju-core: | |
status: | In Progress → Fix Committed |
milestone: | 2.0 → 1.19.1 |
summary: |
- consider tuning git setup for juju-core, and document caveats + git usage can trigger diskspace/memory issues for charms with blobs |
Changed in juju-core: | |
status: | Fix Committed → Fix Released |
FYI/FTR steps I did to successfully reclaim diskspace (granted - just buying time ;): http:// paste.ubuntu. com/6164905/