We're seeing a situation where Consul is logging the following every second or so:
Apr 20 17:27:08 demolx1 consul: 2016/04/20 17:27:08 [WARN] serf: Event queue depth: 4096
Apr 20 17:27:08 demolx1 consul[1632]: serf: Event queue depth: 4096
This continues indefinitely and seems to cause Consul to use some CPU in the process (a constant 2%+ on an 8 core server).
Additional information:
We have just a single Consul server instance running with the following config:
{
"bootstrap_expect": 1,
"server": true,
"datacenter": "test",
"data_dir": "/var/consul",
"encrypt": "...",
"log_level": "INFO",
"enable_syslog": true,
"client_addr": "0.0.0.0",
"start_join": ["10.112.32.97"]
}
We have 4 services that register themselves with Consul, and a couple of clients that monitor Consul for these services.
The services use /v1/event/fire/ and /v1/event/list to send messages to each other and to the clients. We did have a bug whereby /v1/event/list was using the wrong index for blocking calls, so was being called in a tight loop so perhaps that is what triggered the initial problem. As far as I'm aware we're sending very few events overall, at peak maybe a few events per second but usually should be much less. However even if we stop every single service and client process so there is nothing talking to Consul at all, Consul keeps on churning out the "Event queue depth: 4096" warnings ad infinitum. What causes this? Is it to be expected? Restarting Consul does make the warnings go away.