diff options
author | Samuel Just <sam.just@inktank.com> | 2013-09-19 19:51:46 -0700 |
---|---|---|
committer | Samuel Just <sam.just@inktank.com> | 2013-09-19 20:03:50 -0700 |
commit | 03eb3eb697e4d41fd96fdf360ca56486d4e02181 (patch) | |
tree | 88535104acf064d9c063f83fcb54c76723f9bb6d | |
parent | 91dcdec18e5de9d727ec4b4c61a7a547769ad40d (diff) | |
download | ceph-03eb3eb697e4d41fd96fdf360ca56486d4e02181.tar.gz |
FileStore: only remove the omap entries if nlink == 1
Introduced in 17c5d765d7c7573f875f6b3ba66e3b6813110a06
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
-rw-r--r-- | src/os/FileStore.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/os/FileStore.cc b/src/os/FileStore.cc index 5d9e9d1482d..ac51f95006f 100644 --- a/src/os/FileStore.cc +++ b/src/os/FileStore.cc @@ -324,7 +324,8 @@ int FileStore::lfn_unlink(coll_t cid, const hobject_t& o, assert(!m_filestore_fail_eio || r != -EIO); return r; } - force_clear_omap = true; + if (st.st_nlink == 1) + force_clear_omap = true; } if (force_clear_omap) { dout(20) << __func__ << ": clearing omap on " << o |