From: Sage Weil Date: Tue, 22 Dec 2015 21:38:34 +0000 (-0500) Subject: os/bluestore/BlueFS: do not flush metadata on flush() X-Git-Tag: v10.0.3~154^2~58 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=93964a72f21e6f8110fed69ea158eb0b4dbae480;p=ceph.git os/bluestore/BlueFS: do not flush metadata on flush() That's what fsync is for. Moreover, this can lead to some squirreliness if we trigger this from _flush_log(). Signed-off-by: Sage Weil --- diff --git a/src/os/bluestore/BlueFS.cc b/src/os/bluestore/BlueFS.cc index 56d7f4af8f5..060d8e3672d 100644 --- a/src/os/bluestore/BlueFS.cc +++ b/src/os/bluestore/BlueFS.cc @@ -988,12 +988,7 @@ int BlueFS::_flush(FileWriter *h, bool force) return 0; } if (length == 0) { - if (h->file->dirty) { - dout(10) << __func__ << " " << h << " no data, flushing metadata on " - << h->file->fnode << dendl; - return _flush_log(); - } - dout(10) << __func__ << " " << h << " no dirty data or metadata on " + dout(10) << __func__ << " " << h << " no dirty data on " << h->file->fnode << dendl; return 0; }