You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Tim Peeters (Jira)" <ji...@apache.org> on 2020/02/10 21:23:00 UTC
[jira] [Created] (CXF-8210) Incompatibility with recent Brave
versions causes NullPointerException and hides root cause
Tim Peeters created CXF-8210:
--------------------------------
Summary: Incompatibility with recent Brave versions causes NullPointerException and hides root cause
Key: CXF-8210
URL: https://issues.apache.org/jira/browse/CXF-8210
Project: CXF
Issue Type: Bug
Components: Tracing Brave
Affects Versions: 3.3.5
Reporter: Tim Peeters
I believe there is an incompatibility between {{cxf-integration-tracing-brave}} and recent versions of {{brave-instrumentation-http}}.
CXF master currently depends on Brave version 5.6.9 while the newest version is 5.9.4.
As of version 5.7, {{brave-instrumentation-http}} throws a {{NullPointerException}} when invoking{{ brave.http.HttpClientHandler.create(HttpTracing, HttpClientAdapter)}} with a {{null}} value for the {{HttpClientAdapter}} parameter.
Which is exactly what {{cxf-integration-tracing-brave}} does in case of an exception/SOAP fault.
This results in the following stack trace and hides the original SOAP fault from the user:
{code:java}
java.lang.NullPointerException: adapter == null
at brave.http.HttpClientHandler.create(HttpClientHandler.java:64)
at org.apache.cxf.tracing.brave.AbstractBraveClientProvider.stopTraceSpan(AbstractBraveClientProvider.java:126)
at org.apache.cxf.tracing.brave.BraveClientStartInterceptor.handleFault(BraveClientStartInterceptor.java:55)
at org.apache.cxf.phase.PhaseInterceptorChain.unwind(PhaseInterceptorChain.java:499){code}
Users of Spring Cloud Greenwich SR3 or higher are impacted.
Dependency graph from left to right with indication of the impacted versions:
|Spring Boot|Spring Cloud|Sleuth|Brave|Status|
|2.1|Greenwich.RELEASE|2.1.0.RELEASE|5.6.1|Works|
|2.1|Greenwich.SR1|2.1.1.RELEASE|5.6.1|Works|
|2.1|Greenwich.SR2|2.1.2.RELEASE|5.6.5|Works|
|2.1|Greenwich.SR3|2.1.3.RELEASE|5.7.0|**Broken**|
|2.1|Greenwich.SR4|2.1.6.RELEASE|5.8.0|**Broken**|
|2.1|Greenwich.SR5|2.1.7.RELEASE|5.9.2|**Broken**|
|2.2|Hoxton.RELEASE|2.2.0.RELEASE|5.9.0|**Broken**|
|2.2|Hoxton.SR1|2.2.1.RELEASE|5.9.0 |**Broken**|
--
This message was sent by Atlassian Jira
(v8.3.4#803005)