Make interceptor mode of TracingDriver work with other wrapper drivers #69
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
In the interceptor mode of
TracingDriver
, it is supposed to be able to trace JDBC connections without modifying the URL. However, this may not work in some cases. For instance, if another wrapper driver callsDriver#acceptsURL
for each registered driver in order to find the underlying driver, it won't seeTracingDriver
unless the JDBC URL has been rewritten to have thejdbc:tracing:
prefix.Solution
In interceptor mode,
TracingDriver#acceptsURL
should accept any JDBC URL. The user should not need to (and should not) modify the URL for the interceptor mode to work. Also, in interceptor mode,TracingDriver
should not try to extractwithActiveSpanOnly
orignoreStatements
properties from the URL, as they should be set viaTracingDriver#setInterceptorProperty
.Fixes #68.