if reload_count == nil then reload_count = 0 end function mcp_config_pools() mcp.backend_read_timeout(3) mcp.backend_connect_timeout(5) mcp.backend_flap_time(30) -- need a long time to reset the flap counter mcp.backend_flap_backoff_ramp(1.2) -- very slow ramp mcp.backend_retry_waittime(1) -- a quick retry for the test. mcp.backend_failure_limit(2) -- reduced from default to speed up test. reload_count = reload_count + 1 local arg = { label = 'b1', host = '127.0.0.1', port = 11799 } if reload_count == 1 then return mcp.pool({mcp.backend(arg)}) elseif reload_count == 2 then mcp.backend_flap_time(2) return mcp.pool({mcp.backend(arg)}) end end function mcp_config_routes(pool) local fg = mcp.funcgen_new() local handle = fg:new_handle(pool) fg:ready({ f = function(rctx) return function(r) return rctx:enqueue_and_wait(r, handle) end end }) mcp.attach(mcp.CMD_MG, fg) end