Project

General

Profile

Actions

Bug #50194

closed

librgw: make rgw file handle versioned

Added by Xuehan Xu about 3 years ago. Updated over 1 year ago.

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

100%

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

Description

The reason that we need this is that there could be the following scenario:

rgw_setattr sets the file attr;
rgw_write writes some new data, and encodes its attr to store into rados;
before the actual persistence of the file's attr bl, rgw_lookup loads the file's
previous attr and modifies the current file handle's metadata;
rgw_write's result persisted to rados;
rgw_setattr set the current file handle's metadata which is actually an old one to rados
In this case, the attr in rados would be out of date which means loss of data


Related issues 3 (0 open3 closed)

Copied to rgw - Backport #54083: pacific: librgw: make rgw file handle versionedResolvedCory SnyderActions
Copied to rgw - Backport #54084: quincy: librgw: make rgw file handle versionedResolvedCory SnyderActions
Copied to rgw - Backport #54085: octopus: librgw: make rgw file handle versionedResolvedCory SnyderActions
Actions

Also available in: Atom PDF