Skip to content

Commit 6db4594

Browse files
xushiyansatishkotha
authored andcommitted
[HUDI-4971] Fix shading kryo-shaded with reusing configs (apache#6873)
1 parent 4f97952 commit 6db4594

15 files changed

Lines changed: 63 additions & 161 deletions

File tree

packaging/hudi-aws-bundle/pom.xml

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@
7171
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
7272
</transformers>
7373
<artifactSet>
74-
<includes>
74+
<includes combine.children="append">
7575
<include>org.apache.hudi:hudi-common</include>
7676
<include>org.apache.hudi:hudi-hadoop-mr</include>
7777
<include>org.apache.hudi:hudi-sync-common</include>
@@ -102,15 +102,7 @@
102102
<include>org.openjdk.jol:jol-core</include>
103103
</includes>
104104
</artifactSet>
105-
<relocations>
106-
<relocation>
107-
<pattern>com.esotericsoftware.kryo.</pattern>
108-
<shadedPattern>org.apache.hudi.com.esotericsoftware.kryo.</shadedPattern>
109-
</relocation>
110-
<relocation>
111-
<pattern>com.esotericsoftware.minlog.</pattern>
112-
<shadedPattern>org.apache.hudi.com.esotericsoftware.minlog.</shadedPattern>
113-
</relocation>
105+
<relocations combine.children="append">
114106
<relocation>
115107
<pattern>com.beust.jcommander.</pattern>
116108
<shadedPattern>org.apache.hudi.com.beust.jcommander.</shadedPattern>
@@ -134,10 +126,6 @@
134126
<pattern>org.apache.htrace.</pattern>
135127
<shadedPattern>org.apache.hudi.org.apache.htrace.</shadedPattern>
136128
</relocation>
137-
<relocation>
138-
<pattern>org.objenesis.</pattern>
139-
<shadedPattern>org.apache.hudi.org.objenesis.</shadedPattern>
140-
</relocation>
141129
<relocation>
142130
<pattern>com.amazonaws.</pattern>
143131
<shadedPattern>org.apache.hudi.com.amazonaws.</shadedPattern>

packaging/hudi-datahub-sync-bundle/pom.xml

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@
6767
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
6868
</transformers>
6969
<artifactSet>
70-
<includes>
70+
<includes combine.children="append">
7171
<include>org.apache.hudi:hudi-common</include>
7272
<include>org.apache.hudi:hudi-hadoop-mr</include>
7373
<include>org.apache.hudi:hudi-sync-common</include>
@@ -98,15 +98,7 @@
9898
<include>org.openjdk.jol:jol-core</include>
9999
</includes>
100100
</artifactSet>
101-
<relocations>
102-
<relocation>
103-
<pattern>com.esotericsoftware.kryo.</pattern>
104-
<shadedPattern>org.apache.hudi.com.esotericsoftware.kryo.</shadedPattern>
105-
</relocation>
106-
<relocation>
107-
<pattern>com.esotericsoftware.minlog.</pattern>
108-
<shadedPattern>org.apache.hudi.com.esotericsoftware.minlog.</shadedPattern>
109-
</relocation>
101+
<relocations combine.children="append">
110102
<relocation>
111103
<pattern>org.apache.commons.io.</pattern>
112104
<shadedPattern>org.apache.hudi.org.apache.commons.io.</shadedPattern>
@@ -126,10 +118,6 @@
126118
<pattern>org.apache.htrace.</pattern>
127119
<shadedPattern>org.apache.hudi.org.apache.htrace.</shadedPattern>
128120
</relocation>
129-
<relocation>
130-
<pattern>org.objenesis.</pattern>
131-
<shadedPattern>org.apache.hudi.org.objenesis.</shadedPattern>
132-
</relocation>
133121
<relocation>
134122
<pattern>org.openjdk.jol.</pattern>
135123
<shadedPattern>org.apache.hudi.org.openjdk.jol.</shadedPattern>

packaging/hudi-flink-bundle/pom.xml

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@
7474
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
7575
</transformers>
7676
<artifactSet>
77-
<includes>
77+
<includes combine.children="append">
7878
<include>org.apache.hudi:hudi-common</include>
7979
<include>org.apache.hudi:hudi-client-common</include>
8080
<include>org.apache.hudi:hudi-flink-client</include>
@@ -129,9 +129,6 @@
129129
<include>org.eclipse.jetty.websocket:*</include>
130130
<include>javax.servlet:javax.servlet-api</include>
131131

132-
<!-- Used for HUDI write handle -->
133-
<include>com.esotericsoftware:kryo-shaded</include>
134-
135132
<include>org.apache.flink:${flink.hadoop.compatibility.artifactId}</include>
136133
<include>org.apache.flink:flink-json</include>
137134
<include>org.apache.flink:${flink.parquet.artifactId}</include>
@@ -166,7 +163,7 @@
166163
<include>org.openjdk.jol:jol-core</include>
167164
</includes>
168165
</artifactSet>
169-
<relocations>
166+
<relocations combine.children="append">
170167
<relocation>
171168
<pattern>javax.servlet.</pattern>
172169
<shadedPattern>${flink.bundle.shade.prefix}javax.servlet.</shadedPattern>
@@ -214,11 +211,6 @@
214211
<pattern>org.eclipse.jetty.</pattern>
215212
<shadedPattern>${flink.bundle.shade.prefix}org.apache.jetty.</shadedPattern>
216213
</relocation>
217-
<!-- Shade kryo-shaded because it may conflict with kryo used by flink -->
218-
<relocation>
219-
<pattern>com.esotericsoftware.kryo.</pattern>
220-
<shadedPattern>${flink.bundle.shade.prefix}com.esotericsoftware.kryo.</shadedPattern>
221-
</relocation>
222214
<relocation>
223215
<pattern>com.fasterxml.jackson.</pattern>
224216
<shadedPattern>${flink.bundle.shade.prefix}com.fasterxml.jackson.</shadedPattern>
@@ -645,13 +637,6 @@
645637
<scope>${flink.bundle.hive.scope}</scope>
646638
</dependency>
647639

648-
<!-- kryo -->
649-
<dependency>
650-
<groupId>com.esotericsoftware</groupId>
651-
<artifactId>kryo-shaded</artifactId>
652-
<version>4.0.2</version>
653-
</dependency>
654-
655640
<!-- ORC -->
656641
<dependency>
657642
<groupId>org.apache.orc</groupId>

packaging/hudi-gcp-bundle/pom.xml

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@
9191
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
9292
</transformers>
9393
<artifactSet>
94-
<includes>
94+
<includes combine.children="append">
9595
<include>org.apache.hudi:hudi-common</include>
9696
<include>org.apache.hudi:hudi-hadoop-mr</include>
9797
<include>org.apache.hudi:hudi-sync-common</include>
@@ -117,15 +117,7 @@
117117
<include>org.openjdk.jol:jol-core</include>
118118
</includes>
119119
</artifactSet>
120-
<relocations>
121-
<relocation>
122-
<pattern>com.esotericsoftware.kryo.</pattern>
123-
<shadedPattern>org.apache.hudi.com.esotericsoftware.kryo.</shadedPattern>
124-
</relocation>
125-
<relocation>
126-
<pattern>com.esotericsoftware.minlog.</pattern>
127-
<shadedPattern>org.apache.hudi.com.esotericsoftware.minlog.</shadedPattern>
128-
</relocation>
120+
<relocations combine.children="append">
129121
<relocation>
130122
<pattern>org.apache.commons.io.</pattern>
131123
<shadedPattern>org.apache.hudi.org.apache.commons.io.</shadedPattern>
@@ -145,10 +137,6 @@
145137
<pattern>org.apache.htrace.</pattern>
146138
<shadedPattern>org.apache.hudi.org.apache.htrace.</shadedPattern>
147139
</relocation>
148-
<relocation>
149-
<pattern>org.objenesis.</pattern>
150-
<shadedPattern>org.apache.hudi.org.objenesis.</shadedPattern>
151-
</relocation>
152140
<relocation>
153141
<pattern>org.openjdk.jol.</pattern>
154142
<shadedPattern>org.apache.hudi.org.openjdk.jol.</shadedPattern>

packaging/hudi-hadoop-mr-bundle/pom.xml

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -65,16 +65,13 @@
6565
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
6666
</transformers>
6767
<artifactSet>
68-
<includes>
68+
<includes combine.children="append">
6969
<include>org.apache.hudi:hudi-common</include>
7070
<include>org.apache.hudi:hudi-hadoop-mr</include>
7171
<!-- Parquet -->
7272
<include>org.apache.parquet:parquet-avro</include>
7373
<include>org.apache.parquet:parquet-hadoop-bundle</include>
7474
<include>org.apache.avro:avro</include>
75-
<include>com.esotericsoftware:kryo-shaded</include>
76-
<include>org.objenesis:objenesis</include>
77-
<include>com.esotericsoftware:minlog</include>
7875
<include>org.apache.hbase:hbase-common</include>
7976
<include>org.apache.hbase:hbase-client</include>
8077
<include>org.apache.hbase:hbase-hadoop-compat</include>
@@ -93,23 +90,11 @@
9390
<include>org.openjdk.jol:jol-core</include>
9491
</includes>
9592
</artifactSet>
96-
<relocations>
93+
<relocations combine.children="append">
9794
<relocation>
9895
<pattern>com.yammer.metrics.</pattern>
9996
<shadedPattern>org.apache.hudi.com.yammer.metrics.</shadedPattern>
10097
</relocation>
101-
<relocation>
102-
<pattern>com.esotericsoftware.kryo.</pattern>
103-
<shadedPattern>org.apache.hudi.com.esotericsoftware.kryo.</shadedPattern>
104-
</relocation>
105-
<relocation>
106-
<pattern>org.objenesis.</pattern>
107-
<shadedPattern>org.apache.hudi.org.objenesis.</shadedPattern>
108-
</relocation>
109-
<relocation>
110-
<pattern>com.esotericsoftware.minlog.</pattern>
111-
<shadedPattern>org.apache.hudi.com.esotericsoftware.minlog.</shadedPattern>
112-
</relocation>
11398
<relocation>
11499
<pattern>org.apache.avro.</pattern>
115100
<shadedPattern>org.apache.hudi.org.apache.avro.</shadedPattern>

packaging/hudi-hive-sync-bundle/pom.xml

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@
6565
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
6666
</transformers>
6767
<artifactSet>
68-
<includes>
68+
<includes combine.children="append">
6969
<include>org.apache.hudi:hudi-common</include>
7070
<include>org.apache.hudi:hudi-hadoop-mr</include>
7171
<include>org.apache.hudi:hudi-sync-common</include>
@@ -87,26 +87,11 @@
8787
<include>org.apache.hbase.thirdparty:hbase-shaded-protobuf</include>
8888
<include>org.apache.htrace:htrace-core4</include>
8989
<include>org.apache.parquet:parquet-avro</include>
90-
<include>com.esotericsoftware:kryo-shaded</include>
91-
<include>org.objenesis:objenesis</include>
92-
<include>com.esotericsoftware:minlog</include>
9390
<include>commons-io:commons-io</include>
9491
<include>org.openjdk.jol:jol-core</include>
9592
</includes>
9693
</artifactSet>
97-
<relocations>
98-
<relocation>
99-
<pattern>com.esotericsoftware.kryo.</pattern>
100-
<shadedPattern>org.apache.hudi.com.esotericsoftware.kryo.</shadedPattern>
101-
</relocation>
102-
<relocation>
103-
<pattern>org.objenesis.</pattern>
104-
<shadedPattern>org.apache.hudi.org.objenesis.</shadedPattern>
105-
</relocation>
106-
<relocation>
107-
<pattern>com.esotericsoftware.minlog.</pattern>
108-
<shadedPattern>org.apache.hudi.com.esotericsoftware.minlog.</shadedPattern>
109-
</relocation>
94+
<relocations combine.children="append">
11095
<relocation>
11196
<pattern>org.apache.commons.io.</pattern>
11297
<shadedPattern>org.apache.hudi.org.apache.commons.io.</shadedPattern>

packaging/hudi-integ-test-bundle/pom.xml

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@
6666
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
6767
</transformers>
6868
<artifactSet>
69-
<includes>
69+
<includes combine.children="append">
7070
<include>commons-codec:commons-codec</include>
7171
<include>commons-dbcp:commons-dbcp</include>
7272
<include>commons-lang:commons-lang</include>
@@ -156,9 +156,6 @@
156156
<include>org.apache.hive:hive-jdbc</include>
157157
<include>org.apache.hive:hive-exec</include>
158158

159-
<include>com.esotericsoftware:kryo-shaded</include>
160-
<include>org.objenesis:objenesis</include>
161-
<include>com.esotericsoftware:minlog</include>
162159
<include>com.yammer.metrics:metrics-core</include>
163160

164161
<include>org.apache.thrift:libfb303</include>
@@ -187,7 +184,7 @@
187184
<include>org.openjdk.jol:jol-core</include>
188185
</includes>
189186
</artifactSet>
190-
<relocations>
187+
<relocations combine.children="append">
191188
<!-- NOTE: We have to relocate all classes w/in org.apache.spark.sql.avro to avoid
192189
potential classpath collisions in case users would like to also use "spark-avro" w/in
193190
their runtime, since Hudi carries some of the same classes as "spark-avro" -->
@@ -282,18 +279,6 @@
282279
<pattern>org.apache.hive.jdbc.</pattern>
283280
<shadedPattern>org.apache.hudi.org.apache.hive.jdbc.</shadedPattern>
284281
</relocation>
285-
<relocation>
286-
<pattern>com.esotericsoftware.kryo.</pattern>
287-
<shadedPattern>org.apache.hudi.com.esotericsoftware.kryo.</shadedPattern>
288-
</relocation>
289-
<relocation>
290-
<pattern>org.objenesis.</pattern>
291-
<shadedPattern>org.apache.hudi.org.objenesis.</shadedPattern>
292-
</relocation>
293-
<relocation>
294-
<pattern>com.esotericsoftware.minlog.</pattern>
295-
<shadedPattern>org.apache.hudi.com.esotericsoftware.minlog.</shadedPattern>
296-
</relocation>
297282
<relocation>
298283
<pattern>com.codahale.metrics.</pattern>
299284
<shadedPattern>org.apache.hudi.com.codahale.metrics.</shadedPattern>

packaging/hudi-kafka-connect-bundle/pom.xml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@
7171
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
7272
</transformers>
7373
<artifactSet>
74-
<includes>
74+
<includes combine.children="append">
7575
<include>org.apache.hudi:hudi-common</include>
7676
<include>org.apache.hudi:hudi-client-common</include>
7777
<include>org.apache.hudi:hudi-java-client</include>
@@ -114,9 +114,6 @@
114114
<include>io.prometheus:simpleclient_pushgateway</include>
115115
<include>io.prometheus:simpleclient_common</include>
116116
<include>com.google.protobuf:protobuf-java</include>
117-
<include>org.objenesis:objenesis</include>
118-
<include>com.esotericsoftware:kryo-shaded</include>
119-
<include>com.esotericsoftware:minlog</include>
120117

121118
<include>org.apache.hbase:hbase-client</include>
122119
<include>org.apache.hbase:hbase-common</include>
@@ -136,7 +133,7 @@
136133
<include>org.openjdk.jol:jol-core</include>
137134
</includes>
138135
</artifactSet>
139-
<relocations>
136+
<relocations combine.children="append">
140137
<relocation>
141138
<pattern>com.google.protobuf.</pattern>
142139
<shadedPattern>${kafka.connect.bundle.shade.prefix}com.google.protobuf.</shadedPattern>

packaging/hudi-presto-bundle/pom.xml

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -65,16 +65,13 @@
6565
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
6666
</transformers>
6767
<artifactSet>
68-
<includes>
68+
<includes combine.children="append">
6969
<include>org.apache.hudi:hudi-common</include>
7070
<include>org.apache.hudi:hudi-hadoop-mr</include>
7171

7272
<include>org.apache.parquet:parquet-avro</include>
7373
<include>org.apache.avro:avro</include>
7474
<include>org.codehaus.jackson:*</include>
75-
<include>com.esotericsoftware:kryo-shaded</include>
76-
<include>org.objenesis:objenesis</include>
77-
<include>com.esotericsoftware:minlog</include>
7875
<include>org.apache.commons:commons-lang3</include>
7976
<include>org.apache.hbase:hbase-common</include>
8077
<include>org.apache.hbase:hbase-client</include>
@@ -97,7 +94,7 @@
9794
<include>org.openjdk.jol:jol-core</include>
9895
</includes>
9996
</artifactSet>
100-
<relocations>
97+
<relocations combine.children="append">
10198
<relocation>
10299
<pattern>org.apache.parquet.avro.</pattern>
103100
<shadedPattern>org.apache.hudi.org.apache.parquet.avro.</shadedPattern>
@@ -129,18 +126,6 @@
129126
<pattern>org.codehaus.jackson.</pattern>
130127
<shadedPattern>org.apache.hudi.org.codehaus.jackson.</shadedPattern>
131128
</relocation>
132-
<relocation>
133-
<pattern>com.esotericsoftware.kryo.</pattern>
134-
<shadedPattern>org.apache.hudi.com.esotericsoftware.kryo.</shadedPattern>
135-
</relocation>
136-
<relocation>
137-
<pattern>org.objenesis.</pattern>
138-
<shadedPattern>org.apache.hudi.org.objenesis.</shadedPattern>
139-
</relocation>
140-
<relocation>
141-
<pattern>com.esotericsoftware.minlog.</pattern>
142-
<shadedPattern>org.apache.hudi.com.esotericsoftware.minlog.</shadedPattern>
143-
</relocation>
144129
<relocation>
145130
<pattern>com.yammer.metrics.</pattern>
146131
<shadedPattern>org.apache.hudi.com.yammer.metrics.</shadedPattern>
@@ -248,7 +233,6 @@
248233
<exclude>META-INF/*.RSA</exclude>
249234
<exclude>META-INF/services/javax.*</exclude>
250235
<exclude>**/*.proto</exclude>
251-
<exclude>com/esotericsoftware/reflectasm/**</exclude>
252236
<exclude>hbase-webapps/**</exclude>
253237
<exclude>stringBehavior.avsc</exclude>
254238
</excludes>

0 commit comments

Comments
 (0)