From 6c74a0f14ac1ef04989ad854ed4b7f1312babcc5 Mon Sep 17 00:00:00 2001 From: DistroBaker Date: Tue, 5 Jan 2021 15:49:07 +0000 Subject: [PATCH] Merged update from upstream sources This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/ceph.git#f52ea67e29fb49b7c7399648a973dc142dfa5fa5 --- 0004-src-common-ceph-time.h.patch | 10 ++++ 0005-src-CMakeLists.txt.patch | 21 ++++++++ 0006-src-rgw-rgw_asio_frontend.cc.patch | 64 +++++++++++++++++++++++++ ceph.spec | 23 ++++++--- sources | 2 +- 5 files changed, 112 insertions(+), 8 deletions(-) create mode 100644 0004-src-common-ceph-time.h.patch create mode 100644 0005-src-CMakeLists.txt.patch create mode 100644 0006-src-rgw-rgw_asio_frontend.cc.patch diff --git a/0004-src-common-ceph-time.h.patch b/0004-src-common-ceph-time.h.patch new file mode 100644 index 0000000..c8f7661 --- /dev/null +++ b/0004-src-common-ceph-time.h.patch @@ -0,0 +1,10 @@ +--- ceph-15.2.8/src/common/ceph_time.h.orig 2020-12-24 06:23:32.605762289 -0500 ++++ ceph-15.2.8/src/common/ceph_time.h 2020-12-24 13:50:14.304877611 -0500 +@@ -18,6 +18,7 @@ + #include + #include + #include ++#include + #include + + #include "include/ceph_assert.h" diff --git a/0005-src-CMakeLists.txt.patch b/0005-src-CMakeLists.txt.patch new file mode 100644 index 0000000..00a017c --- /dev/null +++ b/0005-src-CMakeLists.txt.patch @@ -0,0 +1,21 @@ +--- ceph-15.2.8/src/CMakeLists.txt.orig 2021-01-03 12:47:00.275274985 -0500 ++++ ceph-15.2.8/src/CMakeLists.txt 2021-01-03 12:51:17.957185433 -0500 +@@ -23,10 +23,15 @@ + set(datadir ${CEPH_INSTALL_DATADIR}) + set(prefix ${CMAKE_INSTALL_PREFIX}) + +-add_definitions("-DHAVE_CONFIG_H -D__CEPH__ -D_REENTRANT -D_THREAD_SAFE -D__STDC_FORMAT_MACROS") +-add_definitions("-D_FILE_OFFSET_BITS=64") ++add_definitions(-DHAVE_CONFIG_H ++ -D__CEPH__ ++ -D_REENTRANT ++ -D_THREAD_SAFE ++ -D__STDC_FORMAT_MACROS ++ -D_FILE_OFFSET_BITS=64 ++ -DBOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION) + if(LINUX) +- add_definitions("-D_GNU_SOURCE") ++ add_definitions(-D_GNU_SOURCE) + endif() + + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall") diff --git a/0006-src-rgw-rgw_asio_frontend.cc.patch b/0006-src-rgw-rgw_asio_frontend.cc.patch new file mode 100644 index 0000000..de47ac6 --- /dev/null +++ b/0006-src-rgw-rgw_asio_frontend.cc.patch @@ -0,0 +1,64 @@ +--- ceph-15.2.8/src/rgw/rgw_asio_frontend.cc.orig 2020-12-16 12:29:50.000000000 -0500 ++++ ceph-15.2.8/src/rgw/rgw_asio_frontend.cc 2021-01-04 18:20:49.156104233 -0500 +@@ -2,6 +2,7 @@ + // vim: ts=8 sw=2 smarttab ft=cpp + + #include ++#include + #include + #include + +@@ -138,6 +139,29 @@ + return out << h.quote << p->value() << h.quote; + } + ++// log fractional seconds in milliseconds ++struct log_ms_remainder { ++ ceph::coarse_real_time t; ++ log_ms_remainder(ceph::coarse_real_time t) : t(t) {} ++}; ++std::ostream& operator<<(std::ostream& out, const log_ms_remainder& m) { ++ using namespace std::chrono; ++ return out << std::setfill('0') << std::setw(3) ++ << duration_cast(m.t.time_since_epoch()).count() % 1000; ++} ++ ++// log time in apache format: day/month/year:hour:minute:second zone ++struct log_apache_time { ++ ceph::coarse_real_time t; ++ log_apache_time(ceph::coarse_real_time t) : t(t) {} ++}; ++std::ostream& operator<<(std::ostream& out, const log_apache_time& a) { ++ const auto t = ceph::coarse_real_clock::to_time_t(a.t); ++ const auto local = std::localtime(&t); ++ return out << std::put_time(local, "%d/%b/%Y:%T.") << log_ms_remainder{a.t} ++ << std::put_time(local, " %z"); ++}; ++ + using SharedMutex = ceph::async::SharedMutex; + + template +@@ -228,16 +252,20 @@ + RGWRestfulIO client(cct, &real_client_io); + auto y = optional_yield{context, yield}; + int http_ret = 0; ++ string user = "-"; ++ const auto started = ceph::coarse_real_clock::now(); ++ + process_request(env.store, env.rest, &req, env.uri_prefix, + *env.auth_registry, &client, env.olog, y, + scheduler, &http_ret); + + if (cct->_conf->subsys.should_gather(dout_subsys, 1)) { + // access log line elements begin per Apache Combined Log Format with additions following +- const auto now = ceph::coarse_real_clock::now(); +- using ceph::operator<<; // for coarse_real_time ++ // const auto now = ceph::coarse_real_clock::now(); ++ // using ceph::operator<<; // for coarse_real_time + ldout(cct, 1) << "beast: " << hex << &req << dec << ": " +- << remote_endpoint.address() << " - - [" << now << "] \"" ++ // << remote_endpoint.address() << " - - [" << now << "] \"" ++ << remote_endpoint.address() << " - " << user << " [" << log_apache_time{started} << "] \"" + << message.method_string() << ' ' << message.target() << ' ' + << http_version{message.version()} << "\" " << http_ret << ' ' + << client.get_bytes_sent() + client.get_bytes_received() << ' ' diff --git a/ceph.spec b/ceph.spec index f315ee6..c691963 100644 --- a/ceph.spec +++ b/ceph.spec @@ -100,7 +100,7 @@ # main package definition ################################################################################# Name: ceph -Version: 15.2.7 +Version: 15.2.8 Release: 1%{?dist} %if 0%{?fedora} || 0%{?rhel} Epoch: 2 @@ -121,6 +121,9 @@ Source0: %{?_remote_tarball_prefix}ceph-%{version}.tar.gz Patch0001: 0001-src-common-crc32c_intel_fast.patch Patch0002: 0002-src-common-CMakeLists.txt.patch Patch0003: 0003-src-common-bitstr.h.patch +Patch0004: 0004-src-common-ceph-time.h.patch +Patch0005: 0005-src-CMakeLists.txt.patch +Patch0006: 0006-src-rgw-rgw_asio_frontend.cc.patch Source1: cmake-modules-BuildBoost.cmake.noautopatch # ceph 14.0.1 does not support 32-bit architectures, bugs #1727788, #1727787 ExcludeArch: i686 armv7hl @@ -487,6 +490,10 @@ Group: System/Filesystems %endif Provides: ceph-test:/usr/bin/ceph-monstore-tool Requires: ceph-base = %{_epoch_prefix}%{version}-%{release} +%if 0%{?weak_deps} +Recommends: nvme-cli +Recommends: smartmontools +%endif %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 @@ -758,6 +765,10 @@ Requires: lvm2 Requires: sudo Requires: libstoragemgmt Requires: python%{python3_pkgversion}-ceph-common = %{_epoch_prefix}%{version}-%{release} +%if 0%{?weak_deps} +Recommends: nvme-cli +Recommends: smartmontools +%endif %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 @@ -1270,7 +1281,7 @@ cat ./CMakeFiles/CMakeError.log export VERBOSE=1 export V=1 -%cmake_build "$CEPH_MFLAGS_JOBS" +%cmake_build %if 0%{with make_check} @@ -1321,7 +1332,6 @@ install -m 0644 -D udev/50-rbd.rules %{buildroot}%{_udevrulesdir}/50-rbd.rules # sudoers.d install -m 0600 -D sudoers.d/ceph-osd-smartctl %{buildroot}%{_sysconfdir}/sudoers.d/ceph-osd-smartctl -install -m 0600 -D sudoers.d/cephadm %{buildroot}%{_sysconfdir}/sudoers.d/cephadm %if 0%{?rhel} >= 8 pathfix.py -pni "%{__python3} %{py3_shbang_opts}" %{buildroot}%{_bindir}/* @@ -1475,7 +1485,6 @@ exit 0 %files -n cephadm %{_sbindir}/cephadm %{_mandir}/man8/cephadm.8* -%{_sysconfdir}/sudoers.d/cephadm %attr(0700,cephadm,cephadm) %dir %{_sharedstatedir}/cephadm %attr(0700,cephadm,cephadm) %dir %{_sharedstatedir}/cephadm/.ssh %attr(0600,cephadm,cephadm) %{_sharedstatedir}/cephadm/.ssh/authorized_keys @@ -2155,7 +2164,6 @@ fi %files -n librgw2 %{_libdir}/librgw.so.* -%{_libdir}/librgw_admin_user.so.* %if %{with lttng} %{_libdir}/librgw_op_tp.so.* %{_libdir}/librgw_rados_tp.so.* @@ -2168,10 +2176,8 @@ fi %files -n librgw-devel %dir %{_includedir}/rados %{_includedir}/rados/librgw.h -%{_includedir}/rados/librgw_admin_user.h %{_includedir}/rados/rgw_file.h %{_libdir}/librgw.so -%{_libdir}/librgw_admin_user.so %if %{with lttng} %{_libdir}/librgw_op_tp.so %{_libdir}/librgw_rados_tp.so @@ -2375,6 +2381,9 @@ exit 0 %config %{_sysconfdir}/prometheus/ceph/ceph_default_alerts.yml %changelog +* Wed Dec 23 2020 Kaleb S. KEITHLEY - 2:15.2.8-1 +- ceph 15.2.8 GA + * Mon Nov 30 2020 Kaleb S. KEITHLEY - 2:15.2.7-1 - ceph 15.2.7 GA diff --git a/sources b/sources index 0b42528..0e8e3c0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ceph-15.2.7.tar.gz) = bfe07cefcd603d773216a2b1d49fb32bdf1185dfb69b30d5362eb48d3afa2984cebffb598f7d68bfbd9afdc2f29975130a585a9b83724ca6a3f59163895c0de0 +SHA512 (ceph-15.2.8.tar.gz) = 66c7322575165b4747955ac9de34f9f9e2d4361c8cd8498819383883045601b92f786c4336c79369d6f019db1c4524c492faa40cdceed7fc1b2b373ca6ab5065