Project

General

Profile

Actions

Bug #18292

open

multisite: improved consistency model for requests forwarded to meta master

Added by Casey Bodley over 7 years ago. Updated over 4 years ago.

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

0%

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

Description

When a metadata request (such as bucket a operation) is sent to a non-master zone, the request is forwarded to the metadata master zone. On a successful reply from the master, we return that to the client. But this only guarantees that the metadata update has been applied on the master - it's not applied on the non-master zone until metadata sync fetches the update. This leaves a window between responding to the client and fetching the updated metadata where the changes are not visible to clients of the non-master zone.

The issue came up in http://tracker.ceph.com/issues/18003 with respect to bucket versioning changes, and was fixed by writing the change locally after getting a successful reply from the master. This could lead to races between the write and other metadata updates synced from the master. It could also lead to inconsistencies in the metadata itself, like the mtime for example.

The non-master zone should probably just read the updated metadata from the master zone, and write that locally. This should work as long as this write and the writes from metadata sync both respect the same object versioning requirements.


Related issues 1 (0 open1 closed)

Related to rgw - Bug #18003: slave zonegroup cannot enable the bucket versioningResolved11/23/2016

Actions
Actions #1

Updated by Casey Bodley over 7 years ago

  • Related to Bug #18003: slave zonegroup cannot enable the bucket versioning added
Actions #2

Updated by Nathan Cutler over 7 years ago

  • Project changed from Ceph to rgw
Actions #3

Updated by Nathan Cutler over 7 years ago

  • Related to Bug #18003: slave zonegroup cannot enable the bucket versioning added
Actions #4

Updated by Orit Wasserman over 7 years ago

  • Backport set to jewel
Actions #5

Updated by Orit Wasserman about 7 years ago

  • Backport changed from jewel to jewel, kraken
Actions #6

Updated by Matt Benjamin over 6 years ago

  • Priority changed from High to Normal
Actions #7

Updated by Matt Benjamin over 6 years ago

  • Status changed from New to 12
Actions #8

Updated by Patrick Donnelly over 4 years ago

  • Status changed from 12 to New
Actions

Also available in: Atom PDF