Project

General

Profile

Actions

Bug #61518

closed

Crimson/SeaStore: committing EXIST_MUTATION_PENDING extents cannot propagate transaction conflicts

Added by Yingxin Cheng 11 months ago. Updated 11 months ago.

Status:
Won't Fix
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

Source:
Tags:
seastore
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

See https://github.com/ceph/ceph/pull/45519/commits/84400c374d66cdd1e3d27db1e60ee4cd6e1425d1#diff-2d1edaa7a9eebb3a65135f5af648dd069934fa6bf6e6e0339b5771b0daef3727R1057-R1065 and https://github.com/ceph/ceph/pull/45519/commits/97dcfbaed6bc2bc7edafd76880ec03ebcf141386#diff-b936eff13f18e7f87c2b403accb045ed66577ff93091c3b216dbeb7228082b4bR97-R101

It should be incorrect to skip assigning prior_instance to EXIST_MUTATION_PENDING extents, and incorrect to skip calling invalidate_extent() to propagate transaction conflicts.

The comment https://github.com/ceph/ceph/pull/47749#discussion_r1125882313 should be addresses at the same time in order to clarify the invarents about the presence of prior_instance at the level of CachedExtent.

Actions #1

Updated by Yingxin Cheng 11 months ago

  • Status changed from New to Won't Fix

I was missing that EXIST_MUTATION_PENDING extent doesn't generate conflict through a prior_instance, it generates conflict through the retired original extent.

Actions

Also available in: Atom PDF