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

MP RestClient calls fail if OpenTelemetry is in list of dependencies #17385

Closed
pilhuhn opened this issue May 20, 2021 · 2 comments · Fixed by #17608
Closed

MP RestClient calls fail if OpenTelemetry is in list of dependencies #17385

pilhuhn opened this issue May 20, 2021 · 2 comments · Fixed by #17608
Assignees
Labels
area/tracing kind/bug Something isn't working
Milestone

Comments

@pilhuhn
Copy link
Contributor

pilhuhn commented May 20, 2021

Auth tests fail, I see at https://github.com/RedHatInsights/notifications-backend/blob/8cbd03f2f648d68e681a0[…]/redhat/cloud/notifications/auth/rbac/RbacIdentityProvider.java a failure of java.lang.NoClassDefFoundError: org/jboss/resteasy/client/jaxrs/internal/ClientRequestContextImpl is thrown as result of trying to do a call via MP-RestClient.

We see this issue since switching to Quarkus-resteasy-reactive from Resteasy-classic.

It turns out that the OpenTelemetry dependencies in the POM cause the failure

    <dependency>
        <groupId>io.quarkus</groupId>
        <artifactId>quarkus-opentelemetry</artifactId>
    </dependency>
    <dependency>
        <groupId>io.quarkus</groupId>
        <artifactId>quarkus-opentelemetry-exporter-jaeger</artifactId>
    </dependency>

To Reproduce

Link to a small reproducer (preferably a Maven project if the issue is not Gradle-specific).

  1. build / verify https://github.com/pilhuhn/notifications-backend/tree/089bcbd464d2d713e2abad715fe91b93c687965f
  2. see tests fail with code 401
  3. remove opentelemetries dependencies from pom
  4. rebuild / verify
  5. See tests pass

Quarkus version or git rev

1.13.4

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

mvn 3.8.1

cc @kenfinnigan

@pilhuhn pilhuhn added the kind/bug Something isn't working label May 20, 2021
@quarkus-bot
Copy link

quarkus-bot bot commented May 20, 2021

/cc @kenfinnigan

@kenfinnigan kenfinnigan added this to Backlog in Observability roadmap [Deprecated] via automation May 20, 2021
@kenfinnigan kenfinnigan moved this from Backlog to Current Qtr in Observability roadmap [Deprecated] May 20, 2021
@kenfinnigan
Copy link
Member

Thanks @pilhuhn

@kenfinnigan kenfinnigan self-assigned this May 20, 2021
kenfinnigan added a commit to kenfinnigan/quarkus that referenced this issue Jun 1, 2021
- Moves REST Client filter into a separate hidden extension
- Uses Quarkus conditional dependency handling to only include the OpenTelemetry Rest Client extension if `quarkus-rest-client` is present in user application
@kenfinnigan kenfinnigan moved this from Current Qtr to In progress in Observability roadmap [Deprecated] Jun 1, 2021
@kenfinnigan kenfinnigan added this to the 2.1 - main milestone Jun 1, 2021
kenfinnigan added a commit to kenfinnigan/quarkus that referenced this issue Jun 1, 2021
- Moves REST Client filter into a separate hidden extension
- Uses Quarkus conditional dependency handling to only include the OpenTelemetry Rest Client extension if `quarkus-rest-client` is present in user application
kenfinnigan added a commit to kenfinnigan/quarkus that referenced this issue Jun 1, 2021
- Moves REST Client filter into a separate hidden extension
- Uses Quarkus conditional dependency handling to only include the OpenTelemetry Rest Client extension if `quarkus-rest-client` is present in user application
Observability roadmap [Deprecated] automation moved this from In progress to Done Jun 1, 2021
@gsmet gsmet modified the milestones: 2.1 - main, 2.0.0.CR3 Jun 3, 2021
gsmet pushed a commit to gsmet/quarkus that referenced this issue Jun 3, 2021
- Moves REST Client filter into a separate hidden extension
- Uses Quarkus conditional dependency handling to only include the OpenTelemetry Rest Client extension if `quarkus-rest-client` is present in user application

(cherry picked from commit 1dd5a03)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment