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.




baijia...@126.com

From: Yehuda Sadeh-Weinraub
Date: 2015-02-05 12:06
To: baijiaruo
CC: ceph-users
Subject: Re: [ceph-users] RGW put file question


----- Original Message -----
> From: baijia...@126.com
> To: "ceph-users" <ceph-users@lists.ceph.com>
> Sent: Wednesday, February 4, 2015 5:47:03 PM
> Subject: [ceph-users] 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@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com

Reply via email to