It seems that RabbitMQ accepts only integer values for the message expiration header. However, the header value is currently set using TotalMilliseconds.ToString(CultureInfo.InvariantCulture). We have a service that sends messages with a computed expiration time, but that does not round the duration to an integer number of milliseconds. It would probably be better if the transport takes care of this rounding.
In case the value is not an integer, RabbitMQ sends back a 406 Precondition Failed response.
It seems that RabbitMQ accepts only integer values for the message expiration header. However, the header value is currently set using TotalMilliseconds.ToString(CultureInfo.InvariantCulture). We have a service that sends messages with a computed expiration time, but that does not round the duration to an integer number of milliseconds. It would probably be better if the transport takes care of this rounding. In case the value is not an integer, RabbitMQ sends back a 406 Precondition Failed response.