Skip to content

MLE-30013 MLE-30014 MLE-30015 MLE-30016 MLE-30017 MLE-30018 CVEs in dependencies#647

Merged
rjdew-progress merged 7 commits into
developfrom
2026-PI3-S1-dependencies
Jul 10, 2026
Merged

MLE-30013 MLE-30014 MLE-30015 MLE-30016 MLE-30017 MLE-30018 CVEs in dependencies#647
rjdew-progress merged 7 commits into
developfrom
2026-PI3-S1-dependencies

Conversation

@rjdew-progress

Copy link
Copy Markdown
  • MLE-30013 MLE-30014 MLE-30015 OpenNLP CVEs
  • MLE-30016 GHSA-jjwr-xmw6-gf78 in Apache PDFBox v3.0.7
  • MLE-30017 MLE-30018 Jetty CVEs

Copilot AI review requested due to automatic review settings June 26, 2026 04:35
@rjdew-progress rjdew-progress requested a review from stevebio as a code owner June 26, 2026 04:35

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Updates several Gradle-managed dependencies to remediate referenced CVEs (OpenNLP/PDFBox/Jetty-related) and adjusts S3/AWS SDK integration and tests to remain compatible with the upgraded AWS SDK/Hadoop stack.

Changes:

  • Bump core dependency versions (Hadoop, AWS SDK, LangChain4j, Tika; plus Azure storage client).
  • Add explicit AWS SDK Apache HTTP client dependency needed by hadoop-aws after excluding the large AWS SDK bundle.
  • Adjust S3 credential handling usage in code/tests (AWS SDK DefaultCredentialsProvider instantiation + test arguments/fixtures).

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
gradle.properties Updates shared dependency versions (Hadoop/AWS SDK/LangChain4j/Tika).
flux-embedding-model-minilm/build.gradle Bumps the minilm embeddings artifact version.
flux-cli/build.gradle Adds software.amazon.awssdk:apache-client and bumps Azure Data Lake dependency.
flux-cli/src/main/java/com/marklogic/flux/impl/S3Params.java Updates AWS SDK credentials provider construction for newer SDK versions.
flux-cli/src/test/java/com/marklogic/flux/impl/S3ParamsTest.java Adds fake AWS credentials setup/teardown for deterministic DefaultCredentialsProvider behavior.
flux-cli/src/test/java/com/marklogic/flux/impl/HandleErrorTest.java Uses explicit S3 access key/secret args in the S3 connectivity error test.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread flux-cli/src/test/java/com/marklogic/flux/impl/S3ParamsTest.java
Comment thread gradle.properties Outdated
Comment thread flux-embedding-model-minilm/build.gradle Outdated

@rjrudin rjrudin left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I would do all the bumps except forcing Hadoop to a version other than the one that Spark depends on.

Comment thread gradle.properties Outdated
awssdkVersion=2.29.52
langchain4jVersion=1.11.0
tikaVersion=3.2.3
hadoopVersion=3.5.0

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Spark can be bumped to 4.1.2 - https://spark.apache.org/releases/spark-release-4-1-2.html - but I strongly recommend not forcing Spark to use a version of Hadoop that it's not tested with. Spark and Hadoop have a tight coupling and once we force Spark to use a different version of Hadoop, we're no longer using the Apache-verified/tested Spark, we're using a custom version of Spark.

Any vulnerabilities associated with Hadoop thus have to be accepted and I think can reasonably be justified as "There are far more users of Apache Spark that are living with these vulnerabilities and waiting for Apache Spark 4.2.0 to be released".

If necessary, you could try bumping to the latest preview release of Spark 4.2.0 to see how many vulnerabilities that addresses.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Reverted the Hadoop version bump.

@rjdew-progress rjdew-progress force-pushed the 2026-PI3-S1-dependencies branch 2 times, most recently from ba383ff to 390f5f7 Compare June 26, 2026 21:58
@rjdew-progress rjdew-progress requested a review from rjrudin June 29, 2026 15:48
Comment thread gradle.properties Outdated
awssdkVersion=2.29.52
langchain4jVersion=1.11.0
tikaVersion=3.2.3
awssdkVersion=2.46.17

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This has the same risk as forcing Spark to use a different version of Hadoop - it's forcing hadoop-aws to use a version of the AWS SDK other than the one it was tested with. In theory, it's fine - i.e. if semver is being strictly followed by every dependency. But we can't know that for sure, so I would keep this at 2.29.52.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Reverted this version bump


if (addCredentials) {
try (DefaultCredentialsProvider provider = DefaultCredentialsProvider.create()) {
try (DefaultCredentialsProvider provider = DefaultCredentialsProvider.builder().build()) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This looks like a useful change regardless of what version of the AWS SDK is used, as the fact that 2.46 deprecates it suggests that we ought to be using this approach now anyway.

Comment thread flux-cli/build.gradle Outdated

// Required by hadoop-aws for its HTTP client; must be declared explicitly because software.amazon.awssdk is
// excluded from hadoop-aws to avoid the 558mb bundle.
implementation "software.amazon.awssdk:apache-client:${awssdkVersion}"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Is this needed as a result of bumping the AWS SDK to 2.46.x? i.e. it's not needed if we stay with 2.29.52?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

reverted this change

RitaChen609
RitaChen609 previously approved these changes Jul 2, 2026
@rjdew-progress rjdew-progress marked this pull request as draft July 6, 2026 14:46
@rjdew-progress rjdew-progress force-pushed the 2026-PI3-S1-dependencies branch from 8da4722 to 6004bd9 Compare July 8, 2026 22:51
@rjdew-progress rjdew-progress marked this pull request as ready for review July 8, 2026 22:54
@rjdew-progress rjdew-progress requested a review from rjrudin July 9, 2026 19:00
@rjdew-progress rjdew-progress dismissed rjrudin’s stale review July 9, 2026 22:18

Reverted the dependency updates in question

Comment thread flux-cli/build.gradle
implementation "org.apache.hadoop:hadoop-azure:${hadoopVersion}"
// For Blob Storage
implementation "com.microsoft.azure:azure-storage:8.6.6"
implementation "com.azure:azure-storage-blob:12.35.0"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Is this known to work with hadoop-azure? IIRC, I didn't bump this up before due to what Hadoop-azure depends on. I can test it out later today, actually doing some Azure test in studio right now.

@rjdew-progress rjdew-progress force-pushed the 2026-PI3-S1-dependencies branch from 7c2fdf2 to 41d8f69 Compare July 10, 2026 14:56
@rjdew-progress rjdew-progress merged commit c0e4a70 into develop Jul 10, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants