RGW maintains a manifest of each object. The class RGWObjManifest
implements the details with object head, tail placement.
Manifest is written as XATTRs along with RGWRados::Object::Write::_do_write_meta( )
.
/**
* Write/overwrite an object to the bucket storage.
* bucket: the bucket to store the object in
* obj: the object name/key
* data: the object contents/value
* size: the amount of data to write (data must be this long)
* accounted_size: original size of data before compression, encryption
* mtime: if non-NULL, writes the given mtime to the bucket storage
* attrs: all the given attrs are written to bucket storage for the given object
* exclusive: create object exclusively
* Returns: 0 on success, -ERR# otherwise.
*/
Written with StackEdit.
No comments:
Post a Comment