]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
osd/ReplicatedPG: infer snaps from head when promoting oldest clean clone
authorSage Weil <sage@inktank.com>
Mon, 30 Dec 2013 20:57:28 +0000 (12:57 -0800)
committerSage Weil <sage@inktank.com>
Tue, 14 Jan 2014 00:19:47 +0000 (16:19 -0800)
commit627bdead1ef40cb4cea731f4eadd416551283a01
treeb4928c08ea6983c7e9be6b758d4660d54529af93
parent21f3dcbd3308587a920f82cdcaf97e7784e2d766
osd/ReplicatedPG: infer snaps from head when promoting oldest clean clone

Consider:

 - base and cache have same object foo; marked clean in cache pool
 - modify + clone foo in cache pool.  foo clone is clean.
 - foo clone is evicted
 - foo clone is read, and promoted
 - we read foo@something from base pool, and get the head's content

copy-get does not provide us with a snaps list.  Instead, we use the
snap_seq from the head to infer what the snaps vector was in the cache
pool and will be in the base pool when we flush the updates to the object.

Signed-off-by: Sage Weil <sage@inktank.com>
src/osd/ReplicatedPG.cc