This is an automated email from the ASF dual-hosted git repository. btellier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/james-project.git
commit a0c2fe2df0215d3ad45b00829edd875604f6e64b Author: Benoit Tellier <[email protected]> AuthorDate: Tue Jun 18 14:03:15 2019 +0700 JAMES-2794 Upgrade instructions --- upgrade-instructions.md | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/upgrade-instructions.md b/upgrade-instructions.md index 95dbef6..6229179 100644 --- a/upgrade-instructions.md +++ b/upgrade-instructions.md @@ -17,6 +17,41 @@ Changes to apply between 3.3.x and 3.4.x will be reported here. Change list: - [Upgrade to ElasticSearch 6.3](#upgrade-to-elasticsearch-6.3) + +#### Enqueuing several times a mail with the same name + +Date: XX/06/2019 + +SHA-1: XXXXX + +JIRA: https://issues.apache.org/jira/browse/JAMES-2794 + +Concerned products: (experimental) RabbitMQ MailQueue + +RabbitMQ mail queue combines RabbitMQ with projections in Cassandra to offer advanced management capabilities expected from +a mail queue (browse, delete, size, clear). In these projections, the mails are identified by there name. Thus enqueuing a +mail that had already been processed will lead the given email to be considered already deleted and it will be discarded +and lost. + +This is an issue, as several other components build features around submitting a mail several time with the name. + +For instance: + + - MailRepository reprocessing + - RemoteDelivery bouncing under some configurations + - RecipientRewriteTable rewriting to a remote server + +We thus changed the table structure of RabbitMQ mail queue projections to be built around an EnqueueId. This additional +level of indirection allows several enqueues with the same name. + +Upgrade to the newest James server needs to be performed with an empty MailQueue. + +To do so: + + - Given a distributed Guice James server + - Stop incoming traffic + - Monitor the mailQueues and wait them to be empty (spool & outgoing) + - Once empty, upgrade James server and re-enable incoming traffic. #### Upgrade to ElasticSearch 6.3 --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
