Project

General

Profile

Actions

Feature #10866

open

replicas need to track unstable objects to properly support replica reads

Added by Samuel Just about 9 years ago. Updated about 9 years ago.

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

0%

Source:
other
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Description

At the moment, we do not track objects which are unstable due to a queued primary write. A client might then write (to the primary), get a commit, read from the replica, and get the old version because, while the replica has journaled the write, it has not yet applied it. The primary handles this with the ObjectContext rwstate tracker by blocking the read until the write is applied locally. The replica needs a similar machanism. Probably, we simply distinguish part of the ObjectContext as vaild/required on the replica and use the existing object context machinery (with no cache?).

A crucial part of this task is updating the ceph_test_rados tool to accept a read_from_replica option to enable the librados read from replica feature on some reads, as well as poking the functionality into the ceph-qa-suite rados.py task and some suite yamls.


Related issues 2 (1 open1 closed)

Has duplicate Ceph - Bug #19868: osd: fix osd balance reads might not get expected length of file content from replica osdDuplicateZhi Zhang05/05/2017

Actions
Blocks Ceph - Feature #10865: Handle delete log entries in merge_log out of band without blocking peeringNew02/12/2015

Actions
Actions #1

Updated by Samuel Just about 9 years ago

  • Target version deleted (v0.94)
Actions #2

Updated by Greg Farnum almost 7 years ago

  • Has duplicate Bug #19868: osd: fix osd balance reads might not get expected length of file content from replica osd added
Actions

Also available in: Atom PDF