NixOS / NixOS/ofborg

ofborg doesn't apply changes from PR before kicking off builds on aarch64-darwin sometimes.

Open
#676 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
322
Forks
171
PR merge metrics
No merged PRs in 30d

Description

I've seen this twice on aarch64-darwin over the 200*(not all logs from builds are still available) builds done for one PR but not on other architectures.

https://github.com/NixOS/nixpkgs/pull/288913 updates duckdb from version 0.9.2 -> 0.10.0, duckdb-engine 0.9.2 -> 0.11.1, and sqlglot:20.9.0 -> 21.1. the most recent ofborg run did not apply changes from the PR before kicking off the aarch64-darwin build log and previous failure is log

these 4 paths will be fetched (40.70 MiB download, 262.77 MiB unpacked):
  /nix/store/sr1avx59qyldsd5fxmka8x8z743jynz7-duckdb-0.9.2
  /nix/store/py4ng5kv65xqjjdqyzvq9hgwxmza59ll-python3.11-duckdb-0.9.2
  /nix/store/5jj2gd8al950g11996809xfh5x30w6f0-python3.11-duckdb-engine-0.9.2
  /nix/store/x1jwv26lyl3z5zx019jwy2qx1qw6gv1l-python3.11-sqlglot-20.9.0
copying path '/nix/store/sr1avx59qyldsd5fxmka8x8z743jynz7-duckdb-0.9.2' from 'https://cache.nixos.org'...
copying path '/nix/store/py4ng5kv65xqjjdqyzvq9hgwxmza59ll-python3.11-duckdb-0.9.2' from 'https://cache.nixos.org'...
copying path '/nix/store/x1jwv26lyl3z5zx019jwy2qx1qw6gv1l-python3.11-sqlglot-20.9.0' from 'https://cache.nixos.org'...
copying path '/nix/store/5jj2gd8al950g11996809xfh5x30w6f0-python3.11-duckdb-engine-0.9.2' from 'https://cache.nixos.org'...
/nix/store/sr1avx59qyldsd5fxmka8x8z743jynz7-duckdb-0.9.2
/nix/store/py4ng5kv65xqjjdqyzvq9hgwxmza59ll-python3.11-duckdb-0.9.2
/nix/store/5jj2gd8al950g11996809xfh5x30w6f0-python3.11-duckdb-engine-0.9.2
/nix/store/x1jwv26lyl3z5zx019jwy2qx1qw6gv1l-python3.11-sqlglot-20.9.0

this is wrong -- notice all the versions are old and cached. nothing was built, just copied from cache.nixos.org.

contrast this to the build on x86_64-darwin below log

these 4 derivations will be built:
  /nix/store/0fw8sf8g84fjp751xn92ndcv0qx98sfz-python3.11-duckdb-0.10.0.drv
  /nix/store/iqib6vgd0352x5787fiv8wql6hiwmi54-duckdb-0.10.0.drv
  /nix/store/mnsk4pbs4sv9nzjbfs0mljw6rwlzyamv-python3.11-sqlglot-21.1.1.drv
  /nix/store/prvk06j9a2gq3by88nci3lgn5c5ylss5-python3.11-duckdb-engine-0.11.1.drv
building '/nix/store/iqib6vgd0352x5787fiv8wql6hiwmi54-duckdb-0.10.0.drv'...
building '/nix/store/0fw8sf8g84fjp751xn92ndcv0qx98sfz-python3.11-duckdb-0.10.0.drv'...
[...] 1000s of lines of build logs ...
/nix/store/6lh8bzhhj0h862cll4s60h2shy3fzqqw-duckdb-0.10.0
/nix/store/k1wn8bcq963p9gsgznp7yc4wdvx5a006-python3.11-duckdb-0.10.0
/nix/store/044d9cmidzxl9sgiv1k8f26nbvg3wc3r-python3.11-duckdb-engine-0.11.1
/nix/store/6dwfw7h5xy5zzinvaf8g8my9g1y8wff5-python3.11-sqlglot-21.1.1

this built all packages listed in the PR commit messages and the version numbers are correct.

here is a log of when aarch64-darwin did build using the changes of the PR, however, the log is truncated.

[*] yikes

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing the linked aarch64-darwin and x86_64-darwin logs for PR 288913, then inspect ofborg's handling of PR changes before architecture-specific builds are started. Done means builds consistently use the PR's updated package versions rather than stale cached paths, including on aarch64-darwin.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
build-system, ci-cd
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.