Project

General

Profile

Actions

Bug #38060

closed

rgw:versioning:fix versioning concurrent bug, supplement using of olh.ver

Added by hao wang over 5 years ago. Updated about 5 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Target version:
-
% Done:

0%

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

Description

when i learn about the implementation scheme of rgw versioning, i found the olh.ver is not used, which causes concurrent issue:
the process of put object to versioned bucket: fist, add key_[V1] to data pool; second, set 1001_key in index pool to 1000_key_V1; third, read log in 1001_key, then based on these logs, set the olh.info of olh object to V1, which means the newest version.
While, in the third phase, when rgw1 read log{op_tag1} then rgw1 halt here. Meanwhile, rgw2 put a new verison V2, after phase second, read log{op_tag1, op_tag2}, then change the olh.info to V2. Then rgw1 change the olh.info to V1, which is old instance actually.
The auth design the olh.ver to avoid this issue actually, while he forget to add the setxattr in phase third.


Related issues 2 (0 open2 closed)

Copied to rgw - Backport #38414: luminous: rgw:versioning:fix versioning concurrent bug, supplement using of olh.verResolvedCasey BodleyActions
Copied to rgw - Backport #38415: mimic: rgw:versioning:fix versioning concurrent bug, supplement using of olh.verResolvedPrashant DActions
Actions #2

Updated by Kefu Chai about 5 years ago

  • Status changed from New to Fix Under Review
  • Assignee set to hao wang
  • Pull request ID set to 26197
Actions #3

Updated by Casey Bodley about 5 years ago

  • Status changed from Fix Under Review to 7
Actions #4

Updated by Matt Benjamin about 5 years ago

  • Status changed from 7 to Pending Backport
  • Backport set to mimic, luminous
Actions #5

Updated by Casey Bodley about 5 years ago

  • Copied to Backport #38414: luminous: rgw:versioning:fix versioning concurrent bug, supplement using of olh.ver added
Actions #6

Updated by Casey Bodley about 5 years ago

  • Copied to Backport #38415: mimic: rgw:versioning:fix versioning concurrent bug, supplement using of olh.ver added
Actions #7

Updated by Nathan Cutler about 5 years ago

  • Status changed from Pending Backport to Resolved
Actions

Also available in: Atom PDF