when I put the same file with multi threads, sometimes put file
head oid "ref.ioctx.operate(ref.oid, &op); " return -ECANCELED. I think this
is normal.
but fuction jump to done_cancel, and run the
complete_update_index_cancel(or index_op.cancel() ), but osd execute
rgw_bucket_complete_op with CLS_RGW_OP_ADD and file size must be 0;
so at this moment bucket index record file size is zero. I think this is
not right. baijiaruo@xxxxxxx From: Yehuda
Sadeh-Weinraub
Date: 2015-02-05 12:06
To: baijiaruo
CC: ceph-users
Subject: Re: RGW put file
question ----- Original Message -----
> From: baijiaruo@xxxxxxx
> To: "ceph-users" <ceph-users@xxxxxxxxxxxxxx>
> Sent: Wednesday, February 4, 2015 5:47:03 PM
> Subject: RGW put file question
>
> when I put file failed, and run the function "
> RGWRados::cls_obj_complete_cancel",
> why we use CLS_RGW_OP_ADD not use CLS_RGW_OP_CANCEL?
> why we set poolid is -1 and set epoch is 0?
>
I'm not sure, could very well be a bug. It should definitely be OP_CANCEL,
but going back through the history it seems like it has been OP_ADD since at
least argonaut. How did you notice it? It might explain a couple of issues that
we've been seeing.
Yehuda |
_______________________________________________ ceph-users mailing list ceph-users@xxxxxxxxxxxxxx http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com