[ceph-users] Failed to repair pg

David Zafman dzafman at redhat.com
Thu Mar 7 19:48:59 PST 2019


On 3/7/19 9:32 AM, Herbert Alexander Faleiros wrote:
> On Thu, Mar 07, 2019 at 01:37:55PM -0300, Herbert Alexander Faleiros wrote:
> Should I do something like this? (below, after stop osd.36)
>
> # ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-36/ --journal-path /dev/sdc1 rbd_data.dfd5e2235befd0.000000000001c299 remove-clone-metadata 326022
>
> I'm no sure about rbd_data.$RBD and $CLONEID (took from rados
> list-inconsistent-obj, also below).


See what results you get from this command.

# rados list-inconsistent-snapset 2.2bb --format=json-pretty

You might see this, so nothing interesting.  If you don't get json, then 
re-run a scrub again.

{
     "epoch": ######,
     "inconsistents": []
}

I don't think you need to do the remove-clone-metadata because you got 
"unexpected clone" so I think you'd get "Clone 326022 not present"

I think you need to remove the clone object from osd.12 and osd.80.  For 
example:

# ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-12/ 
--journal-path /dev/sdXX --op list rbd_data.dfd5e2235befd0.000000000001c299

["2.2bb",{"oid":"rbd_data.dfd5e2235befd0.000000000001c299","key":"","snapid":-2,"hash":########,"max":0,"pool":2,"namespace":"","max":0}]
["2.2bb",{"oid":"rbd_data.dfd5e2235befd0.000000000001c299","key":"","snapid":326022,"hash":#########,"max":0,"pool":2,"namespace":"","max":0}]

Use the json for snapid 326022 to remove it.

# ceph-objectstore-tool --data-path /var/lib/ceph/osd/ceph-12/ 
--journal-path /dev/sdXX 
'["2.2bb",{"oid":"rbd_data.dfd5e2235befd0.000000000001c299","key":"","snapid":326022,"hash":#########,"max":0,"pool":2,"namespace":"","max":0}]' 
remove


David



More information about the ceph-users mailing list