Queue - Calls not correctly sending in order

2 Agents statically entered using local channel – See configs

[Demo]
strategy=rrmemory
timeout=8
autofill=no
member => Local/1003@Demo/n
member => Local/1004@Demo/n

Extension dialing context
[Demo]
exten => _1004,1,Set(Group(…)
exten => _1004,n,Dial(SIP/GWLB_OUT/11234567890)

Asterisk 1.8.8.1

Sample of issue:

-- Executing [1004@Demo:3] Dial("Local/1004@Demo....)
-- Nobody picked up in 8000 ms
-- Executing [1004@Demo:3] Dial("Local/1004@Demo....)
-- Nobody picked up in 8000 ms
-- Executing [1003@Demo:3] Dial("Local/1003@Demo....)

When it is dialing the same agent the second time, Agent 1003 status shows Not In Use so its not because the agent is busy on another call. This is all in a controlled testing so there were no other random events confusing things.

I can’t work out what you expect to happen. rrmemory means that the call will alternate, which seems to be what is happening.

Issue is that it is not alternating sporadically. I would get 10 successful calls with perfect alternating hunting but then 5 calls in a row where sometimes during the call it rings the same agent twice (my example shows agent 1004 being dialed twice in a row)