Joe Thornber
|
50bde693a1
|
[thin_check (rust)] Factor out pdata/unpack
|
2020-08-10 15:42:10 +01:00 |
|
Joe Thornber
|
55ee4bfad8
|
[thin_check (rust)] replace IndexVisitor with a call to btree_to_map
|
2020-08-10 14:56:39 +01:00 |
|
Joe Thornber
|
e28c602c3d
|
[thin_check (rust)] factor out btree_to_map() fn
|
2020-08-10 14:45:35 +01:00 |
|
Joe Thornber
|
cbc9c2c72a
|
[thin_check (rust)] Improve data_sm handling
|
2020-08-10 12:56:41 +01:00 |
|
Joe Thornber
|
4e4b7ca2b1
|
[thin_check (rust)] add --sync-io flag
Makes it easier to switch between engines
|
2020-08-10 11:24:50 +01:00 |
|
Joe Thornber
|
0f865856ed
|
[thin_check (rust)] Improve SyncIoEngine.
Now opens the file multiple times so different threads can do io in parallel.
|
2020-08-10 10:44:47 +01:00 |
|
Joe Thornber
|
f0df17af9e
|
[thin_check (rust)] Get SyncIoEngine working again.
|
2020-08-10 08:59:02 +01:00 |
|
Joe Thornber
|
08e3ea948e
|
[thin_check (rust)] rename block_manager.rs -> io_engine.rs
|
2020-08-10 08:29:32 +01:00 |
|
Joe Thornber
|
fd0c0ffc1d
|
[thin_check (rust)] data space map now checked.
|
2020-08-08 16:42:32 +01:00 |
|
Joe Thornber
|
4054b1be4c
|
[thin_check (rust)] Switch to BTreeMap.
It's faster.
|
2020-08-08 14:58:13 +01:00 |
|
Joe Thornber
|
1e4a038b41
|
[thin_check (rust)] Reimplement CoreSpaceMap
We now use a simple vector of elements that can hold 'nr thin devs'. Much faster.
|
2020-08-08 13:29:30 +01:00 |
|
Joe Thornber
|
ec8f7b7fa8
|
[thin_check (rust)] Keep track of data block ref counts
as we walk the mapping tree.
|
2020-08-08 09:54:16 +01:00 |
|
Joe Thornber
|
8f76371bb2
|
[functional-tests] Fix clippy warnings
|
2020-08-07 15:41:21 +01:00 |
|
Joe Thornber
|
fa4ea3e2d9
|
[functional-tests] port some of the cache_check tests to Rust
|
2020-08-07 14:30:00 +01:00 |
|
Joe Thornber
|
4a0582bb5d
|
[thin_check (rust)] start decoding the space maps.
|
2020-08-06 07:51:48 +01:00 |
|
Joe Thornber
|
197e4ffbfd
|
[thin_check (rust)] Rename ValueType trait to Unpack
|
2020-08-05 08:01:02 +01:00 |
|
Joe Thornber
|
1d44025584
|
[thin_check (rust)] Walk the top level and bottom level of the mapping tree separately
|
2020-08-04 12:11:36 +01:00 |
|
Joe Thornber
|
f56ea2d031
|
[thin_check (rust)] walk devices tree.
|
2020-08-03 16:22:08 +01:00 |
|
Joe Thornber
|
1368227a71
|
[thin_check (rust)] add btree node checks
|
2020-08-03 15:04:59 +01:00 |
|
Joe Thornber
|
cc2582b8b1
|
[thin_check (rust)] factor out pdata/btree.rs
|
2020-08-03 12:37:32 +01:00 |
|
Joe Thornber
|
7243f95380
|
[thin_check (rust)] Drop nr threads down to 4
We get very little benefit from threads atm. Need to improve IO handling first.
|
2020-07-30 10:17:36 +01:00 |
|
Joe Thornber
|
de172147d3
|
[thin_check (rust)] squash a lot of warnings
|
2020-07-30 10:12:51 +01:00 |
|
Joe Thornber
|
f7623e6264
|
[thin_check (rust)] remove spurious mutex.
|
2020-07-30 09:59:02 +01:00 |
|
Joe Thornber
|
8146fba9d2
|
[thin_check (rust)] Move mutex inside IoEngines.
Makes it easier to share an engine between different threads.
|
2020-07-30 08:47:16 +01:00 |
|
Joe Thornber
|
4f120911d2
|
[thin_check (rust)] First attempt at multithreading the tree walking.
Still using a single io engine, so little benefit.
|
2020-07-29 16:38:52 +01:00 |
|
Joe Thornber
|
d5597d5d36
|
[thin_check (rust)] Factor out tree walking code
|
2020-07-29 11:12:03 +01:00 |
|
Joe Thornber
|
e9abdd9c88
|
[thin_check (rust)] Switch to a different io_uring crate.
This one works.
|
2020-07-28 12:57:30 +01:00 |
|
Joe Thornber
|
a90294e279
|
[thin_check (rust)] read many blocks at once.
We need to switch to io_uring to really get the benefit of this.
|
2020-07-28 11:45:25 +01:00 |
|
Joe Thornber
|
062a1b8a2c
|
[thin_check (rust)] Walk mapping tree.
Sync IO, no checks beyond checksumming.
|
2020-07-28 10:51:48 +01:00 |
|
Joe Thornber
|
1398cf31d1
|
[thin_check (Rust)] work in progress
|
2020-07-27 15:53:42 +01:00 |
|
Joe Thornber
|
3cf6307762
|
Merge branch 'master' into 2020-06-13-thin-check-rewrite
|
2020-07-27 15:53:26 +01:00 |
|