linagora / tmail-backend

GNU Affero General Public License v3.0
31 stars 17 forks source link

Fix migration for classic queues #1119

Closed chibenwa closed 1 week ago

chibenwa commented 1 week ago

Description of the bug

Fatal error while starting James","context":"default","exception":"com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method(reply-code=406,

reply-text=PRECONDITION_FAILED - inequivalent arg 'x-queue-version' for queue 'emailAddressContactEvent-dead-letter-queue' in vhost 'cnb_tmail': received the value '2' of type 'signedint' but current is none

I need an option not to use this parameter when starting james.

Reproduction Steps

Use classic queues. Like preprod?

Expected result

Start without failure.

quantranhong1999 commented 1 week ago

"If you want to stick with the older RabbitMQ versions and avoid this breaking change, you could set the JVM property fallback.classic.queues.v1 to true (defaults to false)."

chibenwa commented 1 week ago

We then need to add the option in helm charts.

chibenwa commented 1 week ago

Can it be done monday?

quantranhong1999 commented 1 week ago

Can it be done monday?

Yes, I will take care of it.

chibenwa commented 1 week ago

I found a way to do this (jvmExtraProperties)

Arsnael commented 1 week ago

Use classic queues. Like preprod?

FYI Preprod is using quorum queues i believe.

Note that I did the fallback to v1 classic queues on prod lng when deployed the latest release, as I didn't want to disturb much things back then