From 2d3fb03e194c8ed99436239bab66d161b8316bca Mon Sep 17 00:00:00 2001 From: Greg Farnum Date: Mon, 26 Feb 2018 13:33:45 -0800 Subject: [PATCH] bluestore: correctly check all block devices to decide if journal is_rotational Fixes: http://tracker.ceph.com/issues/23141 Signed-off-by: Greg Farnum --- src/os/bluestore/BlueFS.cc | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/os/bluestore/BlueFS.cc b/src/os/bluestore/BlueFS.cc index df98aae3267..35b4be35b85 100644 --- a/src/os/bluestore/BlueFS.cc +++ b/src/os/bluestore/BlueFS.cc @@ -2448,7 +2448,10 @@ int BlueFS::unlink(const string& dirname, const string& filename) bool BlueFS::wal_is_rotational() { - if (!bdev[BDEV_WAL] || bdev[BDEV_WAL]->is_rotational()) - return true; - return false; + if (bdev[BDEV_WAL]) { + return bdev[BDEV_WAL]->is_rotational(); + } else if (bdev[BDEV_DB]) { + return bdev[BDEV_DB]->is_rotational(); + } + return bdev[BDEV_SLOW]->is_rotational(); }