Vitaliy Filippov
c53357ac45
Add a test for EC segfault with partial overwrite in 1234 -> 5030 rebalance scenario
2024-02-11 13:42:51 +03:00
Vitaliy Filippov
becf14a705
Add a test for EC with multiple missing data chunks, but without recovery of first of them
2023-11-04 01:34:18 +03:00
Vitaliy Filippov
f1961157f0
Fix brute-force error locator for EC n+k with k > 2
2023-05-21 00:57:14 +03:00
Vitaliy Filippov
281be547eb
Implement brute-force error locator for EC
2023-05-20 23:19:39 +03:00
Vitaliy Filippov
44f86f1999
Add a basic EC 2+2 recovery test (not really required, but let it be there)
2023-05-07 11:26:27 +03:00
Vitaliy Filippov
2d9a80c6f6
Implement missing bitmap recovery with ISA-L \(°□°)/
2023-05-07 11:25:51 +03:00
Vitaliy Filippov
3237014608
Fix incorrect parity read-modify-write calculation when writing into a lost chunk
2023-04-09 02:06:10 +03:00
Vitaliy Filippov
1e307069bc
Fix missing parity chunk calculation for EC n+k, k > 1 and first parity chunk missing
2023-02-28 02:40:19 +03:00
Vitaliy Filippov
36a7dd3671
Move tests to "make test"
2023-02-21 01:30:42 +03:00
Vitaliy Filippov
8d55a1e780
Build osd_rmw_test both with and without ISA-L
2022-12-29 19:13:57 +03:00
Vitaliy Filippov
fd216eac77
Add a test for missing parity chunk calculation
2022-12-29 19:13:57 +03:00
Vitaliy Filippov
09a8864686
Fix degraded parity writes for EC N+K when K>1
...
Fixes possible `calc_rmw_parity_ec(): Assertion `bufs[i][curbuf[i]].buf' failed` error
2022-11-20 00:50:13 +03:00
Vitaliy Filippov
a0cae4c180
Rename "jerasure" to "ec" in pool configuration, function names, fix documentation and Debian build scripts
...
Old pool configurations with "jerasure" also remain supported as an alias for "ec"
2022-06-03 15:40:00 +03:00
Vitaliy Filippov
7bdd92ca4f
Fix build under clang and some warnings
...
Build problems fixed:
- void* pointer arithmetic which is a GNU extension (works as byte*)
- "variable size object may not be initialized" which is OK under GCC
- nullptr_t related error in json11 (it lacks 'operator <' in clang)
Warnings fixed:
- empty nested struct initializer { 0 } replaced by {}
- removed several unused lambda captures
2022-01-16 00:02:54 +03:00
Vitaliy Filippov
6bf88883ac
Allocate bitmaps along with stripes to avoid memory fragmentation
2021-04-10 17:44:12 +03:00
Vitaliy Filippov
95c29b9dc3
Add "external" bitmap support to osd_rmw
2021-04-10 17:44:12 +03:00
Vitaliy Filippov
bf9a175efc
Move C/C++ sources to src subdirectory
2021-02-25 23:59:03 +03:00