From 544ca22ddb009228bc0aaf0e22f9d37bed154848 Mon Sep 17 00:00:00 2001 From: zhouwenpei Date: Thu, 27 Jan 2022 10:23:55 +0800 Subject: [PATCH] fix ceph dh function unavaliable (cherry picked from commit 1d3f57caaf3a91da548e16f6e5f4e3dc2b38adf8) --- ceph.spec | 45 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 44 insertions(+), 1 deletion(-) diff --git a/ceph.spec b/ceph.spec index 2a5db78..a46b1ea 100644 --- a/ceph.spec +++ b/ceph.spec @@ -68,7 +68,7 @@ ################################################################################# Name: ceph Version: 12.2.8 -Release: 16 +Release: 17 Epoch: 2 # define _epoch_prefix macro which will expand to the empty string if epoch is @@ -108,6 +108,8 @@ Patch21: 0021-common-mempool-Add-test-for-mempool-shards.patch Patch22: 0022-common-mempool-Modify-shard-selection-function.patch Patch23: 0023-common-mempool-only-fail-tests-if-sharding-is-very-b.patch +Requires: glibc >= 2.28-66 + %if 0%{?suse_version} %if 0%{?is_opensuse} ExclusiveArch: x86_64 aarch64 ppc64 ppc64le @@ -288,6 +290,7 @@ Requires: which %if 0%{?suse_version} Recommends: ntp-daemon %endif +Requires:glibc >= 2.28-66 %description base Base is the package that includes all the files shared amongst ceph servers @@ -314,6 +317,7 @@ Requires: python-requests %if 0%{?suse_version} Requires(pre): pwdutils %endif +Requires:glibc >= 2.28-66 %description -n ceph-common Common utilities to mount and interact with a ceph storage cluster. Comprised of files that are common to Ceph clients and servers. @@ -324,6 +328,7 @@ Summary: Ceph Metadata Server Daemon Group: System/Filesystems %endif Requires: ceph-base = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description mds ceph-mds is the metadata server daemon for the Ceph distributed file system. One or more instances of ceph-mds collectively manage the file system @@ -343,6 +348,7 @@ Requires: python-flask %if 0%{?suse_version} Requires: python-Flask %endif +Requires:glibc >= 2.28-66 %description mon ceph-mon is the cluster monitor daemon for the Ceph distributed file system. One or more instances of ceph-mon form a Paxos part-time @@ -369,6 +375,7 @@ Requires: python-Werkzeug Requires: python-pyOpenSSL %endif Requires: python-pecan +Requires:glibc >= 2.28-66 %description mgr ceph-mgr enables python modules that provide services (such as the REST module derived from Calamari) and expose CLI hooks. ceph-mgr gathers @@ -381,6 +388,7 @@ Summary: Ceph fuse-based client Group: System/Filesystems %endif Requires: fuse +Requires:glibc >= 2.28-66 %description fuse FUSE based client for Ceph distributed network file system @@ -391,6 +399,7 @@ Group: System/Filesystems %endif Requires: librados2 = %{_epoch_prefix}%{version}-%{release} Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n rbd-fuse FUSE based client to map Ceph rbd images to files @@ -401,6 +410,7 @@ Group: System/Filesystems %endif Requires: ceph-common = %{_epoch_prefix}%{version}-%{release} Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n rbd-mirror Daemon for mirroring RBD images between Ceph clusters, streaming changes asynchronously. @@ -412,6 +422,7 @@ Group: System/Filesystems %endif Requires: librados2 = %{_epoch_prefix}%{version}-%{release} Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n rbd-nbd NBD based client to map Ceph rbd images to local device @@ -429,6 +440,7 @@ Requires: librgw2 = %{_epoch_prefix}%{version}-%{release} %if 0%{?rhel} || 0%{?fedora} || 0%{?openEuler} Requires: mailcap %endif +Requires:glibc >= 2.28-66 %description radosgw RADOS is a distributed object store used by the Ceph distributed storage system. This package provides a REST gateway to the @@ -443,6 +455,7 @@ Group: System/Filesystems %endif Requires: ceph-base = %{_epoch_prefix}%{version} Requires: resource-agents +Requires:glibc >= 2.28-66 %description resource-agents Resource agents for monitoring and managing Ceph daemons under Open Cluster Framework (OCF) compliant resource @@ -464,6 +477,7 @@ Requires: gptfdisk %endif Requires: parted Requires: lvm2 +Requires:glibc >= 2.28-66 %description osd ceph-osd is the object storage daemon for the Ceph distributed file system. It is responsible for storing objects on a local file system @@ -477,6 +491,7 @@ Group: System/Libraries %if 0%{?rhel} || 0%{?fedora} || 0%{?openEuler} Obsoletes: ceph-libs < %{_epoch_prefix}%{version}-%{release} %endif +Requires:glibc >= 2.28-66 %description -n librados2 RADOS is a reliable, autonomic distributed object storage cluster developed as part of the Ceph distributed storage system. This is a @@ -492,6 +507,7 @@ Requires: librados2 = %{_epoch_prefix}%{version}-%{release} Obsoletes: ceph-devel < %{_epoch_prefix}%{version}-%{release} Provides: librados2-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: librados2-devel < %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n librados-devel This package contains libraries and headers needed to develop programs that use RADOS object store. @@ -502,6 +518,7 @@ Summary: RADOS gateway client library Group: System/Libraries %endif Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n librgw2 This package provides a library implementation of the RADOS gateway (distributed object store with S3 and Swift personalities). @@ -515,6 +532,7 @@ Requires: librados-devel = %{_epoch_prefix}%{version}-%{release} Requires: librgw2 = %{_epoch_prefix}%{version}-%{release} Provides: librgw2-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: librgw2-devel < %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n librgw-devel This package contains libraries and headers needed to develop programs that use RADOS gateway client library. @@ -527,6 +545,7 @@ Group: Development/Languages/Python Requires: librgw2 = %{_epoch_prefix}%{version}-%{release} Requires: python-rados = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n python-rgw This package contains Python 2 libraries for interacting with Cephs RADOS gateway. @@ -538,6 +557,7 @@ Group: Development/Languages/Python %endif Requires: librgw2 = %{_epoch_prefix}%{version}-%{release} Requires: python%{python3_pkgversion}-rados = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n python%{python3_pkgversion}-rgw This package contains Python 3 libraries for interacting with Cephs RADOS gateway. @@ -549,6 +569,7 @@ Group: Development/Languages/Python %endif Requires: librados2 = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n python-rados This package contains Python 2 libraries for interacting with Cephs RADOS object store. @@ -560,6 +581,7 @@ Group: Development/Languages/Python %endif Requires: python%{python3_pkgversion} Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n python%{python3_pkgversion}-rados This package contains Python 3 libraries for interacting with Cephs RADOS object store. @@ -570,6 +592,7 @@ Summary: RADOS striping interface Group: System/Libraries %endif Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n libradosstriper1 Striping interface built on top of the rados library, allowing to stripe bigger objects onto several standard rados objects using @@ -585,6 +608,7 @@ Requires: librados-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: ceph-devel < %{_epoch_prefix}%{version}-%{release} Provides: libradosstriper1-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: libradosstriper1-devel < %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n libradosstriper-devel This package contains libraries and headers needed to develop programs that use RADOS striping interface. @@ -601,6 +625,7 @@ Requires(post): coreutils %if 0%{?rhel} || 0%{?fedora} || 0%{?openEuler} Obsoletes: ceph-libs < %{_epoch_prefix}%{version}-%{release} %endif +Requires:glibc >= 2.28-66 %description -n librbd1 RBD is a block device striped across multiple distributed objects in RADOS, a reliable, autonomic distributed object storage cluster @@ -617,6 +642,7 @@ Requires: librados-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: ceph-devel < %{_epoch_prefix}%{version}-%{release} Provides: librbd1-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: librbd1-devel < %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n librbd-devel This package contains libraries and headers needed to develop programs that use RADOS block device. @@ -629,6 +655,7 @@ Group: Development/Languages/Python Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} Requires: python-rados = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n python-rbd This package contains Python 2 libraries for interacting with Cephs RADOS block device. @@ -640,6 +667,7 @@ Group: Development/Languages/Python %endif Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} Requires: python%{python3_pkgversion}-rados = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n python%{python3_pkgversion}-rbd This package contains Python 3 libraries for interacting with Cephs RADOS block device. @@ -654,6 +682,7 @@ Obsoletes: libcephfs1 Obsoletes: ceph-libs < %{_epoch_prefix}%{version}-%{release} Obsoletes: ceph-libcephfs %endif +Requires:glibc >= 2.28-66 %description -n libcephfs2 Ceph is a distributed network file system designed to provide excellent performance, reliability, and scalability. This is a shared library @@ -670,6 +699,7 @@ Requires: librados-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: ceph-devel < %{_epoch_prefix}%{version}-%{release} Provides: libcephfs2-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: libcephfs2-devel < %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n libcephfs-devel This package contains libraries and headers needed to develop programs that use Cephs distributed file system. @@ -684,6 +714,7 @@ Requires: libcephfs2 = %{_epoch_prefix}%{version}-%{release} Recommends: python-rados = %{_epoch_prefix}%{version}-%{release} %endif Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n python-cephfs This package contains Python 2 libraries for interacting with Cephs distributed file system. @@ -695,6 +726,7 @@ Group: Development/Languages/Python %endif Requires: libcephfs2 = %{_epoch_prefix}%{version}-%{release} Requires: python%{python3_pkgversion}-rados = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n python%{python3_pkgversion}-cephfs This package contains Python 3 libraries for interacting with Cephs distributed file system. @@ -704,6 +736,7 @@ Summary: Python 3 utility libraries for Ceph CLI %if 0%{?suse_version} Group: Development/Languages/Python %endif +Requires:glibc >= 2.28-66 %description -n python%{python3_pkgversion}-ceph-argparse This package contains types and routines for Python 3 used by the Ceph CLI as well as the RESTful interface. These have to do with querying the daemons for @@ -720,6 +753,7 @@ Requires: ceph-common = %{_epoch_prefix}%{version}-%{release} Requires: xmlstarlet Requires: jq Requires: socat +Requires:glibc >= 2.28-66 %description -n ceph-test This package contains Ceph benchmarks and test tools. %endif @@ -733,6 +767,7 @@ Group: System/Libraries %endif Requires: java Requires: libcephfs2 = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n libcephfs_jni1 This package contains the Java Native Interface library for CephFS Java bindings. @@ -747,6 +782,7 @@ Requires: libcephfs_jni1 = %{_epoch_prefix}%{version}-%{release} Obsoletes: ceph-devel < %{_epoch_prefix}%{version}-%{release} Provides: libcephfs_jni1-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: libcephfs_jni1-devel < %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n libcephfs_jni-devel This package contains the development files for CephFS Java Native Interface library. @@ -760,6 +796,7 @@ Requires: java Requires: libcephfs_jni1 = %{_epoch_prefix}%{version}-%{release} Requires: junit BuildRequires: junit +Requires:glibc >= 2.28-66 %description -n cephfs-java This package contains the Java libraries for the Ceph File System. @@ -770,6 +807,7 @@ This package contains the Java libraries for the Ceph File System. Summary: RADOS object class development kit Group: Development/Libraries Requires: librados2-devel = %{_epoch_prefix}%{version}-%{release} +Requires:glibc >= 2.28-66 %description -n rados-objclass-devel This package contains libraries and headers needed to develop RADOS object class plugins. @@ -786,6 +824,7 @@ Requires: policycoreutils, libselinux-utils Requires(post): ceph-base = %{_epoch_prefix}%{version}-%{release} Requires(post): selinux-policy-minimum >= %{_selinux_policy_version}, policycoreutils, gawk Requires(postun): policycoreutils +Requires:glibc >= 2.28-66 %description selinux This package contains SELinux support for Ceph MON, OSD and MDS. The package also performs file-system relabelling which can take a long time on heavily @@ -804,6 +843,7 @@ Requires: python-rbd = %{_epoch_prefix}%{version}-%{release} Requires: python-cephfs = %{_epoch_prefix}%{version}-%{release} Requires: python-rgw = %{_epoch_prefix}%{version}-%{release} Provides: python-ceph +Requires:glibc >= 2.28-66 %description -n python-ceph-compat This is a compatibility package to accommodate python-ceph split into python-rados, python-rbd, python-rgw and python-cephfs. Packages still @@ -1815,6 +1855,9 @@ exit 0 %changelog +* Thu Jan 27 2022 zhouwenpei - 1:12.2.8-17 +- fix ceph dh function unavailable + * Wed Dec 29 2021 Li Qiang - 1:12.2.8-16 - Synchronize the performance optimization of the pick_a_shard - function in the upstream community. -- Gitee