Files
aptly/deb
Harald Sitter 9125745416 batch updates to the temporary db when publishing
updates with contents generation were super syscall-heavy. for each path
in a package (so at least 2-4, but ordinarily >4) we'd do a db.Put in
ContentsIndex which results in one syscall.Write. so, for every package in
a published repo we'd have to do *at least* 2 but ordinarily >4 syscalls.
this gets abysmally slow very quickly depending on the available system
specs.

instead, start a batch inside each package and finish it when we are done
with the package. this should keep the memory footprint negligible, but
reduce the write() calls from N to 1.

on one of KDE's servers I have seen update publishing of 7600 packages go
from ~28s to ~9s when using batch putting on an HDD.
on my local system the same set of packages go from ~14s to ~6s on an SSD.
(all inodes in cache in both cases)
2018-02-26 16:19:15 +01:00
..
2017-03-23 01:51:08 +03:00
2014-11-05 13:27:15 -06:00
2014-04-08 01:04:01 +04:00
2017-05-17 00:53:10 +03:00
2017-11-30 06:31:50 +01:00
2015-03-30 19:56:53 +03:00
2017-03-23 01:51:08 +03:00
2015-02-22 14:29:09 +03:00
2017-03-23 01:51:08 +03:00
2017-07-05 00:36:48 +03:00
2017-05-23 02:54:56 +03:00
2017-05-23 02:54:56 +03:00