Write Order during Concurrent S3 PUT on RGW

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear All,



RGW provides atomic PUT in order to guarantee write consistency.

cf: https://ceph.io/en/news/blog/2011/atomicity-of-restful-radosgw-operations/

But my understanding is that the are no guarantee regarding the PUT order sequence.
So basically, if doing a storage class migration:
aws s3 cp s3://<bucket-name>/ s3://<bucket-name>/ --recursive --storage-class <storage_class>
Then if another client is writing concurrently in this bucket, a PUT collision could happen.
Is it correct that in this case the slowest PUT would win?
In fact, if the other client starts its PUT after my PUT starts and before my PUT ends,
then my PUT would win, overwriting new data with old data...

Any ideas to prevent that?
Maybe with "radosgw-admin bucket rewrite" ?
Maybe by "locking" the object temporary with an ACL or something else?

This potential issue could also affect LifeCycle Policies that use StorageClass Transition...

Thank you for your help.


Cheers
Francois


--


EveryWare AG
François Scheurer
Senior Systems Engineer
Zurlindenstrasse 52a
CH-8003 Zürich

tel: +41 44 466 60 00
fax: +41 44 466 60 10
mail: francois.scheurer@xxxxxxxxxxxx
web: http://www.everyware.ch
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx

[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux