aboutsummaryrefslogtreecommitdiff
path: root/nar-herder/database.scm
Commit message (Collapse)AuthorAge
* Show backtraces for exceptions in transactionsChristopher Baines2024-04-19
|
* Improve database-call-with-transactionChristopher Baines2024-04-19
| | | | By copying from the build coordinator.
* Make the number of database reader threads configurableChristopher Baines2024-04-15
|
* Instrument the database and WAL file sizeChristopher Baines2024-04-01
|
* Track the number of cached nars scheduled for removalChristopher Baines2024-03-27
|
* Improve handling of cached narinfos when deletingChristopher Baines2024-03-25
|
* Rework the cached compressions systemChristopher Baines2024-03-25
| | | | | | | | | | | | | The initial implementation was flawed since guix assumes that any compression mentioned in the narinfo will be available for the lifetime of the narinfo, and the nar-herder was deleting cached compressions without taking this in to account. This commit adds support for scheduling the removal of a cached compression and this schedule is used to inform the TTLs for narinfos. I'm unsure of the value in caching narinfos so maybe some of this complexity can be removed in the future.
* Initialise the recent changes countChristopher Baines2024-03-14
|
* Use fold-nar-files for check-storageChristopher Baines2023-09-12
| | | | To avoid calling get-nar-files, as this doesn't scale well.
* Log the procedure delayed for database operationsChristopher Baines2023-09-12
|
* Enforce an ordering in database-select-recent-changesChristopher Baines2023-09-12
|
* Name some worker threadsChristopher Baines2023-09-08
|
* Add datastore-fold-all-narinfo-filesChristopher Baines2023-09-07
|
* Use call-with-duration-metric helperChristopher Baines2023-09-07
|
* Stop mmap'ing the databaseChristopher Baines2023-05-30
| | | | | I don't think I fully understand the implications of this yet, in particular how this affects system memory usage.
* Make more logging output from the database module atomicChristopher Baines2023-05-29
| | | | So that it's easier to read.
* Log the duration of long database operationsChristopher Baines2023-05-20
|
* Remove trailing commaChristopher Baines2023-05-17
|
* Record when a narinfo is addedChristopher Baines2023-05-17
| | | | As this will enable removing nars by date added.
* Enable SQLite to mmap the database fileChristopher Baines2023-05-17
| | | | | At least part of it, I think SQLite in Guix is limited to mmap'ing 2GiB.
* Speed up removing narinfosChristopher Baines2023-02-06
| | | | Using database-select-narinfo-by-hash will use an index.
* Don't error when removing files that don't existChristopher Baines2023-02-06
| | | | This is useful when removing in bulk and restarting the process.
* Create some indexes on tags and referencesChristopher Baines2023-02-06
| | | | As this will speed up removing narinfos.
* Handle busy databases in database-call-with-transactionChristopher Baines2023-02-06
|
* Fix some indentationChristopher Baines2023-02-06
|
* Remove the narinfo id from the narinfo_files queryChristopher Baines2023-02-03
| | | | As this is now an unused hack.
* Add procedure to select narinfo details by hashChristopher Baines2023-02-03
|
* Remove trailing comma from the initial database SQLChristopher Baines2023-02-02
|
* Fix the type of the cached narinfo compression when removingChristopher Baines2023-01-31
|
* Remove cached narinfo file database entries when removing narsChristopher Baines2023-01-31
|
* Change the worker threads to allow nesting callsChristopher Baines2023-01-16
|
* Add experimental support for cached compressionsChristopher Baines2023-01-16
| | | | | | This adds optional caching for alternative compressions of stored nars. You could store lzip nars for example, but then compute, cache and provide zstd nars for some stored nars.
* Extract out table-exists?Christopher Baines2022-11-29
|
* Add index on narinfo_files.narinfo_idChristopher Baines2022-06-24
| | | | | This is important for finding narinfo_files by narinfo, which happens in database-select-narinfo-files.
* Add some instrumentation around the databaseChristopher Baines2022-06-24
|
* Increase the maximum size of the reader thread poolChristopher Baines2022-06-24
| | | | As I think this might be a bottleneck.
* Support removing nar filesChristopher Baines2022-05-06
|
* Support inserting tags when inserting narinfosChristopher Baines2022-03-13
| | | | | | This is the beginning of implementing support for tagging. The communicating of tags through changes still needs implementing.
* Keep the change datetimes consistent when mirroringChristopher Baines2022-02-15
| | | | | As this ensures that changes aren't missed when the mirror inserts things later than the origin.
* Regularly update the database dump and delete recent changesChristopher Baines2021-12-29
|
* Limit the number of recent changes returnedChristopher Baines2021-12-29
| | | | So that requests for recent changes don't time out.
* Fix and test removing narsChristopher Baines2021-12-14
|
* Add missing sqlite-bind-arguments in database-select-narinfo-filesChristopher Baines2021-12-14
|
* Fix database-select-latest-recent-change-datetimeChristopher Baines2021-12-13
|
* Get most of the functionality sort of workingChristopher Baines2021-12-12
At least working enough to start trying this out, and finding the problems.