-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
HIVE-28682: Multiple Avro Versions on Classpath Can Cause Potential C… #5593
base: master
Are you sure you want to change the base?
Conversation
@tanishq-chugh, i don't think in hive avro-1.7.7.jar is shipped anywhere, i checked both:
and in standalone-metastore module/submodules, we are not using any avro api's which means that metastore don't have to depend on avro. Also, in terms of CVE's mentioned in JIRA, SonaType scan only picks the jars that are getting shipped (based on my understanding) so we are good from that front as well. Thoughts on this? |
@Aggarwal-Raghav Thanks for pointing this out! Avro v1.7.7 is present only in compile-time classpath and it isn't getting packaged as per maven dependency resolution rules as v1.11.4 occurs at a lower level as a direct dependency. The main concern here was its compile time presence for standalone-metastore sub-modules as the META-INF of sub-modules showed a dependency on v1.7.7 . But, as you correctly pointed out, we are not using any API's from avro in standalone-metastore, so there is no usage of this avro jar. |
@tanishq-chugh, IMO, excluding avro from hadoop dependencies can help as we are not shipping the avro-1.7.7 jar.
I would also suggest to take someone else opinion on this. |
…ential Conflicts" This reverts commit b065d1f.
@Aggarwal-Raghav Agreed. |
af582b0
to
e30359d
Compare
Quality Gate passedIssues Measures |
|
@deniskuzZ yes, my bad. |
…onflicts
What changes were proposed in this pull request?
Align avro to a single version - 1.11.4
The same can be achieved by adding avro in dependencyManagement section in standalone-metastore pom as this will ensure the transitive version of avro coming in from hadoop-common is 1.11.4
Why are the changes needed?
Multiple avro versions on classpath can cause potential conflicts
Does this PR introduce any user-facing change?
No
Is the change a dependency upgrade?
Yes
Old Dependency Tree:
dpn_old.txt
New Dependency Tree:
dpn_latest_1.txt
How was this patch tested?
Manual Testing by running few queries after local compilation