Skip to content

Requests with larger payload to gRPC server hang when using Vert.x gRPC implementation (use-separate-server=false) #48526

@Ultranium

Description

@Ultranium

Describe the bug

When using the Vert.x gRPC server implementation (use-separate-server=false), requests with larger payload (10MB+) just hang, request handler code on the server side is not executed.
Legacy gRPC implementation (use-separate-server=true) works in the same environment just fine.

Expected behavior

Normal request processing.

Actual behavior

Requests hang, request handler is not called.

How to Reproduce?

Here is a simple reproducer: https://github.com/Ultranium/quarkus-grpc-vertx-reproducer
The unit test file HelloGrpcServiceTest has a test method testHello(), which sends a few 10MB requests to the gRPC server and times out when waiting for replies.

Changing the quarkus.grpc.server.use-separate-server setting in application.properties to true makes this test pass.

Output of uname -a or ver

Linux desktop 6.13.5-200.fc41.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Feb 27 15:07:31 UTC 2025 x86_64 GNU/Linux

Output of java -version

openjdk version "21.0.7" 2025-04-15

Quarkus version or git rev

3.23.4

Build tool (ie. output of mvnw --version or gradlew --version)

Maven 3.9.9

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/grpcgRPCarea/vertxkind/bugSomething isn't workingkind/bug-thirdpartyBugs that are caused by third-party components and not causing a major dysfunction of core Quarkus.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions