This is an automated email from the ASF dual-hosted git repository.

btellier pushed a commit to branch 3.9.x
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit a06952a76b4705b2118af16a00d76d3329daf94e
Author: Quan Tran <[email protected]>
AuthorDate: Wed Oct 29 12:03:25 2025 +0700

    JAMES-4148 Fix failing runRulesOnAllUsersMailboxShouldComplete integration 
test
    
    the test was not happy with a blocking call issue.
---
 .../RabbitMQWebAdminServerTaskSerializationIntegrationTest.java       | 3 +--
 .../apache/james/webadmin/data/jmap/RunRuleOnAllMailboxesRoute.java   | 4 ++--
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git 
a/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQWebAdminServerTaskSerializationIntegrationTest.java
 
b/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQWebAdminServerTaskSerializationIntegrationTest.java
index 32a5a89011..0a992d21c7 100644
--- 
a/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQWebAdminServerTaskSerializationIntegrationTest.java
+++ 
b/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/rabbitmq/RabbitMQWebAdminServerTaskSerializationIntegrationTest.java
@@ -844,8 +844,7 @@ class 
RabbitMQWebAdminServerTaskSerializationIntegrationTest {
             .hasSize(2)
             .first()
             .satisfies(map -> assertThat(map).hasSize(2)
-                .containsKeys("taskId")
-                .containsEntry("username", USERNAME));
+                .containsKeys("taskId", "username"));
     }
 
     @Test
diff --git 
a/server/protocols/webadmin/webadmin-jmap/src/main/java/org/apache/james/webadmin/data/jmap/RunRuleOnAllMailboxesRoute.java
 
b/server/protocols/webadmin/webadmin-jmap/src/main/java/org/apache/james/webadmin/data/jmap/RunRuleOnAllMailboxesRoute.java
index 14b2683fc1..cc095f626e 100644
--- 
a/server/protocols/webadmin/webadmin-jmap/src/main/java/org/apache/james/webadmin/data/jmap/RunRuleOnAllMailboxesRoute.java
+++ 
b/server/protocols/webadmin/webadmin-jmap/src/main/java/org/apache/james/webadmin/data/jmap/RunRuleOnAllMailboxesRoute.java
@@ -124,9 +124,8 @@ public class RunRuleOnAllMailboxesRoute implements 
ConditionalRoute {
     private List<UserTask> runRulesOnAllUsersMailbox(MailboxName mailboxName, 
Rules rules) {
         return Flux.from(usersRepository.listReactive())
             .filterWhen(username -> mailboxForUserExists(username, 
mailboxName))
-            .flatMap(username -> runRulesOnUserMailbox(username, mailboxName, 
rules))
+            .concatMap(username -> runRulesOnUserMailbox(username, 
mailboxName, rules))
             .collectList()
-            .subscribeOn(ReactorUtils.BLOCKING_CALL_WRAPPER)
             .block();
     }
 
@@ -134,6 +133,7 @@ public class RunRuleOnAllMailboxesRoute implements 
ConditionalRoute {
         Task task = new RunRulesOnMailboxTask(username, mailboxName, rules, 
runRulesOnMailboxService);
 
         return Mono.fromCallable(() -> taskManager.submit(task))
+            .subscribeOn(ReactorUtils.BLOCKING_CALL_WRAPPER)
             .map(taskId -> new UserTask(username, taskId));
     }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to