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 752b0422f1ac75de0a40d740da4873edec79b079 Author: Benoit Tellier <[email protected]> AuthorDate: Sun May 30 10:10:21 2021 +0700 [PERFORMANCE] Use reactive version of countMessagesInMailbox in MailboxManager::delete This was causing blocking calls on the parallel scheduler and was failing. --- .../main/java/org/apache/james/mailbox/store/StoreMailboxManager.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java index 89f6e0a..64ff6da 100644 --- a/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java +++ b/mailbox/store/src/main/java/org/apache/james/mailbox/store/StoreMailboxManager.java @@ -449,7 +449,8 @@ public class StoreMailboxManager implements MailboxManager { MessageMapper messageMapper = mailboxSessionMapperFactory.getMessageMapper(session); Mono<QuotaRoot> quotaRootPublisher = Mono.fromCallable(() -> quotaRootResolver.getQuotaRoot(mailbox.generateAssociatedPath())); - Mono<Long> messageCountPublisher = Mono.fromCallable(() -> messageMapper.countMessagesInMailbox(mailbox)); + Mono<Long> messageCountPublisher = Mono.from(messageMapper.getMailboxCountersReactive(mailbox)) + .map(MailboxCounters::getCount); return quotaRootPublisher.zipWith(messageCountPublisher).flatMap(quotaRootWithMessageCount -> messageMapper.findInMailboxReactive(mailbox, MessageRange.all(), MessageMapper.FetchType.Metadata, UNLIMITED) .map(message -> MetadataWithMailboxId.from(message.metaData(), message.getMailboxId())) --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
