Commit Graph

19 Commits

Author SHA1 Message Date
Martchus 55c7c62c7c Speed up returning build actions table by avoiding deserializing whole obj 2022-05-31 20:54:02 +02:00
Martchus 68d67f543f Refactor to optimize deserialization of base-data
* Break backwards compatibility
* Allow to deserialize only base-data of packages and build
  actions to potentially speed up showing tables
* Speed up package search in many cases by only deserializing
  base-data (unless details are actually wanted)
2022-05-31 19:04:57 +02:00
Martchus d5e2b5489d Provide filename for artefact downloads 2022-03-15 23:22:34 +01:00
Martchus 69a81f7583 Remove unused function declaration 2022-03-15 22:27:50 +01:00
Martchus 59cd593a3b Display template name 2022-03-12 22:46:42 +01:00
Martchus 382169ab6e Fix varoius build action related problems
* Fix crashes in some situations
* Fix aborting reloading library dependencies
2022-02-22 22:49:40 +01:00
Martchus 93afb3883d Write build action "output" log to a logfile like for sub-processes 2022-02-20 00:11:23 +01:00
Martchus 557fd1a738 lmdb: Use lmdb to store build actions 2022-02-13 21:04:54 +01:00
Martchus e44cbf94e5 lmdb: Enable versioning for objects we'd like to store in the DB 2022-01-18 22:48:34 +01:00
Martchus 2ffa6629c8 lmdb: Use lmdb to store packages and dependency indices 2022-01-18 21:50:53 +01:00
Martchus 8b70cc5f8e Clear added/removed provides from previous builds 2021-06-22 00:02:41 +02:00
Martchus 9359004a10 Allow resetting chroot settings as well when preparing build 2021-05-16 16:49:09 +02:00
Martchus ff1e955bde Consider concurrent flag when starting build actions from task
This allows concurrent build actions within the same task.
2021-04-05 12:10:42 +02:00
Martchus f147dc3179 Fix locks for global resources by implementing a mutex not tied to a thread
* Can not use a normal mutex because we don't want to tie the resources to
  a specific thread (and instead e.g. to a build action which might not be
  executed by a single thread)
* A semaphore would do that but libstdc++ only supports it as of GCC 11 and
  besides it wouldn't distinguish between shared and exclusive locking
2021-02-26 01:39:21 +01:00
Martchus 0760860c6d Log lock acquisitions/releases 2021-02-25 22:12:56 +01:00
Martchus bc993f1d78 Add locking system so build actions can acquire named locks 2021-02-20 23:25:31 +01:00
Martchus 17ab860c8b Don't log all build-action specific output to stderr as well 2021-02-08 23:54:03 +01:00
Martchus aa356944da Log process IDs of started sub processes 2021-02-08 23:54:02 +01:00
Martchus c1554f4c87 Initial import 2021-02-08 23:53:56 +01:00