-
Notifications
You must be signed in to change notification settings - Fork 15
Closed
Copy link
Description
Pre-flight
- I’m using the latest release or a recent snapshot.
- I searched existing issues and Discussions.
What happened?
When running this IT on the LC4J Agentic Example:
Lines 28 to 44 in dbad244
| void parallel_evening_planner_runs_all_branches() { | |
| assertThat(eveningPlanner).isNotNull(); | |
| Agents.EveningPlan plan = eveningPlanner.plan("Toronto", Agents.Mood.ROMANTIC); | |
| assertThat(plan).isNotNull(); | |
| assertThat(plan.dinner()).isNotBlank(); | |
| assertThat(plan.drinks()).isNotBlank(); | |
| assertThat(plan.activity()).isNotBlank(); | |
| plan = eveningPlanner.plan("New York", Agents.Mood.ROMANTIC); | |
| assertThat(plan).isNotNull(); | |
| assertThat(plan.dinner()).isNotBlank(); | |
| assertThat(plan.drinks()).isNotBlank(); | |
| assertThat(plan.activity()).isNotBlank(); | |
| } |
The second execution (New York) hangs.
Minimal reproducer
mvn clean install -DskipITs=falseQuarkus version
No response
quarkus-flow version
No response
Java version
No response
Runtime
None
Quarkus extensions in use
No response
Relevant logs/stack traces
2026-02-17 11:05:59,572 INFO [io.quarkiverse.flow.langchain4j.workflow.FlowPlanner] (main) Building LC4J Workflow evening-planner-agent
2026-02-17 11:05:59,572 INFO [io.quarkiverse.flow.internal.WorkflowRegistry] (main) Registering workflow evening-planner-agent
2026-02-17 11:05:59,572 WARN [io.quarkiverse.flow.internal.WorkflowRegistry] (main) Duplicate workflow detected WorkflowDefinitionId[namespace=org.acme.langchain4j, name=evening-planner-agent, version=0.0.1]. Please remove the duplicate definition to prevent execution collisions or unexpected behavior during runtime.
2026-02-17 11:05:59,573 INFO [io.quarkiverse.flow.tracing.TraceLoggerExecutionListener] (ForkJoinPool.commonPool-worker-7) Workflow name=evening-planner-agent instanceId=01KHP5KQHAZ2CD82CQXZ3N7JP8 started at 2026-02-17T11:05:59.573449-05:00 input=AgenticScope{memoryId='4500c9c0-8d5e-4d0b-b3bd-32e183003cca', state={mood=ROMANTIC, city=New York}}
2026-02-17 11:05:59,573 INFO [io.quarkiverse.flow.tracing.TraceLoggerExecutionListener] (ForkJoinPool.commonPool-worker-7) Task 'parallel' started at 2026-02-17T11:05:59.573819-05:00 pos=do/0/parallel/branch
2026-02-17 11:05:59,574 INFO [io.quarkiverse.flow.tracing.TraceLoggerExecutionListener] (pool-8-thread-1) Task 'dinner-planner-0-0' started at 2026-02-17T11:05:59.574093-05:00 pos=do/0/parallel/branch/0/dinner-planner-0-0
2026-02-17 11:05:59,574 INFO [io.quarkiverse.flow.tracing.TraceLoggerExecutionListener] (pool-8-thread-4) Task 'activity-planner-2-2' started at 2026-02-17T11:05:59.574158-05:00 pos=do/0/parallel/branch/2/activity-planner-2-2
2026-02-17 11:05:59,574 DEBUG [io.quarkiverse.flow.langchain4j.workflow.FlowParallelAgentService] (pool-8-thread-4) Parallel execution of agent Activity planner$2 in branch activity-planner-2-2 started
2026-02-17 11:05:59,574 INFO [io.quarkiverse.flow.tracing.TraceLoggerExecutionListener] (pool-8-thread-2) Task 'drinks-planner-1-1' started at 2026-02-17T11:05:59.574259-05:00 pos=do/0/parallel/branch/1/drinks-planner-1-1
2026-02-17 11:05:59,574 DEBUG [io.quarkiverse.flow.langchain4j.workflow.FlowParallelAgentService] (pool-8-thread-1) Parallel execution of agent Dinner planner$0 in branch dinner-planner-0-0 started
2026-02-17 11:05:59,574 DEBUG [io.quarkiverse.flow.langchain4j.workflow.FlowParallelAgentService] (pool-8-thread-2) Parallel execution of agent Drinks planner$1 in branch drinks-planner-1-1 started
# later:
Thread pool-8-thread-4: WAITING
Waiting on java.util.concurrent.CompletableFuture$Signaller@119fecce
Stack:
java.base@17.0.14/jdk.internal.misc.Unsafe.park(Native Method)
java.base@17.0.14/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
java.base@17.0.14/java.util.concurrent.CompletableFuture$Signaller.block(CompletableFuture.java:1864)
java.base@17.0.14/java.util.concurrent.ForkJoinPool.unmanagedBlock(ForkJoinPool.java:3465)
java.base@17.0.14/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3436)
java.base@17.0.14/java.util.concurrent.CompletableFuture.waitingGet(CompletableFuture.java:1898)
java.base@17.0.14/java.util.concurrent.CompletableFuture.join(CompletableFuture.java:2117)
io.quarkiverse.flow.langchain4j.workflow.FlowParallelAgentService.lambda$tasksDefinition$1(FlowParallelAgentService.java:63)
io.quarkiverse.flow.langchain4j.workflow.FlowParallelAgentService$$Lambda$2861/0x0000009001c317c0.apply(Unknown Source)
io.serverlessworkflow.impl.executors.func.JavaFunctionCallExecutor.callJavaFunction(JavaFunctionCallExecutor.java:35)
io.serverlessworkflow.impl.executors.func.AbstractJavaCallExecutor.apply(AbstractJavaCallExecutor.java:42)
io.serverlessworkflow.impl.executors.CallTaskExecutor.internalExecute(CallTaskExecutor.java:69)
io.serverlessworkflow.impl.executors.RegularTaskExecutor.execute(RegularTaskExecutor.java:63)
io.serverlessworkflow.impl.executors.AbstractTaskExecutor.lambda$apply$7(AbstractTaskExecutor.java:232)
io.serverlessworkflow.impl.executors.AbstractTaskExecutor$$Lambda$2920/0x0000009001c6c6c8.apply(Unknown Source)
java.base@17.0.14/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1187)
java.base@17.0.14/java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:2309)
io.serverlessworkflow.impl.executors.AbstractTaskExecutor.apply(AbstractTaskExecutor.java:232)
io.serverlessworkflow.impl.executors.ForkExecutor.lambda$internalExecute$0(ForkExecutor.java:78)
io.serverlessworkflow.impl.executors.ForkExecutor$$Lambda$2921/0x0000009001c6c910.apply(Unknown Source)
java.base@17.0.14/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1150)
java.base@17.0.14/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
java.base@17.0.14/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
java.base@17.0.14/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
java.base@17.0.14/java.lang.Thread.run(Thread.java:840)
Reactions are currently unavailable