Skip to content

Commit 3663ace

Browse files
authored
Upgrade hadoop and spark (#343)
* New version * Unify links * New hadoop version * Drop exclude * Drop deprecation * New deps * PK fix * S3 integration test port * Fix * Fix created bucket * Fix unit methods * Fix unit methods * S3Setup fixes * PK fix * Upgrade common-beanutils * PK fix * Scala linting * Scala formatting * Changes * Changes * Ignore export parallelism IT * Scalafix * Drop guava dep * PK fix * Pom cleanup * PK fix * Deps to fix CVEs * S3A dependencies * More CVE upgrades * Alluxio deps * Bring back grpc-core * Final tweaks * Trying to enable ExportParallelismIT * Add detailed list of CVEs fixed
1 parent 97d7f06 commit 3663ace

13 files changed

Lines changed: 524 additions & 336 deletions

File tree

.github/workflows/ci-build.yml

Lines changed: 2 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.github/workflows/dependencies_check.yml

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.github/workflows/dependencies_update.yml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.github/workflows/release.yml

Lines changed: 24 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dependencies.md

Lines changed: 228 additions & 222 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

doc/changes/changelog.md

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

doc/changes/changes_2.9.0.md

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# Cloud Storage Extension 2.9.0, released 2025-09-01
2+
3+
Code name: Upgrade of hadoop libraries
4+
5+
## Summary
6+
This version upgrades hadoop from 3.3.6 to the latest 3.4.1, which fixes several CVEs in transient dependencies and
7+
leverages all the improvements the recent hadoop libs have.
8+
9+
Security fixes which were fixed:
10+
11+
### CVE-2025-48924: org.apache.commons:commons-lang3:jar:3.17.0:compile
12+
13+
Uncontrolled Recursion vulnerability in Apache Commons Lang.
14+
15+
This issue affects Apache Commons Lang: Starting with commons-lang:commons-lang 2.0 to 2.6, and, from org.apache.commons:commons-lang3 3.0 before 3.18.0.
16+
17+
The methods ClassUtils.getClass(...) can throw StackOverflowError on very long inputs. Because an Error is usually not handled by applications and libraries, a
18+
StackOverflowError could cause an application to stop.
19+
20+
#### References
21+
* https://ossindex.sonatype.org/vulnerability/CVE-2025-48924?component-type=maven&component-name=org.apache.commons%2Fcommons-lang3&utm_source=ossindex-client&utm_medium=integration&utm_content=1.8.1
22+
* http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2025-48924
23+
* GHSA-j288-q9x7-2f5v
24+
25+
### CVE-2025-53864: com.nimbusds:nimbus-jose-jwt:jar:9.47:compile
26+
27+
Connect2id Nimbus JOSE + JWT before 10.0.2 allows a remote attacker to cause a denial of service via a deeply nested JSON object supplied in a JWT claim set, because of uncontrolled recursion. NOTE: this is independent of the Gson 2.11.0 issue because the Connect2id product could have checked the JSON object nesting depth, regardless of what limits (if any) were imposed by Gson.
28+
29+
#### References
30+
* https://ossindex.sonatype.org/vulnerability/CVE-2025-53864?component-type=maven&component-name=com.nimbusds%2Fnimbus-jose-jwt&utm_source=ossindex-client&utm_medium=integration&utm_content=1.8.1
31+
* http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2025-53864
32+
* https://bitbucket.org/connect2id/nimbus-jose-jwt/issues/583/stackoverflowerror-due-to-deeply-nested
33+
34+
### CVE-2025-55163: io.netty:netty-codec-http2:jar:4.1.119.Final:compile
35+
36+
Netty is an asynchronous, event-driven network application framework. Prior to versions 4.1.124.Final and 4.2.4.Final, Netty is vulnerable to MadeYouReset DDoS. This is a logical vulnerability in the HTTP/2 protocol, that uses malformed HTTP/2 control frames in order to break the max concurrent streams limit - which results in resource exhaustion and distributed denial of service. This issue has been patched in versions 4.1.124.Final and 4.2.4.Final.
37+
38+
#### References
39+
* https://ossindex.sonatype.org/vulnerability/CVE-2025-55163?component-type=maven&component-name=io.netty%2Fnetty-codec-http2&utm_source=ossindex-client&utm_medium=integration&utm_content=1.8.1
40+
* http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2025-55163
41+
* GHSA-prj3-ccx8-p6x4
42+
43+
## Features
44+
45+
* #310: Upgrade spark and hadoop versions
46+
47+
## Dependency Updates
48+
49+
### Cloud Storage Extension
50+
51+
#### Compile Dependency Updates
52+
53+
* Added `com.google.code.gson:gson:2.13.1`
54+
* Updated `io.netty:netty-codec-http2:4.1.119.Final` to `4.1.124.Final`
55+
* Updated `org.apache.commons:commons-lang3:3.17.0` to `3.18.0`
56+
* Updated `org.apache.hadoop:hadoop-aws:3.3.6` to `3.4.1`
57+
* Updated `org.apache.hadoop:hadoop-azure-datalake:3.3.6` to `3.4.1`
58+
* Updated `org.apache.hadoop:hadoop-azure:3.3.6` to `3.4.1`
59+
* Updated `org.apache.hadoop:hadoop-common:3.3.6` to `3.4.1`
60+
* Updated `org.apache.hadoop:hadoop-hdfs-client:3.3.6` to `3.4.1`
61+
* Updated `org.apache.hadoop:hadoop-hdfs:3.3.6` to `3.4.1`
62+
* Updated `org.apache.orc:orc-core:1.9.6` to `1.9.5`
63+
* Added `software.amazon.awssdk:s3-transfer-manager:2.32.31`
64+
* Added `software.amazon.awssdk:s3:2.32.31`
65+
66+
#### Plugin Dependency Updates
67+
68+
* Updated `com.exasol:error-code-crawler-maven-plugin:2.0.3` to `2.0.4`
69+
* Updated `com.exasol:project-keeper-maven-plugin:5.1.0` to `5.2.3`

doc/user_guide/user_guide.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ downloaded jar file is the same as the checksum provided in the releases.
150150
To check the SHA256 result of the local jar, run the command:
151151

152152
```sh
153-
sha256sum exasol-cloud-storage-extension-2.8.8.jar
153+
sha256sum exasol-cloud-storage-extension-2.9.0.jar
154154
```
155155

156156
### Building From Source
@@ -180,7 +180,7 @@ mvn clean package -DskipTests=true
180180
```
181181

182182
The assembled jar file should be located at
183-
`target/exasol-cloud-storage-extension-2.8.8.jar`.
183+
`target/exasol-cloud-storage-extension-2.9.0.jar`.
184184

185185
### Create an Exasol Bucket
186186

@@ -202,7 +202,7 @@ for the HTTP protocol.
202202
Upload the jar file using curl command:
203203

204204
```sh
205-
curl -X PUT -T exasol-cloud-storage-extension-2.8.8.jar \
205+
curl -X PUT -T exasol-cloud-storage-extension-2.9.0.jar \
206206
http://w:<WRITE_PASSWORD>@exasol.datanode.domain.com:2580/<BUCKET>/
207207
```
208208

@@ -237,7 +237,7 @@ OPEN SCHEMA CLOUD_STORAGE_EXTENSION;
237237

238238
CREATE OR REPLACE JAVA SET SCRIPT IMPORT_PATH(...) EMITS (...) AS
239239
%scriptclass com.exasol.cloudetl.scriptclasses.FilesImportQueryGenerator;
240-
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.8.8.jar;
240+
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.9.0.jar;
241241
/
242242

243243
CREATE OR REPLACE JAVA SCALAR SCRIPT IMPORT_METADATA(...) EMITS (
@@ -247,12 +247,12 @@ CREATE OR REPLACE JAVA SCALAR SCRIPT IMPORT_METADATA(...) EMITS (
247247
end_index DECIMAL(36, 0)
248248
) AS
249249
%scriptclass com.exasol.cloudetl.scriptclasses.FilesMetadataReader;
250-
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.8.8.jar;
250+
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.9.0.jar;
251251
/
252252

253253
CREATE OR REPLACE JAVA SET SCRIPT IMPORT_FILES(...) EMITS (...) AS
254254
%scriptclass com.exasol.cloudetl.scriptclasses.FilesDataImporter;
255-
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.8.8.jar;
255+
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.9.0.jar;
256256
/
257257
```
258258

@@ -271,12 +271,12 @@ OPEN SCHEMA CLOUD_STORAGE_EXTENSION;
271271

272272
CREATE OR REPLACE JAVA SET SCRIPT EXPORT_PATH(...) EMITS (...) AS
273273
%scriptclass com.exasol.cloudetl.scriptclasses.TableExportQueryGenerator;
274-
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.8.8.jar;
274+
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.9.0.jar;
275275
/
276276

277277
CREATE OR REPLACE JAVA SET SCRIPT EXPORT_TABLE(...) EMITS (ROWS_AFFECTED INT) AS
278278
%scriptclass com.exasol.cloudetl.scriptclasses.TableDataExporter;
279-
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.8.8.jar;
279+
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.9.0.jar;
280280
/
281281
```
282282

@@ -410,13 +410,13 @@ CREATE OR REPLACE JAVA SCALAR SCRIPT IMPORT_METADATA(...) EMITS (
410410
) AS
411411
%jvmoption -DHTTPS_PROXY=http://username:password@10.10.1.10:1180
412412
%scriptclass com.exasol.cloudetl.scriptclasses.FilesMetadataReader;
413-
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.8.8.jar;
413+
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.9.0.jar;
414414
/
415415

416416
CREATE OR REPLACE JAVA SET SCRIPT IMPORT_FILES(...) EMITS (...) AS
417417
%jvmoption -DHTTPS_PROXY=http://username:password@10.10.1.10:1180
418418
%scriptclass com.exasol.cloudetl.scriptclasses.FilesDataImporter;
419-
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.8.8.jar;
419+
%jar /buckets/bfsdefault/<BUCKET>/exasol-cloud-storage-extension-2.9.0.jar;
420420
/
421421
```
422422

pk_generated_parent.pom

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)