-
Notifications
You must be signed in to change notification settings - Fork 169
Closed
Labels
Description
Component(s)
aws-resources
What happened?
Description
I updated aws-resources from 1.47.0-alpha to 1.48.0-alpha and found that it was crashing when trying to create an EcsResource. I think this may be because OkHttp3 has been updated to 5 but breaking changes weren't fixed?
I'm not exactly sure, but that seems like the most probable cause to me.
Steps to Reproduce
Sorry for the Clojure flavoured repro instructions, hopefully it is clear enough what is happening.
With 1.48.0-alpha
$ clj -Sdeps '{:deps {org.clojure/clojure {:mvn/version "RELEASE"} io.opentelemetry.contrib/opentelemetry-aws-resources {:mvn/version "1.48.0-alpha"}}}'
Clojure 1.12.1
user=> (import 'io.opentelemetry.contrib.aws.resource.EcsResource)
io.opentelemetry.contrib.aws.resource.EcsResource
user=> (io.opentelemetry.contrib.aws.resource.EcsResource/get)
Execution error (ClassNotFoundException) at jdk.internal.loader.BuiltinClassLoader/loadClass (BuiltinClassLoader.java:580).
okhttp3.RequestBodyvs 1.47.0-alpha:
clj -Sdeps '{:deps {org.clojure/clojure {:mvn/version "RELEASE"} io.opentelemetry.contrib/opentelemetry-aws-resources {:mvn/version "1.47.0-alpha"}}}'
Clojure 1.12.1
user=> (import 'io.opentelemetry.contrib.aws.resource.EcsResource)
io.opentelemetry.contrib.aws.resource.EcsResource
user=> (io.opentelemetry.contrib.aws.resource.EcsResource/get)
#object[io.opentelemetry.sdk.resources.AutoValue_Resource 0x48c3205a "Resource{schemaUrl=null, attributes={}}"]Expected Result
An EcsResource is returned.
Actual Resul
A ClassNotFoundException exception is thrown.
Component version
1.48.0-alpha
Log output
user=> *e
#error {
:cause "okhttp3.RequestBody"
:via
[{:type java.lang.NoClassDefFoundError
:message "okhttp3/RequestBody"
:at [io.opentelemetry.contrib.aws.resource.SimpleHttpClient <clinit> "SimpleHttpClient.java" 37]}
{:type java.lang.ClassNotFoundException
:message "okhttp3.RequestBody"
:at [jdk.internal.loader.BuiltinClassLoader loadClass "BuiltinClassLoader.java" 580]}]
:trace
[[jdk.internal.loader.BuiltinClassLoader loadClass "BuiltinClassLoader.java" 580]
[java.lang.ClassLoader loadClass "ClassLoader.java" 490]
[io.opentelemetry.contrib.aws.resource.SimpleHttpClient <clinit> "SimpleHttpClient.java" 37]
[io.opentelemetry.contrib.aws.resource.EcsResource buildResource "EcsResource.java" 69]
[io.opentelemetry.contrib.aws.resource.EcsResource <clinit> "EcsResource.java" 58]
[user$eval136 invokeStatic "NO_SOURCE_FILE" 1]
[user$eval136 invoke "NO_SOURCE_FILE" 1]
[clojure.lang.Compiler eval "Compiler.java" 7739]
[clojure.lang.Compiler eval "Compiler.java" 7694]
[clojure.core$eval invokeStatic "core.clj" 3232]
[clojure.core$eval invoke "core.clj" 3228]
[clojure.main$repl$read_eval_print__9248$fn__9251 invoke "main.clj" 437]
[clojure.main$repl$read_eval_print__9248 invoke "main.clj" 437]
[clojure.main$repl$fn__9257 invoke "main.clj" 459]
[clojure.main$repl invokeStatic "main.clj" 459]
[clojure.main$repl_opt invokeStatic "main.clj" 523]
[clojure.main$main invokeStatic "main.clj" 668]
[clojure.main$main doInvoke "main.clj" 617]
[clojure.lang.RestFn invoke "RestFn.java" 400]
[clojure.lang.AFn applyToHelper "AFn.java" 152]
[clojure.lang.RestFn applyTo "RestFn.java" 135]
[clojure.lang.Var applyTo "Var.java" 707]
[clojure.main main "main.java" 40]]}Additional context
Related: #863