diff --git itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/TestCompactor.java itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/TestCompactor.java index 5b8fb4bfb1..f2ea30bf36 100644 --- itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/TestCompactor.java +++ itests/hive-unit/src/test/java/org/apache/hadoop/hive/ql/txn/compactor/TestCompactor.java @@ -38,7 +38,6 @@ import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicInteger; -import org.apache.curator.shaded.com.google.common.collect.Lists; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; @@ -100,6 +99,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.google.common.collect.Lists; + public class TestCompactor { private static final AtomicInteger salt = new AtomicInteger(new Random().nextInt()); private static final Logger LOG = LoggerFactory.getLogger(TestCompactor.class); diff --git itests/util/src/main/java/org/apache/hadoop/hive/kudu/KuduTestSetup.java itests/util/src/main/java/org/apache/hadoop/hive/kudu/KuduTestSetup.java index 2a0f04c4ca..85ab1eb993 100644 --- itests/util/src/main/java/org/apache/hadoop/hive/kudu/KuduTestSetup.java +++ itests/util/src/main/java/org/apache/hadoop/hive/kudu/KuduTestSetup.java @@ -26,9 +26,10 @@ import org.apache.kudu.client.CreateTableOptions; import org.apache.kudu.client.KuduClient; import org.apache.kudu.client.KuduException; -import org.apache.kudu.shaded.com.google.common.collect.ImmutableList; import org.apache.kudu.test.cluster.MiniKuduCluster; +import com.google.common.collect.ImmutableList; + import java.io.File; import java.util.Arrays; diff --git kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduInputFormat.java kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduInputFormat.java index feb6f75b0b..653cdc25f4 100644 --- kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduInputFormat.java +++ kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduInputFormat.java @@ -17,6 +17,7 @@ */ package org.apache.hadoop.hive.kudu; +import com.google.common.collect.ImmutableList; import com.google.common.collect.Lists; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hive.kudu.KuduInputFormat.KuduInputSplit; @@ -42,7 +43,6 @@ import org.apache.kudu.client.KuduTable; import org.apache.kudu.client.PartialRow; import org.apache.kudu.client.RowResult; -import org.apache.kudu.shaded.com.google.common.collect.ImmutableList; import org.apache.kudu.test.KuduTestHarness; import org.junit.Before; import org.junit.Rule; diff --git kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduOutputFormat.java kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduOutputFormat.java index 8a1cf26c2c..c208e388da 100644 --- kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduOutputFormat.java +++ kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduOutputFormat.java @@ -28,12 +28,13 @@ import org.apache.kudu.client.KuduTable; import org.apache.kudu.client.PartialRow; import org.apache.kudu.client.RowResult; -import org.apache.kudu.shaded.com.google.common.collect.ImmutableList; import org.apache.kudu.test.KuduTestHarness; import org.junit.Before; import org.junit.Rule; import org.junit.Test; +import com.google.common.collect.ImmutableList; + import java.math.BigDecimal; import java.sql.Timestamp; import java.util.ArrayList; diff --git kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduPredicateHandler.java kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduPredicateHandler.java index ad09c5b9b3..20f17dc45a 100644 --- kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduPredicateHandler.java +++ kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduPredicateHandler.java @@ -17,6 +17,7 @@ */ package org.apache.hadoop.hive.kudu; +import com.google.common.collect.ImmutableList; import com.google.common.collect.Lists; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hive.ql.exec.SerializationUtilities; @@ -51,7 +52,6 @@ import org.apache.kudu.client.KuduScanner; import org.apache.kudu.client.KuduTable; import org.apache.kudu.client.PartialRow; -import org.apache.kudu.shaded.com.google.common.collect.ImmutableList; import org.apache.kudu.test.KuduTestHarness; import org.junit.Before; import org.junit.Rule; diff --git kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduSerDe.java kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduSerDe.java index da2a9899ea..589e0d937c 100644 --- kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduSerDe.java +++ kudu-handler/src/test/org/apache/hadoop/hive/kudu/TestKuduSerDe.java @@ -28,12 +28,13 @@ import org.apache.kudu.Type; import org.apache.kudu.client.CreateTableOptions; import org.apache.kudu.client.PartialRow; -import org.apache.kudu.shaded.com.google.common.collect.ImmutableList; import org.apache.kudu.test.KuduTestHarness; import org.junit.Before; import org.junit.Rule; import org.junit.Test; +import com.google.common.collect.ImmutableList; + import java.math.BigDecimal; import java.sql.Timestamp; import java.util.Arrays; diff --git llap-common/src/java/org/apache/hadoop/hive/llap/metrics/ReadWriteLockMetrics.java llap-common/src/java/org/apache/hadoop/hive/llap/metrics/ReadWriteLockMetrics.java index 7d52a15c35..189c684d28 100644 --- llap-common/src/java/org/apache/hadoop/hive/llap/metrics/ReadWriteLockMetrics.java +++ llap-common/src/java/org/apache/hadoop/hive/llap/metrics/ReadWriteLockMetrics.java @@ -18,8 +18,7 @@ package org.apache.hadoop.hive.llap.metrics; -import avro.shaded.com.google.common.annotations.VisibleForTesting; - +import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Preconditions; import java.io.Serializable; diff --git pom.xml pom.xml index 47634f426e..ff2c86a960 100644 --- pom.xml +++ pom.xml @@ -1178,6 +1178,13 @@ org.apache.maven.plugins maven-enforcer-plugin + + + de.skuzzle.enforcer + restrict-imports-enforcer-rule + 0.9.0 + + enforce-no-snapshots @@ -1233,6 +1240,26 @@ true + + check-banned-imports + initialize + + enforce + + + + + Do not use shaded imports + + **.shaded.** + org.spark_project.guava.** + jersey.repackaged.com.google.** + + true + + + + diff --git ql/src/java/org/apache/hadoop/hive/ql/optimizer/signature/RelTreeSignature.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/signature/RelTreeSignature.java index 40e93f02a3..536c334afe 100644 --- ql/src/java/org/apache/hadoop/hive/ql/optimizer/signature/RelTreeSignature.java +++ ql/src/java/org/apache/hadoop/hive/ql/optimizer/signature/RelTreeSignature.java @@ -25,17 +25,13 @@ import org.apache.calcite.rel.RelNode; import org.apache.calcite.rel.RelWriter; -import org.apache.calcite.rel.externalize.RelWriterImpl; import org.apache.calcite.sql.SqlExplainLevel; -import org.apache.hadoop.hive.ql.optimizer.calcite.HiveRelJsonImpl; -import org.apache.hadoop.hive.ql.optimizer.calcite.HiveRelOptUtil; import org.apache.hadoop.hive.ql.optimizer.calcite.RelWriterImplCopy; import com.fasterxml.jackson.annotation.JsonIdentityInfo; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.ObjectIdGenerators; - -import avro.shaded.com.google.common.base.Objects; +import com.google.common.base.Objects; /** * Operator tree signature. diff --git ql/src/test/org/apache/hadoop/hive/ql/TestTxnCommands.java ql/src/test/org/apache/hadoop/hive/ql/TestTxnCommands.java index 900290ef34..1da01be7c0 100644 --- ql/src/test/org/apache/hadoop/hive/ql/TestTxnCommands.java +++ ql/src/test/org/apache/hadoop/hive/ql/TestTxnCommands.java @@ -34,7 +34,6 @@ import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; -import org.apache.curator.shaded.com.google.common.collect.Lists; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; @@ -76,6 +75,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.google.common.collect.Lists; + /** * The LockManager is not ready, but for no-concurrency straight-line path we can * test AC=true, and AC=false with commit/rollback/exception and test resulting data. diff --git ql/src/test/org/apache/hadoop/hive/ql/TestTxnCommandsForMmTable.java ql/src/test/org/apache/hadoop/hive/ql/TestTxnCommandsForMmTable.java index a067dc9c1c..d4c9121c9f 100644 --- ql/src/test/org/apache/hadoop/hive/ql/TestTxnCommandsForMmTable.java +++ ql/src/test/org/apache/hadoop/hive/ql/TestTxnCommandsForMmTable.java @@ -19,54 +19,18 @@ package org.apache.hadoop.hive.ql; import java.io.File; -import java.lang.reflect.Field; -import java.util.ArrayList; import java.util.Arrays; -import java.util.Comparator; -import java.util.HashMap; import java.util.List; -import java.util.Map; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicBoolean; -import org.apache.curator.shaded.com.google.common.collect.Lists; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; -import org.apache.hadoop.fs.FileUtil; import org.apache.hadoop.fs.Path; import org.apache.hadoop.hive.common.FileUtils; -import org.apache.hadoop.hive.common.ValidTxnList; import org.apache.hadoop.hive.conf.HiveConf; -import org.apache.hadoop.hive.metastore.api.CommitTxnRequest; -import org.apache.hadoop.hive.metastore.api.CompactionRequest; -import org.apache.hadoop.hive.metastore.api.CompactionType; -import org.apache.hadoop.hive.metastore.api.MetaException; -import org.apache.hadoop.hive.metastore.api.OpenTxnRequest; -import org.apache.hadoop.hive.metastore.api.OpenTxnsResponse; -import org.apache.hadoop.hive.metastore.api.ShowCompactRequest; -import org.apache.hadoop.hive.metastore.api.ShowCompactResponse; -import org.apache.hadoop.hive.metastore.api.ShowCompactResponseElement; -import org.apache.hadoop.hive.metastore.txn.AcidCompactionHistoryService; import org.apache.hadoop.hive.metastore.txn.TxnDbUtil; -import org.apache.hadoop.hive.metastore.txn.TxnStore; -import org.apache.hadoop.hive.metastore.txn.TxnUtils; -import org.apache.hadoop.hive.ql.io.AcidOutputFormat; -import org.apache.hadoop.hive.ql.io.BucketCodec; -import org.apache.hadoop.hive.ql.io.HiveInputFormat; -import org.apache.hadoop.hive.ql.processors.CommandProcessorResponse; -import org.apache.hadoop.hive.ql.session.SessionState; -import org.apache.hadoop.hive.metastore.txn.AcidOpenTxnsCounterService; -import org.apache.hadoop.hive.ql.txn.compactor.Cleaner; -import org.apache.hadoop.hive.ql.txn.compactor.Initiator; -import org.apache.hadoop.hive.ql.txn.compactor.Worker; -import org.junit.After; import org.junit.Assert; import org.junit.Before; -import org.junit.Ignore; -import org.junit.Rule; import org.junit.Test; -import org.junit.rules.ExpectedException; -import org.junit.rules.TestName; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git ql/src/test/org/apache/hadoop/hive/ql/stats/TestStatsUpdaterThread.java ql/src/test/org/apache/hadoop/hive/ql/stats/TestStatsUpdaterThread.java index 19d1928f99..84827d1604 100644 --- ql/src/test/org/apache/hadoop/hive/ql/stats/TestStatsUpdaterThread.java +++ ql/src/test/org/apache/hadoop/hive/ql/stats/TestStatsUpdaterThread.java @@ -26,7 +26,6 @@ import java.util.Map; import java.util.concurrent.atomic.AtomicBoolean; -import org.apache.curator.shaded.com.google.common.collect.Lists; import org.apache.hadoop.fs.FileUtil; import org.apache.hadoop.hive.common.StatsSetupConst; import org.apache.hadoop.hive.common.ValidWriteIdList; @@ -53,6 +52,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.google.common.collect.Lists; + public class TestStatsUpdaterThread { @SuppressWarnings("unused") static final private Logger LOG = LoggerFactory.getLogger(TestStatsUpdaterThread.class); diff --git ql/src/test/org/apache/hadoop/hive/ql/stats/TestStatsUtils.java ql/src/test/org/apache/hadoop/hive/ql/stats/TestStatsUtils.java index 4add29027d..850db9fefb 100644 --- ql/src/test/org/apache/hadoop/hive/ql/stats/TestStatsUtils.java +++ ql/src/test/org/apache/hadoop/hive/ql/stats/TestStatsUtils.java @@ -31,7 +31,8 @@ import org.apache.hadoop.hive.ql.plan.ColStatistics.Range; import org.apache.hadoop.hive.serde.serdeConstants; import org.junit.Test; -import org.spark_project.guava.collect.Sets; + +import com.google.common.collect.Sets; public class TestStatsUtils { diff --git ql/src/test/org/apache/hadoop/hive/ql/udf/generic/TestGenericUDAFBinarySetFunctions.java ql/src/test/org/apache/hadoop/hive/ql/udf/generic/TestGenericUDAFBinarySetFunctions.java index 3d33ea1b58..2762f18c6a 100644 --- ql/src/test/org/apache/hadoop/hive/ql/udf/generic/TestGenericUDAFBinarySetFunctions.java +++ ql/src/test/org/apache/hadoop/hive/ql/udf/generic/TestGenericUDAFBinarySetFunctions.java @@ -32,13 +32,12 @@ import org.apache.hadoop.hive.serde2.io.DoubleWritable; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.io.LongWritable; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.junit.runners.Parameterized.Parameters; -import jersey.repackaged.com.google.common.collect.Lists; +import com.google.common.collect.Lists; @RunWith(Parameterized.class) public class TestGenericUDAFBinarySetFunctions { diff --git standalone-metastore/metastore-common/src/main/java/org/apache/hadoop/hive/metastore/utils/FileUtils.java standalone-metastore/metastore-common/src/main/java/org/apache/hadoop/hive/metastore/utils/FileUtils.java index 155ecb18bf..bf206fffc2 100644 --- standalone-metastore/metastore-common/src/main/java/org/apache/hadoop/hive/metastore/utils/FileUtils.java +++ standalone-metastore/metastore-common/src/main/java/org/apache/hadoop/hive/metastore/utils/FileUtils.java @@ -17,7 +17,6 @@ */ package org.apache.hadoop.hive.metastore.utils; -import org.apache.curator.shaded.com.google.common.collect.Lists; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.ContentSummary; import org.apache.hadoop.fs.FileStatus; @@ -34,6 +33,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import com.google.common.collect.Lists; + import java.io.IOException; import java.net.URI; import java.util.ArrayList;