-
Notifications
You must be signed in to change notification settings - Fork 3.4k
HBASE-28433 Modify the assembly to not include test jars and their tr… #6184
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
Conversation
This will require HBASE-28432 to be inplace first. Putting this up to give a fair idea on how changes would look before I start HBASE-28432. Also test failures of this PR would give a fair idea on what all should be moved in new module as we refactor as part of HBASE-28432. |
This comment was marked as outdated.
This comment was marked as outdated.
UT failures will say if we are being too aggressive here! |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Nice to see progress here! |
8c81402
to
adb7158
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
…ansitive dependencies
adb7158
to
46190f0
Compare
Rebased code as #6258 is merged |
This comment has been minimized.
This comment has been minimized.
- Revert change of removing lib/test jars
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Diff of assembly directories, master vs master with this PR:
and
Size Comparison, master vs master with this PR::
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Thank you @stoty for reviewing the code, will have a look at comments and revert back soon. |
I'm not sure hbase-it needs to be reverted anymore. At first I thought that we shouldn't introduce this potenitally breaking change, but since this goes only into a new major version, maybe we should prioritize correctness over backwards compatibility with incorrectly set up downstream projects. Whatever you decide to do with hbase-it is fine by me. |
…nt, now we revert back to directly using cached_classpath.txt to load jars required during runtime (as before). NOTE: To ensure cached_classpath is same as before this change, we retain some jars (including test jars) in assembly pom.xml which we actually remove during tarball creation.
6466128
to
555573c
Compare
Went ahead with changing scope of the hadoop-minicluster jars from compile to test for correctness. |
Summary of 4th commit: Only 1 review comment is pending: on checking whether *:test-jar is a safety check or if we really hit it. I have forgotten what was the case given I rasied v1 of this PR almost 2 months ago. Let me redo analysis and come back to you. |
Updated Info:
and
VS
Please let me know if I should verify anything else. |
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.
This comment has been minimized.
This comment has been minimized.
🎊 +1 overall
This message was automatically generated. |
🎊 +1 overall
This message was automatically generated. |
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.
+1 LGTM
Thank you so much @stoty for patiently reviewing this one. I will be merging this in next few hours, unless no new reviews/objections comes up. |
…ansitive dependencies (apache#6184) - Before this change, our assembly included test jars and test dependencies, which added unnecessary bloat to the assembly and classpath. This not only increases the distribution size but also potentially introduces CVE-prone JARs into the binary assemblies. - With this change, we modify the assembly to exclude these test jars and their dependencies. This will result in a leaner, more secure assembly with a faster startup time. - To ensure cached_classpath is same as before this change, we retain some jars (including test jars) in assembly pom.xml which we actually remove during tarball creation. Signed-off-by: Istvan Toth <stoty@apache.org> (cherry picked from commit 3fbe4fb)
…ansitive dependencies (#6184) (#6452) - Before this change, our assembly included test jars and test dependencies, which added unnecessary bloat to the assembly and classpath. This not only increases the distribution size but also potentially introduces CVE-prone JARs into the binary assemblies. - With this change, we modify the assembly to exclude these test jars and their dependencies. This will result in a leaner, more secure assembly with a faster startup time. - To ensure cached_classpath is same as before this change, we retain some jars (including test jars) in assembly pom.xml which we actually remove during tarball creation. Signed-off-by: Istvan Toth <stoty@apache.org> (cherry picked from commit 3fbe4fb)
…their transitive dependencies (apache#6184)" This reverts commit 3fbe4fb.
…their transitive dependencies (apache#6184)" This reverts commit 3fbe4fb.
…their transitive dependencies (apache#6184)" This reverts commit 3fbe4fb.
…their transitive dependencies (apache#6184)" This reverts commit 3fbe4fb.
…ansitive dependencies