<div>An untested patch to disable it:</div><div><br></div><div><font face="courier new, monospace">diff --git a/src/rabbit_reader.erl b/src/rabbit_reader.erl</font></div><div><font face="courier new, monospace">index 5acf6ac..8b65821 100644</font></div><div><font face="courier new, monospace">--- a/src/rabbit_reader.erl</font></div><div><font face="courier new, monospace">+++ b/src/rabbit_reader.erl</font></div><div><font face="courier new, monospace">@@ -368,7 +368,7 @@ terminate(_Explanation, State) -&gt;</font></div><div><font face="courier new, monospace"><br></font></div><div><font face="courier new, monospace">&nbsp;control_throttle(State = #v1{connection_state &nbsp; = CS,</font></div><div><font face="courier new, monospace">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; conserve_resources = Mem}) -&gt;</font></div><div><font face="courier new, monospace">- &nbsp; &nbsp;case {CS, Mem orelse credit_flow:blocked()} of</font></div><div><font face="courier new, monospace">+ &nbsp; &nbsp;case {CS, Mem} of</font></div><div><font face="courier new, monospace">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{running, &nbsp; true} -&gt; State#v1{connection_state = blocking};</font></div><div><font face="courier new, monospace">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{blocking, false} -&gt; State#v1{connection_state = running};</font></div><div><font face="courier new, monospace">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{blocked, &nbsp;false} -&gt; ok = rabbit_heartbeat:resume_monitor(</font></div><div><br></div><br>On Friday, May 25, 2012 3:42:36 PM UTC-7, Pablo Molnar wrote:<blockquote class="gmail_quote" style="margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">I'm also experiencing the flow control to be unhelpful using spring-amqp libraries. Is there a way to just turn it off?<br><br>Thanks,<div>Pablo<br><br><div class="gmail_quote">On &nbsp;Fri, May 25, 2012 at 2:57 PM, Chip Salzenberg <span dir="ltr">&lt;<a href="mailto:rev.chip@gmail.com" target="_blank" checklongurl="true">rev.chip@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>The fundamental paradox of per-connection flow control is that it holds up the stop sign just when progress becomes possible. &nbsp;It is backwards and unhelpful. &nbsp;Consider:</div>
<div><br></div><div>1. A client is publishing 1.5K/sec to each of four exchanges, each of which has a queue.</div><div>2. There are no consumers. &nbsp;Therefore the queue is growing.</div><div>3. RMQ does not stop this. &nbsp;"Flow control" does not trigger.</div>
<div>4. The consumers appear to begin to tear down the backlog.</div><div>5. RMQ per-connection flow control suddenly decides that now there are some consumers, now it has a reason to throttle the sender.</div><div>6. If the consumers had not shown up, the producer would not have been blocked.</div>
<div><br></div><div>Therefore, it is only when the backlog can go DOWN that the broker decides to throttle the sender. &nbsp;Not when the backlog was GROWING, but when it could be SHRINKING, that's when RMQ decides to stop accepting.</div>
<div><br></div><div>This is not acceptable.</div><br>______________________________<wbr>_________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com" target="_blank" checklongurl="true">rabbitmq-discuss@lists.<wbr>rabbitmq.com</a><br>
<a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank" checklongurl="true">https://lists.rabbitmq.com/<wbr>cgi-bin/mailman/listinfo/<wbr>rabbitmq-discuss</a><br>
<br></blockquote></div><br></div>
</blockquote>