title: Will rabbitmq server recover messages for queue marked as durable, when rabbitmq-server gets crashed?
body: <p>I am going through the <a href="https://www.rabbitmq.com/tutorials/amqp-concepts.html" rel="nofollow noreferrer">documentation</a> of AMQP given by Rabbitmq official site.
  It says that </p>
  
  <blockquote>
    <p>Queue Durability Durable queues are persisted to disk and thus survive
    broker restarts. Queues that are not durable are called transient. Not
    all scenarios and use cases mandate queues to be durable.</p>
    
    <p>Durability of a queue does not make messages that are routed to that
    queue durable. If broker is taken down and then brought back up,
    durable queue will be re-declared during broker startup, however, only
    persistent messages will be recovered.</p>
  </blockquote>
  
  <p>However I am confused about following scenarios, when Message broker crashes :-</p>
  
  <ol>
  <li>Message is delivered to Message Exchange by producer, but not routed to queue marked as durable.</li>
  <li>Message is delivered to Message Exchange by producer, which in turn routes to queue marked as durable, but message is in the queue and not consumed by consumer.</li>
  <li>Message is delivered to Message Exchange by producer, which in turn routes to queue marked as durable, but message is in the queue and consumed by consumer, but no acknowledgement has been send by consumer to the queue.</li>
  </ol>
  
  <p>In all the above cases, will the messages be available on next start of rabbit-mq server ?</p>
  
  <p>Moreover, the documentation makes distinction between normal message and persistent messages, as only persistent messages will be recovered. What's the difference between both message types ?</p>
  
  <p>Thanks in advance.</p>