summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Sackman <matthew@lshift.net>2010-01-16 19:35:05 +0000
committerMatthew Sackman <matthew@lshift.net>2010-01-16 19:35:05 +0000
commit608f3186dac8b869788fc124ff4b1b2cec3ccd8f (patch)
tree9b212668c2b63f4ddc158ed54e18e278ba6dd2f3
parentd1a303c7f424be55f03b3adc4e8e7e8a2067fd6d (diff)
downloadrabbitmq-server-git-608f3186dac8b869788fc124ff4b1b2cec3ccd8f.tar.gz
When publishing delivered, the fact is, the message has already been delivered. Thus it should be marked as such, otherwise bad things happen when you eventually try to delete the queue (i.e. crash).
-rw-r--r--src/rabbit_variable_queue.erl2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/rabbit_variable_queue.erl b/src/rabbit_variable_queue.erl
index 58e3f5a377..42a01577b0 100644
--- a/src/rabbit_variable_queue.erl
+++ b/src/rabbit_variable_queue.erl
@@ -246,7 +246,7 @@ publish_delivered(Msg = #basic_message { guid = MsgId,
in_counter = InCount + 1 },
MsgStatus = #msg_status {
msg = Msg, msg_id = MsgId, seq_id = SeqId, is_persistent = IsPersistent,
- is_delivered = false, msg_on_disk = false, index_on_disk = false },
+ is_delivered = true, msg_on_disk = false, index_on_disk = false },
MsgStatus1 = maybe_write_msg_to_disk(false, MsgStatus),
case MsgStatus1 #msg_status.msg_on_disk of
true ->