[jira] [Updated] (CXF-8210) Incompatibility with recent Brave versions causes NullPointerException and hides root cause

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Updated] (CXF-8210) Incompatibility with recent Brave versions causes NullPointerException and hides root cause

Ivan Topić (Jira)

     [ https://issues.apache.org/jira/browse/CXF-8210?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andriy Redko updated CXF-8210:
------------------------------
    Fix Version/s: 3.3.6
                   3.4.0

> 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
>            Priority: Major
>             Fix For: 3.4.0, 3.3.6
>
>
> 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)