This KB discuss why after upgrading to RabbitMQ 4.3.x, basic.nack does not increase delivery count. This KB also discuss difference on behaviour between basic.reject and basic.nack and also why using basic.reject increase delivery-count.
The behaviour when using basic.nack on RabbitNQ 4.3.x does not increase delivery count is intentional
Let us first check the difference between basic.reject and basic.nack here:
Feature | basic.reject | basic.nack |
| Origin | Standard AMQP 0-9-1 | RabbitMQ Extension |
| Batch Processing | Single message only | Supports single or multiple messages |
| Requeue Option | Yes (requeue=true/false) | Yes (requeue=true/false) |
| Delivery-Count | Increments header (Processing failed) | Does not increment (Consumer didn't process) |