it sends once it ensures that all relays sended EOSE, which may be slow but the only effective way to do it.
Discussion
Could it be that the EOSE event is not sent until after the timeout. I'm finding that its common for a least one relay to timeout but not consistently the same one.