diff options
author | Sage Weil <sage@newdream.net> | 2012-01-24 21:34:27 -0800 |
---|---|---|
committer | Sage Weil <sage@newdream.net> | 2012-01-24 21:34:27 -0800 |
commit | 44b11441ad3ef231ff207476bbb0d2e8ab130f26 (patch) | |
tree | a19e1d7434af72f5a1c2e32b303f465dca793773 | |
parent | abc005a5df29446bf309d80dbe8019482606b2c0 (diff) | |
download | ceph-44b11441ad3ef231ff207476bbb0d2e8ab130f26.tar.gz |
osd: set object_info_t::oid properly when recovering clones
I saw a case (#1973) where the clone had the oid set to the head. That is
clearly wrong. Not sure what damage this caused.
Signed-off-by: Sage Weil <sage@newdream.net>
-rw-r--r-- | src/osd/ReplicatedPG.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index f344ad8897e..1d7fd422ff4 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -5247,6 +5247,7 @@ int ReplicatedPG::recover_primary(int max) ObjectContext *headobc = get_object_context(head, OLOC_BLANK, false); object_info_t oi(headobc->obs.oi); + oi.soid = soid; oi.version = latest->version; oi.prior_version = latest->prior_version; bufferlist::iterator i = latest->snaps.begin(); |