16.2.5 GA

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
This commit is contained in:
Kaleb S. KEITHLEY 2021-07-08 18:05:49 -04:00
parent f6c80111f0
commit c5116a4d3d
3 changed files with 7 additions and 61 deletions

View File

@ -1,57 +0,0 @@
From 3aa31813980d22719277a04797df48310acdff66 Mon Sep 17 00:00:00 2001
From: Jonas Jelten <jj@sft.lol>
Date: Mon, 15 Mar 2021 23:21:07 +0100
Subject: [PATCH] os/bluestore: strip trailing slash for directory listings
Calls to BlueRocksEnv::GetChildren may contain a trailing / in the
queried directory, which is stripped away with this patch.
If it's not stripped, the directory entry is not found in BlueFS:
```
10 bluefs readdir db/
20 bluefs readdir dir db/ not found
3 rocksdb: [db/db_impl/db_impl_open.cc:1785] Persisting Option File error: OK
```
Fixes: https://tracker.ceph.com/issues/49815
Signed-off-by: Jonas Jelten <jj@sft.lol>
---
src/os/bluestore/BlueFS.cc | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/os/bluestore/BlueFS.cc b/src/os/bluestore/BlueFS.cc
index ea39626aef..62b9d27f58 100644
--- a/src/os/bluestore/BlueFS.cc
+++ b/src/os/bluestore/BlueFS.cc
@@ -3493,9 +3493,14 @@
int BlueFS::readdir(const string& dirname, vector<string> *ls)
{
+ std::string dname = dirname;
+ // dirname may contain a trailing /
+ if (!dname.empty() && dname.back() == '/') {
+ dname.pop_back();
+ }
std::lock_guard l(lock);
- dout(10) << __func__ << " " << dirname << dendl;
- if (dirname.empty()) {
+ dout(10) << __func__ << " " << dname << dendl;
+ if (dname.empty()) {
// list dirs
ls->reserve(dir_map.size() + 2);
for (auto& q : dir_map) {
@@ -3503,9 +3508,9 @@
}
} else {
// list files in dir
- map<string,DirRef>::iterator p = dir_map.find(dirname);
+ map<string,DirRef>::iterator p = dir_map.find(dname);
if (p == dir_map.end()) {
- dout(20) << __func__ << " dir " << dirname << " not found" << dendl;
+ dout(20) << __func__ << " dir " << dname << " not found" << dendl;
return -ENOENT;
}
DirRef dir = p->second;
--
2.26.2

View File

@ -125,8 +125,8 @@
# main package definition
#################################################################################
Name: ceph
Version: 16.2.4
Release: 6%{?dist}
Version: 16.2.5
Release: 1%{?dist}
%if 0%{?fedora} || 0%{?rhel}
Epoch: 2
%endif
@ -150,7 +150,6 @@ Patch0006: 0006-src-blk-CMakeLists.txt.patch
Patch0007: 0007-src-test-neorados-CMakeLists.txt.patch
Patch0008: 0008-cmake-modules-Finduring.cmake.patch
Patch0009: 0009-librgw-notifications-initialize-kafka-and-amqp.patch
Patch0010: 0010-os-bluestore-strip-trailing-slash-for-directory-list.patch
Patch0011: 0011-src-test-rgw-amqp_mock.cc.patch
Patch0012: 0012-src-compressor-snappy-SnappyCompressor.h.patch
Patch0013: 0013-src-common-Formatter.cc.patch
@ -1809,6 +1808,7 @@ fi
%{_datadir}/ceph/mgr/localpool
%{_datadir}/ceph/mgr/mds_autoscaler
%{_datadir}/ceph/mgr/mirroring
%{_datadir}/ceph/mgr/nfs
%{_datadir}/ceph/mgr/orchestrator
%{_datadir}/ceph/mgr/osd_perf_query
%{_datadir}/ceph/mgr/osd_support
@ -2502,6 +2502,9 @@ exit 0
%config %{_sysconfdir}/prometheus/ceph/ceph_default_alerts.yml
%changelog
* Thu Jul 8 2021 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 2:16.2.5-1
- 16.2.5 GA
* Mon Jul 05 2021 Richard Shaw <hobbes1069@gmail.com> - 2:16.2.4-6
- Rebuild for new fmt version.

View File

@ -1 +1 @@
SHA512 (ceph-16.2.4.tar.gz) = 8904e7fcabd50276e4e86735fd85dba96f417c194c219025146f994707def7abe372528b0f2e862e274b2f405d7b791bac86b6cbb8d57cecd6f44023a2ffb6f6
SHA512 (ceph-16.2.5.tar.gz) = 5c32f9aa817ecfa788725bcfe5743756853ca9b3f9ee453242110f1b5e1bdd1feaef79ad9ccf2b185445c9644bcecb1355e151a2255bfd27edc9818e0d6d4c4a