]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osd: EC Optimizations: Share pwlc between peers
authorBill Scales <bill_scales@uk.ibm.com>
Wed, 26 Mar 2025 08:30:32 +0000 (08:30 +0000)
committerAlex Ainscow <aainscow@uk.ibm.com>
Tue, 22 Apr 2025 07:04:24 +0000 (08:04 +0100)
commitdbfe6b0a4f2f6d1c44f0da11d4c83fb1c12f5434
tree730eb87c934cef65e1e564666d044df57c06a496
parent886112b8136fb05b55be4906dbfd5a85c0db0d64
osd: EC Optimizations: Share pwlc between peers

Optimized EC pools add partial_writes_last_complete (pwlc) data to
pg_info_t to track shards that were not updated because of partial
writes. During peering the primary collects the info structure from
all the replica/strays and then having reconciled the log can send
the info back to peers. Different shards may have newer/older
versions of pwlc, the primary merges these together to create
the definitive copy and then redistributes this to the other shards.

The primary also adjusts the last_update and last_complete values
in the info structure received from peers using the pwlc data to
advance these where shards were not updated because of a partial
write.

Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
src/osd/PeeringState.cc
src/osd/PeeringState.h