From 5189c2e457bbbc0c7f430d3fa810b59896c8bb44 Mon Sep 17 00:00:00 2001
From: zhipeng li <qiuxinyidian@gmail.com>
Date: Mon, 27 Nov 2023 15:24:06 +0800
Subject: [PATCH] add checking result for rgw frontend init fixes:
https://tracker.ceph.com/issues/63644
Signed-off-by: zhipeng li <qiuxinyidian@gmail.com>
src/rgw/rgw_lib.cc | 9 ++++++++-
src/rgw/rgw_main.cc | 7 ++++++-
2 files changed, 14 insertions(+), 2 deletions(-)
@@ -468,6 +468,7 @@ namespace rgw {
int RGWLib::init(vector<const char*>& args)
{
+ int r{0};
/* alternative default for module */
map<std::string,std::string> defaults = {
{ "debug_rgw", "1/5" },
@@ -524,7 +525,13 @@ namespace rgw {
register_async_signal_handler(SIGUSR1, rgw::signal::handle_sigterm);
main.init_tracepoints();
- main.init_frontends2(this /* rgwlib */);
+ r = main.init_frontends2(this /* rgwlib */);
+ if (r != 0) {
+ derr << "ERROR: unable to initialize frontend, r = " << r << dendl;
+ main.shutdown();
+ return r;
+ }
+
main.init_notification_endpoints();
main.init_lua();
@@ -157,7 +157,12 @@ int main(int argc, char *argv[])
main.init_opslog();
main.init_tracepoints();
main.init_lua();
- main.init_frontends2(nullptr /* RGWLib */);
+ r = main.init_frontends2(nullptr /* RGWLib */);
+ if (r != 0) {
+ derr << "ERROR: initialize frontend fail, r = " << r << dendl;
+ main.shutdown();
+ return r;
+ }
main.init_notification_endpoints();
#if defined(HAVE_SYS_PRCTL_H)
--
2.47.2