git-annex/Database
Joey Hess 19e78816f0
convert Key to ShortByteString
This adds the overhead of a copy when serializing and deserializing keys.
I have not benchmarked much, but runtimes seem barely changed at all by that.

When a lot of keys are in memory, it improves memory use.

And, it prevents keys sometimes getting PINNED in memory and failing to GC,
which is a problem ByteString has sometimes. In particular, git-annex sync
from a borg special remote had that problem and this improved its memory
use by a large amount.

Sponsored-by: Shae Erisson on Patreon
2021-10-05 20:20:08 -04:00
..
Keys remove unused code 2021-07-30 18:01:36 -04:00
Benchmark.hs convert Key to ShortByteString 2021-10-05 20:20:08 -04:00
ContentIdentifier.hs remove ContentIndentifiersCidRemoteIndex uniqueness constraint 2020-12-23 14:03:33 -04:00
Export.hs use GIT keys for export of non-annexed files 2021-03-05 14:12:11 -04:00
Fsck.hs speed up keys database writes 2021-05-31 15:01:00 -04:00
Handle.hs Fix build with persistent-2.12.0.1 2021-04-01 12:21:02 -04:00
Init.hs more RawFilePath conversion 2020-11-05 18:45:37 -04:00
Keys.hs Fix support for readonly git remotes 2021-08-30 12:34:19 -04:00
Queue.hs more RawFilePath conversion 2020-11-05 18:45:37 -04:00
Types.hs simplify and speed up Utility.FileSystemEncoding 2021-08-11 12:13:31 -04:00