diff options
| author | kjnilsson <knilsson@pivotal.io> | 2019-02-14 10:49:25 +0000 |
|---|---|---|
| committer | kjnilsson <knilsson@pivotal.io> | 2019-02-14 11:40:05 +0000 |
| commit | 017545d13ace947c02fb64c239ab28bb3f10b8d2 (patch) | |
| tree | ea50a4dc584a3039c0c0f6f609626637affe66c0 /src/gatherer.erl | |
| parent | 375f743238ba75376f038544cb6199bbd637bf5b (diff) | |
| download | rabbitmq-server-git-017545d13ace947c02fb64c239ab28bb3f10b8d2.tar.gz | |
Fix channel liveness issue
when publishing to an unavailable quorum queue
If a channel publishes to a quorum queue at a time when the queue is
unavailable and no commands make it to the queue, the channel will
eventually go into flow and never exit flow as reads from socket will
never take place and the queue will never communicate with the channel.
To avoid this dead-lock the channel sets a longish timer when a qourum queue
reaches it's internal command buffer limit and cancels it when falling
below again. When the timer triggers the quorum queue client resends all it's
pending commands to ensure liveness.
[#163975460]
Diffstat (limited to 'src/gatherer.erl')
0 files changed, 0 insertions, 0 deletions
