1
0
Fork 0
mirror of https://github.com/restic/restic.git synced 2024-12-25 01:06:39 +00:00
restic/internal
Alexander Weiss ce4a2f4ca6 save packIDs and duplicates separately
A side remark to the definition of Index.blob:

Another possibility would have been to use:
blob       map[restic.BlobHandle]*indexEntry

This would have led to the following sizes:
key: 32 + 1 = 33 bytes
value: 8 bytes
indexEntry:  8 + 4 + 4 = 16 bytes
each packID: 32 bytes

To save N index entries, we would therefore have needed:
N * OF * (33 + 8) bytes + N * 16 + N * 32 bytes / BP = N * 82 bytes

More precicely, using a pointer instead of a direct entry is the better memory choice if:
OF * 8 bytes + entrysize < OF * entrysize <=> entrysize > 8 bytes * OF/(OF-1)
Under the assumption of OF=1.5, this means using pointers would have been the better choice
if sizeof(indexEntry) > 24 bytes.
2020-06-14 07:56:21 +02:00
..
archiver Merge pull request #2779 from greatroar/archiver-comment 2020-06-12 23:04:21 +02:00
backend Fix context usage in backend tests 2020-04-18 17:39:06 +02:00
cache Honor RESTIC_CACHE_DIR on Mac and Windows 2020-02-28 15:44:32 +01:00
checker remove unnecessary error return 2020-01-27 18:28:21 +03:00
crypto Typo in crypto test name 2020-04-18 17:39:06 +02:00
debug Remove build tag release 2018-10-11 19:40:38 +02:00
errors backup: Improve error message for invalid pattern 2018-10-03 11:12:51 +02:00
filter filter: Allow double wildcard in ChildMatch 2018-06-09 23:18:13 +02:00
fs Merge pull request #2583 from greatroar/unused 2020-03-01 10:46:17 +01:00
fuse Simplify build tags for restic mount 2020-05-12 11:30:41 +02:00
hashing Micro-optimization for hashing.Writer/PackerManager 2020-03-05 22:30:04 +01:00
index Move Index.FindBlob to tests 2020-04-29 10:57:01 +02:00
limiter rclone: Respect bandwith limits 2018-05-22 20:48:17 +02:00
migrations clean up some errors from 'go vet ./...' 2018-09-05 08:04:55 -04:00
mock mock: Remove unused repository type 2019-04-13 13:38:39 +02:00
options improved slice copying 2019-06-30 23:56:36 +03:00
pack Move testing logic to test file in internal/pack 2020-03-09 14:32:28 +01:00
repository save packIDs and duplicates separately 2020-06-14 07:56:21 +02:00
restic Merge pull request #2709 from greatroar/minio-sha256 2020-06-12 23:32:58 +02:00
restorer Fix non-intuitive repository behavior 2020-06-11 13:05:23 +02:00
selfupdate self-update: Don't cancel download after 30 seconds 2019-02-23 11:15:18 +01:00
test Remove remnant of Go 1.9 compatibility code from tests 2020-02-26 22:23:38 +01:00
textfile Add textfile 2018-05-01 14:38:59 +02:00
ui termstatus: Use io.WriteString to output messages. 2020-03-26 14:55:00 -07:00
walker walk: Pass parent tree ID to WalkFunc 2018-08-19 23:28:04 +02:00