Merge "Delay port binding to reduce wait at process start"
This commit is contained in:
		@@ -892,12 +892,6 @@ def run_wsgi(conf_path, app_section, *args, **kwargs):
 | 
			
		||||
    else:
 | 
			
		||||
        strategy = WorkersStrategy(conf, logger)
 | 
			
		||||
 | 
			
		||||
    error_msg = strategy.bind_ports()
 | 
			
		||||
    if error_msg:
 | 
			
		||||
        logger.error(error_msg)
 | 
			
		||||
        print(error_msg)
 | 
			
		||||
        return 1
 | 
			
		||||
 | 
			
		||||
    # Ensure the configuration and application can be loaded before proceeding.
 | 
			
		||||
    global_conf = {'log_name': log_name}
 | 
			
		||||
    if 'global_conf_callback' in kwargs:
 | 
			
		||||
@@ -911,6 +905,13 @@ def run_wsgi(conf_path, app_section, *args, **kwargs):
 | 
			
		||||
    # redirect errors to logger and close stdio
 | 
			
		||||
    capture_stdio(logger)
 | 
			
		||||
 | 
			
		||||
    # Start listening on bind_addr/port
 | 
			
		||||
    error_msg = strategy.bind_ports()
 | 
			
		||||
    if error_msg:
 | 
			
		||||
        logger.error(error_msg)
 | 
			
		||||
        print(error_msg)
 | 
			
		||||
        return 1
 | 
			
		||||
 | 
			
		||||
    no_fork_sock = strategy.no_fork_sock()
 | 
			
		||||
    if no_fork_sock:
 | 
			
		||||
        run_server(conf, logger, no_fork_sock, global_conf=global_conf)
 | 
			
		||||
 
 | 
			
		||||
@@ -730,7 +730,9 @@ class TestWSGI(unittest.TestCase):
 | 
			
		||||
            logger,
 | 
			
		||||
            'log_name',
 | 
			
		||||
        ]
 | 
			
		||||
        with mock.patch.object(wsgi, '_initrp', return_value=stub__initrp):
 | 
			
		||||
        with mock.patch.object(wsgi, '_initrp', return_value=stub__initrp), \
 | 
			
		||||
                mock.patch.object(wsgi, 'loadapp'), \
 | 
			
		||||
                mock.patch.object(wsgi, 'capture_stdio'):
 | 
			
		||||
            for server_type in ('account-server', 'container-server',
 | 
			
		||||
                                'object-server'):
 | 
			
		||||
                mock_per_port.reset_mock()
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user