Hello,<br><br>I have this is a piece of code to process a message:<br><br><span style="font-family: courier new,monospace;">public function processMessage($message)</span><span style="font-family: courier new,monospace;"><br>
{<br></span><span style="font-family: courier new,monospace;">    try{  </span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">         </span><span style="font-family: courier new,monospace;">execute(</span><span style="font-family: courier new,monospace;">$message</span><span style="font-family: courier new,monospace;">);</span><span style="font-family: courier new,monospace;"><br>
         </span><span style="font-family: courier new,monospace;">$this-&gt;_queue-&gt;remove($message);</span><br>                  <span style="font-family: courier new,monospace;">$this-&gt;_queue-&gt;commit();</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">    } catch (Exception $e) {</span><span style="font-family: courier new,monospace;"></span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">            $this-&gt;_queue-&gt;getChannel()-&gt;basic_reject($message-&gt;getId(), true);</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">            //$this-&gt;_queue-&gt;getChannel()-&gt;basic_recover(true);</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">            $this-&gt;_queue-&gt;rollback();</span><br style="font-family: courier new,monospace;">
<span style="font-family: courier new,monospace;">    }</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;">}</span><br><br>All I want to do is just to redeliver a message after some exception occurs. But if I use <span style="font-family: courier new,monospace;">basic_recover(true)</span>I get an error - &quot;<span style="font-family: courier new,monospace;">PRECONDITION_FAILED - unknown delivery tag 2</span>&quot;. <br>
<br>Then I have noticed for example when I ask to redeliver a message with delivery tag [1] (because I have got an exception) I get a second message with delivery tag [2] and once I try to commit it I get &quot;<span style="font-family: courier new,monospace;">PRECONDITION_FAILED - unknown delivery tag 2</span>&quot;. Its like if X message fails and I ask to redeliver it, next X+1 message that arrives, will fail witn an error &quot;<span style="font-family: courier new,monospace;">PRECONDITION_FAILED - unknown delivery tag X+1</span>&quot; when i will try to commit it.<br>
<br>Then I have tried to use <span style="font-family: courier new,monospace;">basic_reject($message-&gt;getId(), true); </span>and it works, all messages are redelivered.<br><br>Perhaps I am doing something wrong here regarding basic_recover? <br>
<br>I am using RabbitMQ 2.3.1<br><br>Thank you for your answers!<br><br>Tomas<br>