Skip to content
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-28486: Upgrade commons-collections to commons-collections4 due t… #5588

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

eshwitha
Copy link

@eshwitha eshwitha commented Dec 24, 2024

…o EOL.

What changes were proposed in this pull request?

Upgrade commons-collections:commons-collections to org.apache.commons:commons-collections4 as it has reached EOL.

Why are the changes needed?

https://mvnrepository.com/artifact/commons-collections/commons-collections is an EOL library and needs to be migrated to commons-collections4.

Does this PR introduce any user-facing change?

Is the change a dependency upgrade?

How was this patch tested?

@Aggarwal-Raghav
Copy link
Contributor

@eshwitha , I have tried to migrate from commons-collection 3.x to 4.x in past but complete migration is not achievable. IIRC, there are 2 reasons:

  1. accumulo version used in hive 1.10.4 uses commons-collections-3.x. I observed UT failure in accumulo module.
  2. commons-beanutils 1.9.4 also uses commons-collections-3.x. Check BEANUTILS-532, based on the recent comments on the JIRA, there is a plan to release but not sure when.

with your PR also, in packaging lib dir both the version of commons-collections i.e. 3.x and 4.x are present.

pom.xml Outdated Show resolved Hide resolved
@@ -18,7 +18,7 @@
package org.apache.hadoop.hive.metastore.txn;

import com.google.common.annotations.VisibleForTesting;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections4.CollectionUtils;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just thinking out loud, I don't see any commons-collections-3.x dependency present in standalone-metastore module, so commons-collections-3.x must be coming from some transitive dependency (either from hadoop/atlas/commons-beanutils), now in this PR we will start shipping commons-collections-4.x in standalone-metastore/metastore-server/target/apache-hive-metastore-4.1.0-SNAPSHOT-bin. Can it cause any classpath issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants