ceph 16.1.0 RC (ceph-16.1.0-43-g6b74fb5c)

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
This commit is contained in:
Kaleb S. KEITHLEY 2021-01-29 11:38:23 -05:00
commit 59dc7d2595
4 changed files with 106 additions and 0 deletions

View File

@ -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 <chrono>
#include <iostream>
#include <string>
+#include <optional>
#include <sys/time.h>
#include "include/ceph_assert.h"

View File

@ -0,0 +1,22 @@
--- ceph-15.2.8/src/CMakeLists.txt.orig 2021-01-25 13:34:31.122206146 -0500
+++ ceph-15.2.8/src/CMakeLists.txt 2021-01-25 13:37:12.863612216 -0500
@@ -23,10 +23,16 @@
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
+ -DBOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT)
if(LINUX)
- add_definitions("-D_GNU_SOURCE")
+ add_definitions(-D_GNU_SOURCE)
endif()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")

View File

@ -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 <atomic>
+#include <ctime>
#include <thread>
#include <vector>
@@ -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<milliseconds>(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<boost::asio::io_context::executor_type>;
template <typename Stream>
@@ -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() << ' '

View File

@ -0,0 +1,10 @@
--- ceph-15.2.8/src/tools/rbd/action/Bench.cc.orig 2021-01-25 17:08:06.189223814 -0500
+++ ceph-15.2.8/src/tools/rbd/action/Bench.cc 2021-01-25 17:08:27.297805754 -0500
@@ -10,6 +10,7 @@
#include "include/types.h"
#include "global/signal_handler.h"
#include <iostream>
+#include <atomic>
#include <boost/accumulators/accumulators.hpp>
#include <boost/accumulators/statistics/stats.hpp>
#include <boost/accumulators/statistics/rolling_sum.hpp>