Description
Encountered on sandbox when receiving an external email
CassandraMailQueueMailStore.storeMail needs to allow multiple entries per user in PerHeader Recipients
We were unable to deliver the attached message because of an error in the mail server. Error message below: Exception calling RemoteDelivery: Multiple entries with same key: nparquet.linagora@gmail.com={headername:'org.apache.james.spamassassin.status',headervalue:'No, hits=2.4 required=5.0'} and nparquet.linagora@gmail.com={headername:'org.apache.james.spamassassin.flag',headervalue:'NO'} java.lang.IllegalArgumentException: Multiple entries with same key: nparquet.linagora@gmail.com={headername:'org.apache.james.spamassassin.status',headervalue:'No, hits=2.4 required=5.0'} and nparquet.linagora@gmail.com={headername:'org.apache.james.spamassassin.flag',headervalue:'NO'} at com.google.common.collect.ImmutableMap.conflictException(ImmutableMap.java:215) at com.google.common.collect.ImmutableMap.checkNoConflict(ImmutableMap.java:209) at org.apache.james.queue.rabbitmq.view.cassandra.CassandraMailQueueMailStore.storeMail(CassandraMailQueueMailStore.java:57) at org.apache.james.queue.rabbitmq.view.cassandra.CassandraMailQueueView.storeMail(CassandraMailQueueView.java:86) at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:118) at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:121) at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:121) at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1515) org.apache.james.mailetcontainer.impl.camel.CamelMailetProcessor$MailetContainerRouteBuilder.lambda$configure$0(CamelMailetProcessor.java:155) at org.apache.camel.processor.DelegateSyncProcessor.process(DelegateSyncProcessor.java:63) at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:548) at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201) at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:548) at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201) at org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:715) at org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:638) at org.apache.camel.processor.MulticastProcessor.process(MulticastProcessor.java:248) org.apache.james.mailetcontainer.lib.AbstractStateCompositeProcessor.service(AbstractStateCompositeProcessor.java:84) at org.apache.james.mailetcontainer.impl.JamesMailSpooler.performProcessMail(JamesMailSpooler.java:153) at org.apache.james.mailetcontainer.impl.JamesMailSpooler.lambda$processMail$2(JamesMailSpooler.java:140) at reactor.core.publisher.MonoCallable.call(MonoCallable.java:91) at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.drain(MonoIgnoreThen.java:135) at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreMain.ignoreDone(MonoIgnoreThen.java:190) at reactor.core.publisher.MonoIgnoreThen$ThenIgnoreInner.onComplete(MonoIgnoreThen.java:240) at reactor.core.publisher.FluxSubscribeOnCallable$CallableSubscribeOnSubscription.run(FluxSubscribeOnCallable.java:235) ... 9 more Message details: Subject: coucou Sent date: Fri Jul 12 14:26:36 UTC 2019 MAIL FROM: abbey.curry@sandbox.integration-open-paas.org RCPT TO: nparquet.linagora@gmail.com From: Abbey CURRY <abbey.curry@sandbox.integration-open-paas.org> To: "nparquet.linagora@gmail.com" <nparquet.linagora@gmail.com> Size: 520 B