[sheepdog] [PATCH 2/3] util:add a new API atomic_create_and_write()
Hitoshi Mitake
mitake.hitoshi at gmail.com
Wed Apr 17 08:00:57 CEST 2013
At Wed, 17 Apr 2013 13:55:09 +0800,
Liu Yuan wrote:
>
> On 04/17/2013 01:45 PM, Hitoshi Mitake wrote:
> > + if (!access(tmp_path, F_OK))
> > + panic("temporal file: %s exists, this implies invalid usage of"
> > + " atomic_create_and_write() of sheepdog", tmp_path);
>
> panic() is too stringent and not necessary. open(2) will return error if
> it has any problem with the tmp_path. So I'd suggest remove this if clause.
I admit the access(2) is unnecesary because open(2) can fail with
EEXIST. But I believe this panic() is required because existing
temporal files imply misuage of the API. I believe we should employ
defensive way.
How do you think?
Thanks,
Hitoshi
More information about the sheepdog
mailing list