diff --git a/0009-librgw-notifications-initialize-kafka-and-amqp.patch b/0009-librgw-notifications-initialize-kafka-and-amqp.patch new file mode 100644 index 0000000..17a12ae --- /dev/null +++ b/0009-librgw-notifications-initialize-kafka-and-amqp.patch @@ -0,0 +1,63 @@ +From 178f6bdac97b57300bbe0956633cf686a7e3ccee Mon Sep 17 00:00:00 2001 +From: Yuval Lifshitz +Date: Fri, 12 Mar 2021 08:56:45 +0200 +Subject: [PATCH] librgw/notifications: initialize kafka and amqp + +Fixes: https://tracker.ceph.com/issues/49738 + +Signed-off-by: Yuval Lifshitz +--- + src/rgw/librgw.cc | 23 +++++++++++++++++++++++ + 1 file changed, 23 insertions(+) + +diff --git a/src/rgw/librgw.cc b/src/rgw/librgw.cc +index 012cc54c3b..a5351dbe7c 100644 +--- a/src/rgw/librgw.cc ++++ b/src/rgw/librgw.cc +@@ -53,6 +53,12 @@ + #include "rgw_http_client.h" + #include "rgw_http_client_curl.h" + #include "rgw_perf_counters.h" ++#ifdef WITH_RADOSGW_AMQP_ENDPOINT ++#include "rgw_amqp.h" ++#endif ++#ifdef WITH_RADOSGW_KAFKA_ENDPOINT ++#include "rgw_kafka.h" ++#endif + + #include "services/svc_zone.h" + +@@ -617,6 +623,17 @@ namespace rgw { + /* ignore error */ + } + ++#ifdef WITH_RADOSGW_AMQP_ENDPOINT ++ if (!rgw::amqp::init(cct.get())) { ++ derr << "ERROR: failed to initialize AMQP manager" << dendl; ++ } ++#endif ++#ifdef WITH_RADOSGW_KAFKA_ENDPOINT ++ if (!rgw::kafka::init(cct.get())) { ++ derr << "ERROR: failed to initialize Kafka manager" << dendl; ++ } ++#endif ++ + return 0; + } /* RGWLib::init() */ + +@@ -645,6 +662,12 @@ namespace rgw { + rgw_shutdown_resolver(); + rgw_http_client_cleanup(); + rgw::curl::cleanup_curl(); ++#ifdef WITH_RADOSGW_AMQP_ENDPOINT ++ rgw::amqp::shutdown(); ++#endif ++#ifdef WITH_RADOSGW_KAFKA_ENDPOINT ++ rgw::kafka::shutdown(); ++#endif + + rgw_perf_stop(g_ceph_context); + +-- +2.26.2 + diff --git a/ceph.spec b/ceph.spec index fa94b73..8cf3019 100644 --- a/ceph.spec +++ b/ceph.spec @@ -33,6 +33,9 @@ %endif %if 0%{?fedora} || 0%{?rhel} %bcond_without selinux +%bcond_without rbd_rwl_cache +%bcond_without rbd_ssd_cache +%global _system_pmdk 1 %if 0%{?rhel} >= 8 %bcond_with cephfs_java %else @@ -52,8 +55,14 @@ %bcond_with libradosstriper %ifarch x86_64 aarch64 ppc64le %bcond_without lttng +%global _system_pmdk 1 +%bcond_without rbd_rwl_cache +%bcond_without rbd_ssd_cache %else %bcond_with lttng +%global _system_pmdk 0 +%bcond_with rbd_rwl_cache +%bcond_with rbd_ssd_cache %endif %bcond_with ocf %bcond_with selinux @@ -64,8 +73,6 @@ %endif %bcond_with seastar %bcond_with jaeger -%bcond_with rbd_rwl_cache -%bcond_with rbd_ssd_cache %if 0%{?fedora} || 0%{?suse_version} >= 1500 # distros that ship cmd2 and/or colorama %bcond_without cephfs_shell @@ -113,7 +120,7 @@ ################################################################################# Name: ceph Version: 16.1.0 -Release: 0.5.snapshot%{?dist} +Release: 0.6.snapshot%{?dist} %if 0%{?fedora} || 0%{?rhel} Epoch: 2 %endif @@ -130,8 +137,8 @@ Group: System/Filesystems %endif URL: http://ceph.com/ #Source0: %%{?_remote_tarball_prefix}ceph-%%{version}.tar.gz -# https://2.chacra.ceph.com/r/ceph/pacific/abe639e639eb... -Source0: ceph-16.1.0-308-gabe639eb.tar.bz2 +# https://2.chacra.ceph.com/r/ceph/pacific/e53ee8bd1d... +Source0: ceph-16.1.0-944-ge53ee8bd.tar.bz2 Patch0001: 0001-src-common-crc32c_intel_fast.patch Patch0002: 0002-src-common-CMakeLists.txt.patch Patch0003: 0003-src-common-bitstr.h.patch @@ -139,6 +146,7 @@ Patch0004: 0004-src-CMakeLists.txt.patch 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 Source1: cmake-modules-BuildBoost.cmake.noautopatch # ceph 14.0.1 does not support 32-bit architectures, bugs #1727788, #1727787 ExcludeArch: i686 armv7hl @@ -253,6 +261,10 @@ BuildRequires: nlohmann_json-devel BuildRequires: libevent-devel BuildRequires: yaml-cpp-devel %endif +%if 0%{?_system_pmdk} +BuildRequires: libpmem-devel +BuildRequires: libpmemobj-devel +%endif %if 0%{with seastar} BuildRequires: c-ares-devel BuildRequires: gnutls-devel @@ -734,6 +746,9 @@ Requires: librgw2 = %{_epoch_prefix}%{version}-%{release} %if 0%{?rhel} || 0%{?fedora} Requires: mailcap %endif +%if 0%{?weak_deps} +Recommends: gawk +%endif %description radosgw RADOS is a distributed object store used by the Ceph distributed storage system. This package provides a REST gateway to the @@ -1172,7 +1187,7 @@ This package provides Ceph default alerts for Prometheus. # common ################################################################################# %prep -%autosetup -p1 -n ceph-16.1.0-308-gabe639eb +%autosetup -p1 -n ceph-16.1.0-944-ge53ee8bd %ifarch x86_64 patch -p1 < %{SOURCE1} %endif @@ -1241,6 +1256,7 @@ mkdir build cd build %{cmake} .. \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DCMAKE_COLOR_MAKEFILE=OFF \ -DBUILD_CONFIG=rpmbuild \ -DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_INSTALL_LIBDIR=%{_libdir} \ @@ -1298,7 +1314,7 @@ cd build -DWITH_RADOSGW_KAFKA_ENDPOINT=OFF \ %endif %if 0%{without lua_packages} - -DWITH_RADOSGW_LUA_PACKAGES=OFF + -DWITH_RADOSGW_LUA_PACKAGES=OFF \ %endif %if 0%{with zbd} -DWITH_ZBD=ON \ @@ -1315,6 +1331,9 @@ cd build -DBOOST_J=$CEPH_SMP_NCPUS \ %if 0%{with ceph_test_package} -DWITH_SYSTEM_GTEST=ON \ +%endif +%if 0%{?_system_pmdk} + -DWITH_SYSTEM_PMDK:BOOL=ON \ %endif -DWITH_GRAFANA=ON @@ -1994,6 +2013,8 @@ fi %{_bindir}/radosgw-token %{_bindir}/radosgw-es %{_bindir}/radosgw-object-expirer +%{_bindir}/rgw-gap-list +%{_bindir}/rgw-gap-list-comparator %{_bindir}/rgw-orphan-list %{_libdir}/libradosgw.so* %{_mandir}/man8/radosgw.8* @@ -2427,6 +2448,9 @@ exit 0 %config %{_sysconfdir}/prometheus/ceph/ceph_default_alerts.yml %changelog +* Fri Mar 19 2021 Kaleb S. KEITHLEY - 2:16.1.0-0.6.snapshot +- 16.1.0 RC (ceph-16.1.0-922-ge6063369) + * Fri Mar 5 2021 Kaleb S. KEITHLEY - 2:16.1.0-0.5.snapshot - ceph 16.1.0 RC (ceph-16.1.0-308-gabe639eb) - rpmbuild apparently unable to automatically derive 'Requires: rocksdb' from 'BuildRequires: rocksdb-devel' for librocksdb.so.6.13 diff --git a/sources b/sources index 36b795e..ff38237 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ceph-16.1.0-308-gabe639eb.tar.bz2) = 41433257c59a6a9ef852e3810f3ed244d143ba7874a0f896fb5e94b7ed48f282c59b06b406df9cfb4b9b5a48bfdf7ce23acfa1cc82ee8b61c171bfefc75ead98 +SHA512 (ceph-16.1.0-944-ge53ee8bd.tar.bz2) = 6105a008088fb09e0ee456da14bdfe714188f78c3ac22df611b212a34f7a8e13ee8a00fe88698a3633eda8380892297e94530dd9e8736c00dd3d893bd2380b94