I've got a quick question about openresty, Lua and EAGAIN error/return codes.
When stress testing a server with many many connected clients after a ramp up EAGAIN will appear in the nginx logs as the stack manages it's resources.
Now, I am thinking that it's not so much an error as a status indicator caused by attempted reads of sockets that may not have data available on them yet for example
In the context of openresty is it typically the responsibility of the client code, lua in this case, to catch this error then retry? The alternative being that somewhere in openresty it magically does this for us?
EXAMPLE
Taking something like this...
local redis =require "resty.redis"
connectOk = redis:connect(config.host, config.port)
... if the above fails with something like [connect() to unix:/tmp/redis_27002.sock failed (11: Resource temporarily unavailable)] and from Lua [redis:connect() resource temporarily unavailable]
Dave.