Marcus Holland-Moritz
88425dd38f
docs(metadata): rationale for using feature strings
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
eff100c202
chore: update TODO
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
63533a0a5b
feat(mkdwarfs): add --history-compression option
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
db2bd1f69a
docs(mkdwarfs): update section on producing bit-identical images
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
2bf6699241
docs(mkdwarfs): add new history related options
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
e9279590a0
test(nilsimsa): ensure that nilsimsa order is reproducible
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
f35f4c7bd7
fix: add missing case to file_order_mode ostream operator
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
f5e97a3212
test: support adding files with random contents
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
46bd4dd11d
chore(docker): fix running git in docker /workspace directory
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
07412cb7c0
feat(fuse-driver): implement dwarfs.inodeinfo xattr
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
c2840cbe79
feat(filesystem): initial support for file system history
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
b508f4a7b9
chore(metadata): add uint8 typedef for completeness
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
8dae679ad4
feat(forward-compat): allow unknown section/compression types (gh #158 )
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
95eac672f8
feat(metadata): add block category information
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
6aba533688
chore: update TODOs
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
1b0d34accc
feat(logging): enable logging context at verbose level
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
912bd25a4a
feat(logging): more colours to distinguish log levels
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
92d6691b74
fix(block_merger): correctly compute queueable size
...
Don't assume that the block size doesn't change during a block's
lifetime. Blocks can be compressed in the background and shrink in
size. So instead of subtracting the block size from a queueable_size_
member and later adding a (potentially smaller) size back, we always
compute the queueable size from the queued size (by traversing all
queues), the releaseable size, and the maximum queueable size.
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
071da719cb
feat(filesystem_writer): use fsblock policy for block merger
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
c2ceeee9bd
docs(block_merger): add TODO about holder lifetime
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
6ca388fa6b
feat(block_merger): support block policies and partial release
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
a284aecc35
fix: update header size for Wave 64 format
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
cebfea15c1
chore: another attempt at fixing rebuilds
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
32da9c7577
chore: include run number/attempt when storing artifacts
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
8cf0642c3a
chore: pass some more action variable to CMakeLists.txt
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
fbad13553d
feat: allow setting worker group cpu affinity
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
85bc819fa7
refactor: add debug logging in multi_queue_block_merger
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
4ad155e19f
refactor: ostream/format support for fragment_category
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
d938191248
feat: integrate block merger for deterministic file system writing
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
cfb894e192
refactor: keep code for dumping file systems in case of errors
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
80b11347e1
fix: output threshold comparison in test logger
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
956294b6b9
refactor: check source validity in multi_queue_block_merger
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
69ffdf3e28
refactor: make merged_block_holder more flexible
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
181427c6ab
refactor: expose block_holder_type in multi_queue_block_merger
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
25d5390704
refactor: add safety checks to block manager
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
36cbd83ba4
refactor: replace block_merger is_last with separate call
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
442e7b8fd5
refactor: use callback for delayed updating of physical block numbers
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
a37c2716c8
feat: make number of segmenter worker threads configurable
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
18cd20ea03
fix: use correct worker pool, otherwise we can stall
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
5579b35a52
refactor: use holders to simplify releasing merged blocks
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
65a954b681
refactor: naming in multi_queue_block_merger
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
20e4a83b92
feat: add multi queue block merger + unit tests
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
f2249f3b6c
doc: update TODOs
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
d59ff62ad7
build: add example for setting per-file compile options
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
fb8c01cf18
Clean up console writer
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
f8e7f66b6a
Output metadata size in verbose mode
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
bff7e1b4b0
Support validation function in integral_value_parser
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
5046930d17
Use unsigned bytes in cyclic hash
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
3dd82bc085
Use zstd instead of lz4 for incompressible categorizer
2023-12-17 23:02:28 +01:00
Marcus Holland-Moritz
b101694d06
Fix segmenter for the case when segmenting is disable
2023-12-17 23:02:28 +01:00