This is an automated email from the ASF dual-hosted git repository.
jshao pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/gravitino.git
The following commit(s) were added to refs/heads/main by this push:
new 3c20d9506 [#4545] improvement(paimon-catalog): reduce
catalog-lakehouse-paimon libs size from 222MB to 75MB (#4547)
3c20d9506 is described below
commit 3c20d95065ea5d0139f6413b457221673e1d55ce
Author: Qiang-Liu <[email protected]>
AuthorDate: Fri Sep 27 15:49:28 2024 +0800
[#4545] improvement(paimon-catalog): reduce catalog-lakehouse-paimon libs
size from 222MB to 75MB (#4547)
### What changes were proposed in this pull request?
remove some unnecessary dependencies
### Why are the changes needed?
reduce catalog-lakehouse-paimon libs
Fix: #4545
### Does this PR introduce _any_ user-facing change?
No
### How was this patch tested?
CI passed
---------
Co-authored-by: fanng <[email protected]>
---
catalogs/catalog-lakehouse-paimon/build.gradle.kts | 62 ++++++++++++++++++----
1 file changed, 53 insertions(+), 9 deletions(-)
diff --git a/catalogs/catalog-lakehouse-paimon/build.gradle.kts
b/catalogs/catalog-lakehouse-paimon/build.gradle.kts
index 3974fba61..f30fd8880 100644
--- a/catalogs/catalog-lakehouse-paimon/build.gradle.kts
+++ b/catalogs/catalog-lakehouse-paimon/build.gradle.kts
@@ -30,40 +30,80 @@ val sparkMajorVersion: String =
sparkVersion.substringBeforeLast(".")
val paimonVersion: String = libs.versions.paimon.get()
dependencies {
- implementation(project(":api"))
- implementation(project(":common"))
- implementation(project(":core"))
+ implementation(project(":api")) {
+ exclude("*")
+ }
+ implementation(project(":common")) {
+ exclude("*")
+ }
+ implementation(project(":core")) {
+ exclude("*")
+ }
implementation(libs.bundles.paimon) {
exclude("com.sun.jersey")
exclude("javax.servlet")
+ exclude("org.apache.curator")
+ exclude("org.apache.hive")
+ exclude("org.apache.hbase")
+ exclude("org.apache.zookeeper")
+ exclude("org.eclipse.jetty.aggregate:jetty-all")
+ exclude("org.mortbay.jetty")
+ exclude("org.mortbay.jetty:jetty")
+ exclude("org.mortbay.jetty:jetty-util")
+ exclude("org.mortbay.jetty:jetty-sslengine")
+ exclude("it.unimi.dsi")
+ exclude("com.ververica")
+ exclude("org.apache.hadoop")
+ exclude("org.apache.commons")
+ exclude("org.xerial.snappy")
+ exclude("com.github.luben")
+ exclude("com.google.protobuf")
+ exclude("joda-time")
+ exclude("org.apache.parquet:parquet-jackson")
+ exclude("org.apache.parquet:parquet-format-structures")
+ exclude("org.apache.parquet:parquet-encoding")
+ exclude("org.apache.parquet:parquet-common")
+ exclude("org.apache.parquet:parquet-hadoop")
+ exclude("org.apache.paimon:paimon-codegen-loader")
+ exclude("org.apache.paimon:paimon-shade-caffeine-2")
+ exclude("org.apache.paimon:paimon-shade-guava-30")
}
implementation(libs.bundles.log4j)
implementation(libs.commons.lang3)
- implementation(libs.caffeine)
implementation(libs.guava)
implementation(libs.hadoop2.common) {
exclude("com.github.spotbugs")
exclude("com.sun.jersey")
exclude("javax.servlet")
+ exclude("org.apache.curator")
+ exclude("org.apache.zookeeper")
+ exclude("org.mortbay.jetty")
}
implementation(libs.hadoop2.hdfs) {
+ exclude("*")
+ }
+ implementation(libs.hadoop2.hdfs.client) {
exclude("com.sun.jersey")
exclude("javax.servlet")
+ exclude("org.fusesource.leveldbjni")
+ exclude("org.mortbay.jetty")
}
implementation(libs.hadoop2.mapreduce.client.core) {
- exclude("com.sun.jersey")
- exclude("javax.servlet")
+ exclude("*")
}
-
annotationProcessor(libs.lombok)
compileOnly(libs.lombok)
testImplementation(project(":clients:client-java"))
testImplementation(project(":integration-test-common", "testArtifacts"))
testImplementation(project(":server"))
- testImplementation(project(":server-common"))
+ testImplementation(project(":server-common")) {
+ exclude("org.mortbay.jetty")
+ exclude("com.sun.jersey.contribs")
+ }
testImplementation("org.apache.spark:spark-hive_$scalaVersion:$sparkVersion") {
exclude("org.apache.hadoop")
+ exclude("org.rocksdb")
}
testImplementation("org.apache.spark:spark-sql_$scalaVersion:$sparkVersion")
{
exclude("org.apache.avro")
@@ -94,7 +134,11 @@ tasks {
val copyCatalogLibs by registering(Copy::class) {
dependsOn("jar", "runtimeJars")
- from("build/libs")
+ from("build/libs") {
+ exclude("guava-*.jar")
+ exclude("log4j-*.jar")
+ exclude("slf4j-*.jar")
+ }
into("$rootDir/distribution/package/catalogs/lakehouse-paimon/libs")
}