Skip to content

fix(ci): reduce Bazel jobs to 1 to prevent OOM crash - #207

Open
ricardochl wants to merge 1 commit into
mainfrom
fix/ci-jobs-1-oom
Open

fix(ci): reduce Bazel jobs to 1 to prevent OOM crash#207
ricardochl wants to merge 1 commit into
mainfrom
fix/ci-jobs-1-oom

Conversation

@ricardochl

@ricardochl ricardochl commented Aug 20, 2026

Copy link
Copy Markdown
Member

adev-staging-deploy.yml failed on main with a genuine in-VM OOM
signature (truncated log line + exit code 1) mid-compile at
[17,472/17,628], distinct from the runner-shutdown flakiness seen in
earlier runs. With --jobs=2, two concurrent Bazel actions (ng_package
Rollup bundling, tsc compilation workers) can together exceed the
runner's available memory even though --local_resources=memory=4096
is only a scheduling hint, not a hard cap.

Serializing action execution with --jobs=1 avoids the concurrent
memory spike without lowering the memory budget itself (which
previously pushed build time to ~28min at memory=3072/jobs=2).

Verified against both workflows: the PR check (ci.yml, run 32402548439,
28m25s) and a real push-triggered staging deploy including the
Firebase deploy step (adev-staging-deploy.yml, run 32402468531, 4m9s)
both completed successfully with this change.

@ricardochl ricardochl changed the title Reduce Bazel jobs to 1 to prevent OOM crash fix(ci): reduce Bazel jobs to 1 to prevent OOM crash Aug 20, 2026
adev-staging-deploy.yml failed on main with a genuine in-VM OOM
signature (truncated log line + exit code 1) mid-compile at
[17,472/17,628], distinct from the runner-shutdown flakiness seen in
earlier runs. With --jobs=2, two concurrent Bazel actions (ng_package
Rollup bundling, tsc compilation workers) can together exceed the
runner's available memory even though --local_resources=memory=4096
is only a scheduling hint, not a hard cap.

Serializing action execution with --jobs=1 avoids the concurrent
memory spike without lowering the memory budget itself (which
previously pushed build time to ~28min at memory=3072/jobs=2).

Verified against both workflows: the PR check (ci.yml, run 32402548439,
28m25s) and a real push-triggered staging deploy including the
Firebase deploy step (adev-staging-deploy.yml, run 32402468531, 4m9s)
both completed successfully with this change.
@ricardochl ricardochl self-assigned this Aug 20, 2026
@ricardochl
ricardochl requested review from Splaktar and oidacra August 20, 2026 21:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants