Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Quarkus 3.20: Context of sender is not available on "blocking" consumer #47063

Open
gian1200 opened this issue Mar 28, 2025 · 2 comments
Open
Labels

Comments

@gian1200
Copy link
Contributor

gian1200 commented Mar 28, 2025

Describe the bug

After upgrading from Quarkus 3.15 to Quarkus 3.20, MDC context is still not passed from sender to consumer when invoked as blocking operation.

It was supposed to be fixed on Quarkus 3.19 (#38061)

Expected behavior

MDC context should be available and visible on logs

Actual behavior

No traceability

How to Reproduce?

Reproducer: https://github.com/gian1200/quarkus-reproducer-47063

Output of uname -a or ver

No response

Output of java -version

openjdk 21.0.6 2025-01-21 LTS

Quarkus version or git rev

No response

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

Apache Maven 3.9.9

Additional information

Example logs:

2025-03-28 12:37:24,053 INFO  {} [io.quarkus] (Quarkus Main Thread) Installed features: [cdi, micrometer, opentelemetry, rest, rest-jackson, smallrye-context-propagation, smallrye-openapi, swagger-ui, vertx]                                                                                                  
2025-03-28 12:37:24,054 INFO  {} [io.qua.dep.dev.RuntimeUpdatesProcessor] (Aesh InputStream Reader) Live reload total time: 0.670s                                                                                                                                                                               
2025-03-28 12:38:09,967 INFO  {sampled=true, spanId=1a134b22ef71466e, traceId=707bb5fcfccca5e2b6cd22b1d5da345f} [org.acm.GreetingResource] (executor-thread-1) Initial log with traceId: DummyObject(randomString=string)                                                                                        
2025-03-28 12:38:09,997 INFO  {parentId=7107fcada1393364, sampled=true, spanId=46c74f0e94692798, traceId=707bb5fcfccca5e2b6cd22b1d5da345f} [org.acm.GreetingResource] (vert.x-eventloop-thread-2) this log has traceId: DummyObject(randomString=string)
2025-03-28 12:38:09,997 INFO  {} [org.acm.GreetingResource] (vert.x-worker-thread-4) this log doesnt have traceId: {0}                                                                                                                                                                                           
2025-03-28 12:38:09,997 INFO  {parentId=8d82450146005f82, sampled=true, spanId=03117b6a66532c9b, traceId=707bb5fcfccca5e2b6cd22b1d5da345f} [org.acm.GreetingResource] (vert.x-eventloop-thread-1) Mutinity: this log has traceId: DummyObject(randomString=string)                                               
                                                                                                                                                                                                                                                                                                                 
2025-03-28 12:38:10,029 INFO  {} [org.acm.GreetingResource] (vert.x-worker-thread-5) Mutinity: this log doesnt have traceId: {0}

Image

@gsmet
Copy link
Member

gsmet commented Apr 8, 2025

@ozangunalp it looks related to what you did here: #45683 .

@ozangunalp
Copy link
Contributor

I doubt that this has changed.
I don't remember why this was but using request instead of send works for propagating the context.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants