On 7/26/07, <b class="gmail_sendername">James FitzGibbon</b> &lt;<a href="mailto:james.fitzgibbon@gmail.com">james.fitzgibbon@gmail.com</a>&gt; wrote:<div><span class="gmail_quote"></span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>Is it possible for qe.parent-&gt;membercount to be set to zero in a queue where all agents but one are on the phone and that one remaining agent lets their phone ring without answering it?</blockquote><div><br><br>I added some debug code to app_queue and ran a few tests.&nbsp; The change in app_queue in 
1.4.9 breaks queues configured as &quot;joinempty=yes&quot;.<br><br>If there are no members in the queue, the membercount will be 0.&nbsp; A queue configured as joinempty=yes should still allow calls to be enqueued in this case.&nbsp; Because go_on is zero and membercount is zero and the comparison is &quot;go_on &gt;= 
qe.parent-&gt;membercount&quot;, any calls that attempt to join a queue without any members will immediately get kicked back to the dialplan.<br><br>&nbsp;&nbsp;&nbsp; -- Executing [s@macro-enqueue:16] Queue(&quot;Zap/23-1&quot;, &quot;XXXXX|tW&quot;) in new stack
<br>&nbsp;&nbsp;&nbsp; -- Started music on hold, class &#39;default&#39;, on Zap/23-1<br>[Jul 27 07:49:27] WARNING[31209]: app_queue.c:3458 queue_exec: about to compare XXXXX&#39;s go_on (0) &gt;= qe.parent-&gt;membercount (0)<br>&nbsp;&nbsp;&nbsp; -- Exiting on time-out cycle
<br><br>Though I can&#39;t seem to lock onto the circumstances, I also oberved this breaking queues configured as &quot;leavewhenempty=no&quot;.&nbsp; I can&#39;t seem to replicate it using a single queue and a single member (on pause or on a call or letting their phone ring through), but as I described in my first message, I did see the &quot;Exiting on time-out cycle&quot; message last night when I had 4 people in the queue, all on a call, and one person didn&#39;t pick up their phone.
<br><br>Still, the joinwhenempty breakage should be enough to prompt a backout or rapid fix for this.&nbsp; Until recently, my dialplan didn&#39;t gracefully handle a return from Queue() because all my queues were configured as &quot;joinempty=yes&quot; and &quot;leavewhenempty=no&quot;.&nbsp; Recently I added logic to kick users back to the IVR if Queue returns for any reason, but had I not made that change, 
1.4.9 would have resulted in my callers getting unceremoniously hung up on if they tried to join a queue without agents.<br><br></div>I&#39;ll go open a bug report.<br></div><br>-- <br>j.