Skip to content

Commit 4bfc4b6

Browse files
committed
Prevent OkHttp connection pools from retaining request contexts
1 parent 3e3884a commit 4bfc4b6

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

‎dd-java-agent/instrumentation/java/java-concurrent/java-concurrent-1.8/src/main/java/datadog/trace/instrumentation/java/concurrent/AsyncPropagatingDisableInstrumentation.java‎

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ public String[] knownMatchingTypes() {
9090
"rx.internal.util.ObjectPool",
9191
"io.grpc.internal.ServerImpl$ServerTransportListenerImpl",
9292
"okhttp3.ConnectionPool",
93+
"okhttp3.internal.connection.RealConnectionPool",
9394
"com.squareup.okhttp.ConnectionPool",
9495
"org.elasticsearch.transport.netty4.Netty4TcpChannel",
9596
"org.springframework.cglib.core.internal.LoadingCache",
@@ -157,10 +158,14 @@ public void methodAdvice(MethodTransformer transformer) {
157158
transformer.applyAdvice(
158159
named("start").and(isDeclaredBy(named("rx.internal.util.ObjectPool"))), advice);
159160
transformer.applyAdvice(
160-
named("addConnection").and(isDeclaredBy(named("com.squareup.okhttp.ConnectionPool"))),
161+
namedOneOf("addConnection", "put")
162+
.and(isDeclaredBy(named("com.squareup.okhttp.ConnectionPool"))),
161163
advice);
162164
transformer.applyAdvice(
163165
named("put").and(isDeclaredBy(named("okhttp3.ConnectionPool"))), advice);
166+
transformer.applyAdvice(
167+
named("put").and(isDeclaredBy(named("okhttp3.internal.connection.RealConnectionPool"))),
168+
advice);
164169
transformer.applyAdvice(
165170
named("sendMessage")
166171
.and(isDeclaredBy(named("org.elasticsearch.transport.netty4.Netty4TcpChannel"))),

0 commit comments

Comments
 (0)