I had thought about doing something like that, but I'm not sure how to
do it in a race-free way.  For example if I was to set 'done=yes' on a
file, then check that before trying to download the file, the instant
I try to download the file the writer of the file could remove the
xattr and start updating the file, which seems like it would result in
the client getting a corrupted file.

On Mon, Jan 21, 2013 at 5:11 PM, Gregory Farnum <g...@inktank.com> wrote:
> You must be writing large-ish objects? By default the rados tool will upload 
> objects 4MB at a time and you're trying to download mid-way through the full 
> object upload. You can add a "--block-size 20971520" to upload 20MB in a 
> single operation, but make sure you don't exceed the "osd max write size" 
> (90MB by default).
> This is all client-side stuff, though — from the RADOS object store's 
> perspective, the file is complete after each 4MB write. If you want something 
> more sophisticated (like handling larger objects) you'll need to do at least 
> some minimal tooling of your own, e.g. by setting an object xattr before 
> starting and after finishing the file change, then checking for that presence 
> when reading (and locking on reads or doing a check when the read completes). 
> You can do that with the "setxattr", "rmxattr", and "getxattr" options.
> -Greg
>
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to