]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
RGW:add socket backlog setting for via ceph.conf 10216/head
authorFeng Guo <diluga@gmail.com>
Fri, 24 Jun 2016 01:26:16 +0000 (09:26 +0800)
committerNathan Cutler <ncutler@suse.com>
Fri, 8 Jul 2016 19:11:56 +0000 (21:11 +0200)
http://tracker.ceph.com/issues/16406

Signed-off-by: Feng Guo <diluga@gmail.com>
(cherry picked from commit 3e4df832d34c782795a32b5a30f5c7414a1c3fa9)

src/common/config_opts.h
src/rgw/rgw_fcgi_process.cc
src/rgw/rgw_process.h

index 5d0ff42735a2fee713d9eda7997537c55435742f..586329e5b80c7e867841ca37b2307d49e9a34e5b 100644 (file)
@@ -1336,6 +1336,7 @@ OPTION(rgw_enable_usage_log, OPT_BOOL, false) // enable logging bandwidth usage
 OPTION(rgw_ops_log_rados, OPT_BOOL, true) // whether ops log should go to rados
 OPTION(rgw_ops_log_socket_path, OPT_STR, "") // path to unix domain socket where ops log can go
 OPTION(rgw_ops_log_data_backlog, OPT_INT, 5 << 20) // max data backlog for ops log
+OPTION(rgw_fcgi_socket_backlog, OPT_INT, 1024) // socket  backlog for fcgi
 OPTION(rgw_usage_log_flush_threshold, OPT_INT, 1024) // threshold to flush pending log data
 OPTION(rgw_usage_log_tick_interval, OPT_INT, 30) // flush pending log data every X seconds
 OPTION(rgw_intent_log_object_name, OPT_STR, "%Y-%m-%d-%i-%n")  // man date to see codes (a subset are supported)
index fd6cae6b7a43278e1586320feb6fc79106edacc4..b9246aeb6474cc8f7feeb48c1f886c929199e09d 100644 (file)
@@ -20,10 +20,12 @@ void RGWFCGXProcess::run()
   string socket_path;
   string socket_port;
   string socket_host;
+  int socket_backlog;
 
   conf->get_val("socket_path", "", &socket_path);
   conf->get_val("socket_port", g_conf->rgw_port, &socket_port);
   conf->get_val("socket_host", g_conf->rgw_host, &socket_host);
+  socket_backlog = g_conf->rgw_fcgi_socket_backlog;
 
   if (socket_path.empty() && socket_port.empty() && socket_host.empty()) {
     socket_path = g_conf->rgw_socket_path;
@@ -54,7 +56,7 @@ void RGWFCGXProcess::run()
     }
 
     const char *path = path_str.c_str();
-    sock_fd = FCGX_OpenSocket(path, SOCKET_BACKLOG);
+    sock_fd = FCGX_OpenSocket(path, socket_backlog);
     if (sock_fd < 0) {
       dout(0) << "ERROR: FCGX_OpenSocket (" << path << ") returned "
              << sock_fd << dendl;
@@ -66,7 +68,7 @@ void RGWFCGXProcess::run()
     }
   } else if (!socket_port.empty()) {
     string bind = socket_host + ":" + socket_port;
-    sock_fd = FCGX_OpenSocket(bind.c_str(), SOCKET_BACKLOG);
+    sock_fd = FCGX_OpenSocket(bind.c_str(), socket_backlog);
     if (sock_fd < 0) {
       dout(0) << "ERROR: FCGX_OpenSocket (" << bind.c_str() << ") returned "
              << sock_fd << dendl;
index faf942c6d9ddf45255d673e1fb2cb32655a1c7a6..61e1870e16dd88cc7ff6527925c3b821948648e1 100644 (file)
@@ -21,7 +21,6 @@
 #define def_dout_subsys
 #endif
 
-#define SOCKET_BACKLOG 1024
 
 extern void signal_shutdown();