]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
Adds a new command-line utility which can check the consistency of objects within... 62170/head
authorConnor Fawcett <connorfa@uk.ibm.com>
Tue, 24 Jun 2025 11:45:06 +0000 (12:45 +0100)
committerConnor Fawcett <connorfa@uk.ibm.com>
Fri, 4 Jul 2025 17:47:58 +0000 (18:47 +0100)
commit14a11dedc0db05052879771ad849be79678e529a
tree31cb970d95d5a7e01368e5340a21d5f522d6d239
parent62c6488fd5df7253eb622bb5e1cf63ffd6a55233
Adds a new command-line utility which can check the consistency of objects within an erasure coded pool.
A new test-only inject tells the EC backend to return both data and parity shards to the client so that they can
be checked for consistency by the new tool.

Supports both optimized and unoptimized EC pools.

Signed-off-by: Connor Fawcett <connorfa@uk.ibm.com>
26 files changed:
src/common/json/OSDStructures.cc
src/common/json/OSDStructures.h
src/erasure-code/CMakeLists.txt
src/erasure-code/consistency/CMakeLists.txt [new file with mode: 0644]
src/erasure-code/consistency/ConsistencyChecker.cc [new file with mode: 0644]
src/erasure-code/consistency/ConsistencyChecker.h [new file with mode: 0644]
src/erasure-code/consistency/ECEncoder.cc [new file with mode: 0644]
src/erasure-code/consistency/ECEncoder.h [new file with mode: 0644]
src/erasure-code/consistency/ECEncoderSwitch.cc [new file with mode: 0644]
src/erasure-code/consistency/ECEncoderSwitch.h [new file with mode: 0644]
src/erasure-code/consistency/ECReader.cc [new file with mode: 0644]
src/erasure-code/consistency/ECReader.h [new file with mode: 0644]
src/erasure-code/consistency/Pool.cc [new file with mode: 0644]
src/erasure-code/consistency/Pool.h [new file with mode: 0644]
src/erasure-code/consistency/RadosCommands.cc [new file with mode: 0644]
src/erasure-code/consistency/RadosCommands.h [new file with mode: 0644]
src/erasure-code/consistency/ceph_ec_consistency_checker.cc [new file with mode: 0644]
src/osd/ECBackend.cc
src/osd/ECBackendL.cc
src/osd/ECCommon.cc
src/osd/ECCommon.h
src/osd/ECCommonL.cc
src/osd/ECCommonL.h
src/osd/ECInject.cc
src/osd/ECInject.h
src/osd/OSD.cc