summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/rabbit_mirror_queue_slave.erl9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/rabbit_mirror_queue_slave.erl b/src/rabbit_mirror_queue_slave.erl
index 68dd50e21c..1a23988016 100644
--- a/src/rabbit_mirror_queue_slave.erl
+++ b/src/rabbit_mirror_queue_slave.erl
@@ -501,9 +501,10 @@ process_instruction(
case queue:out(MQ) of
{empty, _MQ} ->
{SQ, MS1};
- {{value, Delivery = #delivery {
- msg_seq_no = MsgSeqNo,
- message = #basic_message { id = MsgId } }},
+ {{value, {Delivery = #delivery {
+ msg_seq_no = MsgSeqNo,
+ message = #basic_message { id = MsgId } },
+ _EnqueueOnPromotion}},
MQ1} ->
%% We received the msg from the channel
%% first. Thus we need to deal with confirms
@@ -519,7 +520,7 @@ process_instruction(
ok = rabbit_channel:confirm(ChPid, [MsgSeqNo]),
MS
end};
- {{value, #delivery {}}, _MQ1} ->
+ {{value, {#delivery {}, _EnqueueOnPromotion}}, _MQ1} ->
%% The instruction was sent to us before we
%% were within the mirror_pids within the
%% #amqqueue{} record. We'll never receive the