-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HBASE-25864 Use shaded javax.ws.rs package classes #3243
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
to save other folks a click, the failures in the CI bot are due to the SNAPSHOT dependency on hbase-thirdparty needed to test this out locally. |
@@ -160,7 +151,6 @@ | |||
<dependency> | |||
<groupId>org.apache.hbase</groupId> | |||
<artifactId>hbase-protocol-shaded</artifactId> | |||
<type>jar</type> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was just redundant, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, this was redundant.
From Maven Coordinates,
When no packaging is declared, Maven assumes the packaging is the default: jar.
@@ -18,22 +17,19 @@ | |||
*/ | |||
package org.apache.hadoop.hbase.rest.model; | |||
|
|||
import com.fasterxml.jackson.annotation.JsonInclude; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be org.apache.hbase.thirdparty.com.fasterxml.jackson...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nope, because I don't relocate Jackson, just the jackson-jaxrs-json-provider
and things related specifically to jaxrs. The other PR uses an includes
list, not excludes, and only relocates the package prefix com.fasterxml.jackson.jaxrs
. Transitive dependencies of the two artifacts it relocates are preserved.
@@ -18,22 +18,16 @@ | |||
package org.apache.hadoop.hbase.rest; | |||
|
|||
import static org.junit.Assert.assertEquals; | |||
|
|||
import com.fasterxml.jackson.databind.ObjectMapper; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We aren't shading jackson-databind? Shouldn't we, if we are shading other jackson packages? jackson.databind has been a source of several CVEs so is definitely something we want to control and keep an eye on.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See above -- it seems we do not currently shade jackson-databind and the patch as posted does not do so either.
@apurtell how would you like this change to proceed? Would you prefer that we also shade all of jackson within the
Dependency list from the dependency-reduced-pom.xml
|
We might also introduce a new shaded jar that is jackson-core, jackson-databind, and jackson-jaxb-annotations. We would then make use of those symbols from the shaded-jackson-jaxrs-json-provider jar, as well as any mentions within hbase-core. |
I don't think there's a need to shade jackson here because it is only used by hbase-rest, which is not a module that should land in a downstreamer's classpath. Further, we're making use of jackson via transitive dependency on I would be in support of a plan to deprecate |
f3bea51
to
f9767f5
Compare
💔 -1 overall
This message was automatically generated. |
💔 -1 overall
This message was automatically generated. |
💔 -1 overall
This message was automatically generated. |
f9767f5
to
83df996
Compare
Rebased onto master. |
83df996
to
f3889b4
Compare
💔 -1 overall
This message was automatically generated. |
💔 -1 overall
This message was automatically generated. |
💔 -1 overall
This message was automatically generated. |
Adapt to the changes provided by apache/hbase-thirdparty#51 Signed-off-by: Andrew Purtell <apurtell@apache.org>
f3889b4
to
2fcfd80
Compare
💔 -1 overall
This message was automatically generated. |
💔 -1 overall
This message was automatically generated. |
💔 -1 overall
This message was automatically generated. |
This is superseded by HBASE-26523. |
Adapt to the changes provided by apache/hbase-thirdparty#51