[openstack-dev] [cinder] should we use fsync when writing iscsi config file?
Joshua Harlow
harlowja at outlook.com
Fri Oct 2 07:12:32 UTC 2015
A library that seems to have a pretty nice abstraction for this kind of
thing/pattern, could be an idea to use it, or have something similar
like it...
https://boltons.readthedocs.org/en/latest/fileutils.html#atomic-file-saving
-Josh
On Sat, 26 Sep 2015 10:48:39 +0200
Julien Danjou <julien at danjou.info> wrote:
> On Tue, Sep 22 2015, Chris Friesen wrote:
>
> > On 09/22/2015 05:48 PM, Joshua Harlow wrote:
> >> A present:
> >>
> >> >>> import contextlib
> >> >>> import os
> >> >>>
> >> >>> @contextlib.contextmanager
> >> ... def synced_file(path, mode='wb'):
> >> ... with open(path, mode) as fh:
> >> ... yield fh
> >> ... os.fdatasync(fh.fileno())
> >> ...
> >> >>> with synced_file("/tmp/b.txt") as fh:
> >> ... fh.write("b")
> >
> > Isn't that missing an "fh.flush()" somewhere before the fdatasync()?
>
> Unless proven otherwise, close() does a flush().
>
More information about the OpenStack-dev
mailing list