Uh oh!
There was an error while loading. Please reload this page.
HBASE-26691 Replacing log4j with reload4j for branch-2.x - #4050
Conversation
jojochuang
left a comment
There was a problem hiding this comment.
does it also ban transitive dependencies on log4j and slf4j-log4j12?
Apache9
commented
Jan 21, 2022
Yes, if you do not want to ban transitive dependency, just add |
Apache-HBase
commented
Jan 21, 2022
🎊 +1 overall
This message was automatically generated. |
Apache-HBase
commented
Jan 21, 2022
💔 -1 overall
This message was automatically generated. |
Apache-HBase
commented
Jan 21, 2022
🎊 +1 overall
This message was automatically generated. |
Apache-HBase
commented
Jan 21, 2022
🎊 +1 overall
This message was automatically generated. |
Apache-HBase
commented
Jan 21, 2022
💔 -1 overall
This message was automatically generated. |
jojochuang
commented
Jan 25, 2022
The latest reload4j version is 1.2.18.3 with a few additional vulnerabilities fixed. |
Apache-HBase
commented
Jan 25, 2022
🎊 +1 overall
This message was automatically generated. |
Apache-HBase
commented
Jan 25, 2022
💔 -1 overall
This message was automatically generated. |
Apache-HBase
commented
Jan 25, 2022
💔 -1 overall
This message was automatically generated. |
| </dependencies> | ||
| </profile> | ||
There was a problem hiding this comment.
I'm not sure about this part, but the rest LGTM
jojochuang
commented
Jan 26, 2022
Basically in addition to replacing reload4j, the PR also simplifies dependency management. |
jojochuang
commented
Jan 26, 2022
can you also verify the test failure is unrelated? |
jojochuang
commented
Jan 27, 2022
I am testing my Hadoop reload4j patch, and then realized there are a lot of gotchas when building downstream applications. |
Apache9
commented
Jan 27, 2022
For HBase we have tried out best to not introduce log4j dependencies to our downstream users, they will only pull in slf4j, so I do not think it will break our users too much. But it is true that hadoop and zookeeper will introduce log4j and slf4j-log4j12 dependencies to downstreamer users, I suggest we do a round of cleanup, to avoid introducing these dependencies. Thanks. |
| <scope>compile</scope> | ||
| <optional>true</optional> | ||
| </dependency> | ||
| <dependency> |
| </property> | ||
| </activation> | ||
| <dependencies> | ||
| <dependency> |
There was a problem hiding this comment.
Oh, I see, some extra refactoring?
| <version>${hadoop.version}</version> | ||
| <type>test-jar</type> | ||
| <scope>compile</scope> | ||
| <exclusions> |
There was a problem hiding this comment.
I don't have a strong opinion about this so will approve the PR but it would be better to stick with just the changes that are implied by the description [HBASE-26691 Replacing log4j with reload4j for branch-2.x]
apurtell
commented
Mar 3, 2022
If there are no more concerns or updates, I will merge this tomorrow. |
Apache9
commented
Mar 3, 2022
So do we plan to use reload4j for 2.x, or we plan to directly upgrade to log4j2? |
busbey
commented
Mar 3, 2022
how about we get this in place for branches-2 now, so that we can stop shipping hbase 2 releases with an EOL log4j 1, but we plan for the log4j 2 changes to be the preferred path for whatever the next minor 2.x release is after the backport lands. (presuming the testing goes well.) |
Apache9
commented
Mar 3, 2022
Fine by me~ |
apurtell
commented
Mar 4, 2022
Merged. Agreed, we can do this now and I will pick it all the way back to branch-2.4, and anytime we can commit log4j2 work when ready to branch-2.5 and branch-2. |
Signed-off-by: Andrew Purtell <apurtell@apache.org> Conflicts: pom.xml
Signed-off-by: Andrew Purtell <apurtell@apache.org>
apurtell
commented
Mar 4, 2022
I also committed an addendum that ups the reload4j version to the latest release at this time, 1.2.19, and fixes a couple of misses in shading and assembly configuration. |
| <groupId>org.apache.hadoop</groupId> | ||
| <artifactId>hadoop-minicluster</artifactId> | ||
| <scope>test</scope> | ||
| </dependency> |
There was a problem hiding this comment.
The child POM does not inherit the exclusion of the dependency introduced by the parent POM. Is the reconstruction safe? What are the considerations for deleting the exclusions?
No description provided.