Eelco Dolstra
4b5813051b
unsigned long long -> uint64_t
2020-08-04 11:38:22 +02:00
Eelco Dolstra
7d3ba616a9
Fix build
2020-08-04 11:33:29 +02:00
Eelco Dolstra
a0e24f446b
Remove unused getMemSize() function
2020-07-27 20:40:57 +02:00
Eelco Dolstra
d4e4be4fd1
Remove SHA-1 hash from BuildProducts
...
SHA-1 is deprecated and it will be expensive to compute with the
streaming NAR handler.
2020-07-27 18:24:10 +02:00
Eelco Dolstra
cbcf6359b4
Remove TokenServer in preparation of making NAR copying O(1) memory
2020-07-27 14:57:22 +02:00
Eelco Dolstra
7985757a1d
Fix build
2020-07-08 12:50:02 +02:00
Eelco Dolstra
bb32aafa4a
Fix build
2020-06-23 13:56:44 +02:00
Graham Christensen
7b705758ec
Merge pull request #732 from Ma27/fix-build
...
Fix build against latest Nix
2020-04-09 09:02:45 -04:00
Bas van Dijk
6e358189ad
Separate the build IDs in the build_finished payload with tabs
...
hydra-notify splits the payload on tabs so we shouldn't separate the
IDs with spaces.
2020-04-08 12:05:25 +02:00
Maximilian Bosch
2f9d422172
Fix build against latest Nix
2020-04-07 13:55:38 +02:00
Kevin Quick
a055796ef5
Merge branch 'master' into libpqxx_undeprecate
2020-04-01 11:54:41 -07:00
Eelco Dolstra
6c0bb909df
Merge pull request #704 from basvandijk/sleep-after-catch-exception
...
hydra-queue-runner: sleep 5s after handling an exception
2020-04-01 13:04:31 +02:00
Eelco Dolstra
9727892b61
Don't spam the journal with hydra-queue-runner status dumps
...
(cherry picked from commit 15ae932488512ba235ed2f6f841cc5eb56ba9314)
2020-03-31 22:19:07 +02:00
Eelco Dolstra
ccd046ca3d
Keep track of the number of unsupported steps
...
(cherry picked from commit 45ffe578b695f9de101b30d44d46f12aa0654f10)
2020-03-31 22:19:03 +02:00
Eelco Dolstra
4417f9f260
Abort unsupported build steps
...
If we don't see machine that supports a build step for
'max_unsupported_time' seconds, the step is aborted. The default is 0,
which is appropriate for Hydra installations that don't provision
missing machines dynamically.
(cherry picked from commit f5cdbfe21d930db43d3812c7d8e87746d6378ef9)
2020-03-31 22:19:01 +02:00
Eelco Dolstra
e4f5156c41
Build against nix-master
...
(cherry picked from commit e7f2139e251cb73195eea6fb84e2a6167b4db968)
2020-02-20 10:24:04 +01:00
Bas van Dijk
08bfff9d13
hydra-queue-runner: sleep 5s after handling an exception
...
instead of immediately calling `readMachinesFiles` again which could
immediately throw another exception again.
2020-01-14 13:34:35 +01:00
Kevin Quick
7bb6b5e206
Update libpqxx usage to move away from deprecated API interactions.
2020-01-11 22:38:40 -08:00
Hamish Mackenzie
c40c887e50
Fixes for macOS
...
Building on macOS with the latest nixpkgs master and NixOS/nixpkgs#77147
fails. It seems some `std::experimental` (optional) for instance are
not available as `experimental`, but are in `std`. Also `toJSON` is
missing for `atomic< unsigned long long >`.
2020-01-07 12:38:06 +13:00
Eelco Dolstra
554bb7d9ce
hydra-queue-runner: Don't pass IN_SYSTEMD to child processes
...
This caused local builds to have journal priority prefixes
(e.g. '<3>').
2019-09-25 17:25:07 +02:00
Eelco Dolstra
d08cfa48d7
Add a 'step_started' notification
2019-08-13 18:18:24 +02:00
Eelco Dolstra
7114d2aceb
Separate payload elements using \t
2019-08-13 18:18:24 +02:00
Eelco Dolstra
2946899504
Turn hydra-notify into a daemon
...
It now receives notifications about started/finished builds/steps via
PostgreSQL. This gets rid of the (substantial) overhead of starting
hydra-notify for every event. It also allows other programs (even on
other machines) to listen to Hydra notifications.
2019-08-13 18:18:21 +02:00
Michael Bishop
3ad091faf3
allow using a shorter context and increase hydra-notify debug
...
(cherry picked from commit 1c76ad393669af2f728fd519a050f417319412a6)
2019-03-20 15:22:24 -04:00
Eelco Dolstra
4e27796eba
Allow setting GC_INITIAL_HEAP_SIZE for hydra-eval-jobs
...
This cannot be done in the hydra-evaluator systemd unit, since then
every other Nix process (e.g. hydra-evaluator and nix-prefetch-*) will
also allocate the specified heap size, probably leading to OOM.
2018-05-16 14:14:53 +02:00
Eelco Dolstra
68afa2bf6f
Dump more system info in /queue-runner-status
2018-03-07 10:06:56 +01:00
Eelco Dolstra
e9670641ec
Distinguish build step states
...
The web interface now shows whether a build step is connecting,
copying inputs/outputs, building, etc.
2017-12-07 15:35:31 +01:00
Eelco Dolstra
457483ba0e
Don't lock the BuildSteps table when inserting
...
Instead, optimistically insert a row and retry if there is a conflict.
2017-12-07 14:41:29 +01:00
Eelco Dolstra
eef0d8861b
Remove test line
2017-10-19 13:17:29 +02:00
Eelco Dolstra
b04dc6c76e
Fix root creation when the root already exists but is owned by another user
2017-10-19 12:28:38 +02:00
Eelco Dolstra
cc64e51f75
USER -> LOGNAME for consistency
...
Don't remember why we use LOGNAME. Also ensure that it's set.
2017-10-18 11:23:00 +02:00
Will Dietz
c81594f470
hydra-queue-runner: ensure roots directory exists
...
Fixes #513
2017-10-17 13:04:56 -05:00
Eelco Dolstra
45b138373b
hydra-queue-runner: Write GC roots for outputs paths
...
We lost this behaviour somewhere. So build outputs could be GC'ed when
running the collector with --option gc-keep-outputs false.
2017-10-12 18:55:38 +02:00
Eelco Dolstra
27103398c9
Make maxLogSize configurable
2017-09-22 15:23:58 +02:00
Eelco Dolstra
b828224fee
Periodically close RemoteStore connections
...
This prevents an accumulation of temproots. See
89dc62c174
.
2017-09-14 18:16:33 +02:00
Eelco Dolstra
6517446c34
Update to latest nixUnstable
2017-09-14 17:22:48 +02:00
Eelco Dolstra
7c976d2aec
hydra-queue-runner: Make build notification more reliable
...
Previously, when hydra-queue-runner was restarted, any pending "build
finished" notifications were lost. Now hydra-queue-runner marks
finished but unnotified builds in the database and uses that to run
pending notifications at startup.
2017-07-26 15:17:51 +02:00
Eelco Dolstra
e78b9fd4ee
hydra-queue-runner: Allow concurrent notifications
...
The queue runner can now run up to ‘max-concurrent-notifications’ in
parallel (default is 2). This is useful when some hydra-notify
invocations can take a long time to complete (e.g. because they need
to compress a giant build log) and we don't want this to block all
other notifications.
2017-07-24 16:35:34 +02:00
Eelco Dolstra
bba383bf1b
hydra-queue-runner: Keep some notification statistics
2017-07-24 16:26:44 +02:00
Eelco Dolstra
6fc851d376
Improve erorr message
2017-07-17 14:10:34 +02:00
Eelco Dolstra
66ae66024e
Sync with latest Nix
2017-07-17 11:38:58 +02:00
Eelco Dolstra
1f94f03699
Fix build
2017-04-26 15:11:12 +02:00
Eelco Dolstra
cc85208fe4
Fix build
2017-04-18 20:50:18 +02:00
Eelco Dolstra
426aea1236
hydra-queue-runner: Allow multiple concurrent daemon connections
2017-04-06 18:50:53 +02:00
Eelco Dolstra
57bc0eaead
hydra-queue-runner: Limit concurrent database connections
...
Adding a 96-core aarch64 build machine to the build farm caused the
potential number of database connections to increase a lot, so we
started hitting the Postgres connection limit.
2017-03-21 11:53:46 +01:00
Eelco Dolstra
150228d7de
Upload build logs to the binary cache
2017-03-15 16:59:57 +01:00
Eelco Dolstra
7e6486e694
Move log compression to a plugin
2017-03-15 16:59:57 +01:00
Eelco Dolstra
d1afb42f12
Supress debug message
2017-03-15 16:59:56 +01:00
Eelco Dolstra
73900e9f5f
Fix std::stoi exception
2017-03-08 15:07:52 +01:00
Eelco Dolstra
edebdf33f0
hydra-queue-runner: Handle SIGINT
2017-03-03 12:41:00 +01:00