From ea23f086c483f5c7b3415cfe4b923a668d0fd8f5 Mon Sep 17 00:00:00 2001 From: dervoeti Date: Wed, 29 Jan 2025 11:54:35 +0100 Subject: [PATCH 1/6] feat(druid): Add version 31.0.1 --- CHANGELOG.md | 2 + druid/Dockerfile | 2 +- .../31.0.1/01-remove-ranger-security.patch | 33 ++++ .../02-prometheus-emitter-from-source.patch | 65 ++++++++ .../03-stop-building-unused-extensions.patch | 55 +++++++ .../31.0.1/04-update-patch-dependencies.patch | 143 ++++++++++++++++++ .../31.0.1/05-xmllayout-dependencies.patch | 27 ++++ .../patches/31.0.1/06-dont-build-targz.patch | 23 +++ .../patches/31.0.1/07-cyclonedx-plugin.patch | 17 +++ ...E-2024-36114-bump-aircompressor-0-27.patch | 37 +++++ .../patches/31.0.1/09-update-fmpp.patch | 21 +++ .../31.0.1/10-cve-2023-34455-rm-snappy.patch | 36 +++++ druid/versions.py | 7 + 13 files changed, 467 insertions(+), 1 deletion(-) create mode 100644 druid/stackable/patches/31.0.1/01-remove-ranger-security.patch create mode 100644 druid/stackable/patches/31.0.1/02-prometheus-emitter-from-source.patch create mode 100644 druid/stackable/patches/31.0.1/03-stop-building-unused-extensions.patch create mode 100644 druid/stackable/patches/31.0.1/04-update-patch-dependencies.patch create mode 100644 druid/stackable/patches/31.0.1/05-xmllayout-dependencies.patch create mode 100644 druid/stackable/patches/31.0.1/06-dont-build-targz.patch create mode 100644 druid/stackable/patches/31.0.1/07-cyclonedx-plugin.patch create mode 100644 druid/stackable/patches/31.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch create mode 100644 druid/stackable/patches/31.0.1/09-update-fmpp.patch create mode 100644 druid/stackable/patches/31.0.1/10-cve-2023-34455-rm-snappy.patch diff --git a/CHANGELOG.md b/CHANGELOG.md index 235f211b4..d4b770239 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ All notable changes to this project will be documented in this file. command logger which allows to enter messages into the system log. - vector: Add version 0.43.1 ([#980]). - opa: Add version 1.0.0 ([#981]) +- druid: Add version 31.0.1 ([#984]) ### Removed @@ -36,6 +37,7 @@ All notable changes to this project will be documented in this file. [#962]: https://github.com/stackabletech/docker-images/pull/962 [#980]: https://github.com/stackabletech/docker-images/pull/980 [#981]: https://github.com/stackabletech/docker-images/pull/981 +[#984]: https://github.com/stackabletech/docker-images/pull/984 ## [24.11.1] - 2025-01-14 diff --git a/druid/Dockerfile b/druid/Dockerfile index 6cc597774..de5137591 100644 --- a/druid/Dockerfile +++ b/druid/Dockerfile @@ -18,7 +18,7 @@ RUN < + + +--- + 0 files changed + +diff --git a/distribution/pom.xml b/distribution/pom.xml +index 0f17a8c877..d7cd645767 100644 +--- a/distribution/pom.xml ++++ b/distribution/pom.xml +@@ -252,8 +252,6 @@ + -c + org.apache.druid.extensions:druid-pac4j + -c +- org.apache.druid.extensions:druid-ranger-security +- -c + org.apache.druid.extensions:druid-kubernetes-extensions + -c + org.apache.druid.extensions:druid-catalog +diff --git a/pom.xml b/pom.xml +index cfca79dc6e..2acb812cbe 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -199,7 +199,6 @@ + extensions-core/simple-client-sslcontext + extensions-core/druid-basic-security + extensions-core/google-extensions +- extensions-core/druid-ranger-security + extensions-core/druid-catalog + extensions-core/testing-tools + diff --git a/druid/stackable/patches/31.0.1/02-prometheus-emitter-from-source.patch b/druid/stackable/patches/31.0.1/02-prometheus-emitter-from-source.patch new file mode 100644 index 000000000..8f0ca6795 --- /dev/null +++ b/druid/stackable/patches/31.0.1/02-prometheus-emitter-from-source.patch @@ -0,0 +1,65 @@ +Include Prometheus emitter in distribution + +From: Lars Francke + + +--- + 0 files changed + +diff --git a/distribution/pom.xml b/distribution/pom.xml +index d7cd645767..eda1ddcfab 100644 +--- a/distribution/pom.xml ++++ b/distribution/pom.xml +@@ -464,6 +464,52 @@ + + + ++ ++ stackable-bundle-contrib-exts ++ ++ true ++ ++ ++ ++ ++ org.codehaus.mojo ++ exec-maven-plugin ++ ++ ++ pull-deps-contrib-exts ++ package ++ ++ exec ++ ++ ++ ${project.parent.basedir}/examples/bin/run-java ++ ++ -classpath ++ ++ -Ddruid.extensions.loadList=[] ++ -Ddruid.extensions.directory=${project.build.directory}/extensions ++ ++ ++ -Ddruid.extensions.hadoopDependenciesDir=${project.build.directory}/hadoop-dependencies ++ ++ org.apache.druid.cli.Main ++ tools ++ pull-deps ++ --defaultVersion ++ ${project.parent.version} ++ -l ++ ${settings.localRepository} ++ --no-default-hadoop ++ -c ++ org.apache.druid.extensions.contrib:prometheus-emitter ++ ++ ++ ++ ++ ++ ++ ++ + + integration-test + diff --git a/druid/stackable/patches/31.0.1/03-stop-building-unused-extensions.patch b/druid/stackable/patches/31.0.1/03-stop-building-unused-extensions.patch new file mode 100644 index 000000000..7d0f91dd1 --- /dev/null +++ b/druid/stackable/patches/31.0.1/03-stop-building-unused-extensions.patch @@ -0,0 +1,55 @@ +Stop building unused extensions. + +From: Lars Francke + +By default Druid builds all community extensions and then discards them +while assembling the final distribution. This patch removes unused +extensions from the build. +--- + 0 files changed + +diff --git a/pom.xml b/pom.xml +index 2acb812cbe..38e0ddc61a 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -201,39 +201,9 @@ + extensions-core/google-extensions + extensions-core/druid-catalog + extensions-core/testing-tools ++ + +- extensions-contrib/compressed-bigdecimal +- extensions-contrib/influx-extensions +- extensions-contrib/cassandra-storage +- extensions-contrib/dropwizard-emitter +- extensions-contrib/cloudfiles-extensions +- extensions-contrib/graphite-emitter +- extensions-contrib/distinctcount +- extensions-contrib/statsd-emitter +- extensions-contrib/time-min-max +- extensions-contrib/virtual-columns +- extensions-contrib/thrift-extensions +- extensions-contrib/ambari-metrics-emitter +- extensions-contrib/sqlserver-metadata-storage +- extensions-contrib/kafka-emitter +- extensions-contrib/redis-cache +- extensions-contrib/opentsdb-emitter +- extensions-contrib/materialized-view-maintenance +- extensions-contrib/materialized-view-selection +- extensions-contrib/momentsketch +- extensions-contrib/moving-average-query +- extensions-contrib/tdigestsketch +- extensions-contrib/ddsketch +- extensions-contrib/influxdb-emitter +- extensions-contrib/gce-extensions +- extensions-contrib/aliyun-oss-extensions + extensions-contrib/prometheus-emitter +- extensions-contrib/opentelemetry-emitter +- extensions-contrib/kubernetes-overlord-extensions +- extensions-contrib/druid-iceberg-extensions +- extensions-contrib/druid-deltalake-extensions +- extensions-contrib/spectator-histogram +- extensions-contrib/rabbit-stream-indexing-service + + + distribution diff --git a/druid/stackable/patches/31.0.1/04-update-patch-dependencies.patch b/druid/stackable/patches/31.0.1/04-update-patch-dependencies.patch new file mode 100644 index 000000000..364fe1cc5 --- /dev/null +++ b/druid/stackable/patches/31.0.1/04-update-patch-dependencies.patch @@ -0,0 +1,143 @@ +Updates all dependencies that have a new patch release available. + +From: Lukas Krug + + +--- +diff --git a/extensions-core/druid-pac4j/pom.xml b/extensions-core/druid-pac4j/pom.xml +index 3693d28..8be5e4c 100644 +--- a/extensions-core/druid-pac4j/pom.xml ++++ b/extensions-core/druid-pac4j/pom.xml +@@ -34,7 +34,7 @@ + + + +- 4.5.7 ++ 4.5.8 + + + 1.7 +diff --git a/extensions-core/kubernetes-extensions/pom.xml b/extensions-core/kubernetes-extensions/pom.xml +index 1e513ec..7f43fdd 100644 +--- a/extensions-core/kubernetes-extensions/pom.xml ++++ b/extensions-core/kubernetes-extensions/pom.xml +@@ -34,7 +34,7 @@ + + + +- 19.0.0 ++ 19.0.2 + + + +diff --git a/extensions-core/orc-extensions/pom.xml b/extensions-core/orc-extensions/pom.xml +index 1b6a394..bb4a9be 100644 +--- a/extensions-core/orc-extensions/pom.xml ++++ b/extensions-core/orc-extensions/pom.xml +@@ -31,7 +31,7 @@ + + 4.0.0 + +- 1.7.6 ++ 1.7.11 + + + +diff --git a/extensions-core/parquet-extensions/pom.xml b/extensions-core/parquet-extensions/pom.xml +index 0d18d91..a8f9e7d 100644 +--- a/extensions-core/parquet-extensions/pom.xml ++++ b/extensions-core/parquet-extensions/pom.xml +@@ -201,7 +201,7 @@ + + + +- 1.13.0 ++ 1.13.1 + + + +diff --git a/pom.xml b/pom.xml +index e5bcfaf..80861bc 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -74,7 +74,7 @@ + 1.8 + 8 + UTF-8 +- 0.9.0.M2 ++ 0.9.1.v20140329 + 5.5.0 + 3.9.0 + ++ 8.5.6 + 32.0.1-jre + 4.1.0 + 1.3 +- 9.4.56.v20240826 ++ 9.4.57.v20241219 + 1.19.4 +- 2.12.7.20221012 +- 1.9.13 ++ 2.12.7.20240502 ++ 1.9.14-MULE-002 + 2.22.1 + 8.2.0 + 2.7.3 + 3.10.6.Final +- 4.1.108.Final +- 42.7.2 ++ 4.1.117.Final ++ 42.7.5 + 3.25.5 + 1.3.1 + 1.7.36 +@@ -118,17 +118,17 @@ + + core +- 1.12.638 +- 2.8.0 +- 0.8.7 ++ 1.12.780 ++ 2.8.8 ++ 0.8.12 + 6.2.5.Final +- 4.5.13 ++ 4.5.14 + + 3.8.4 + 2.5.7 + 2.2.0 + 1.42.3 +- v1-rev20230606-2.0.0 ++ v1-rev20250107-2.0.0 + 2.29.1 + + +diff --git a/processing/pom.xml b/processing/pom.xml +index affd900fe6..0daad4fa56 100644 +--- a/processing/pom.xml ++++ b/processing/pom.xml +@@ -37,7 +37,7 @@ + 1.6.5 + ${sigar.base.version}.132 + 5.3.4 +- 6.4.4 ++ 6.4.13 + + + diff --git a/druid/stackable/patches/31.0.1/05-xmllayout-dependencies.patch b/druid/stackable/patches/31.0.1/05-xmllayout-dependencies.patch new file mode 100644 index 000000000..29d325dfc --- /dev/null +++ b/druid/stackable/patches/31.0.1/05-xmllayout-dependencies.patch @@ -0,0 +1,27 @@ +Include jackson-dataformat-xml dependency. + +From: Lars Francke + +This allows us to use XmlLayout for Log4jV2. +By including it here as a dependency we can make sure that we always have +the matching version and we don't need to include it manually later in the +build. +--- + 0 files changed + +diff --git a/server/pom.xml b/server/pom.xml +index 410b51480e..b7dcf46111 100644 +--- a/server/pom.xml ++++ b/server/pom.xml +@@ -205,6 +205,11 @@ + org.apache.logging.log4j + log4j-core + ++ ++ ++ com.fasterxml.jackson.dataformat ++ jackson-dataformat-xml ++ + + com.fasterxml.jackson.datatype + jackson-datatype-joda diff --git a/druid/stackable/patches/31.0.1/06-dont-build-targz.patch b/druid/stackable/patches/31.0.1/06-dont-build-targz.patch new file mode 100644 index 000000000..1bed79fd1 --- /dev/null +++ b/druid/stackable/patches/31.0.1/06-dont-build-targz.patch @@ -0,0 +1,23 @@ +Stop building the tar.gz distribution. + +From: Lars Francke + +All we do is build Druid tar and gzip it only to immediately uncompress it +again. So, instead we just skip the compression step entirely. +--- + distribution/src/assembly/assembly.xml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/distribution/src/assembly/assembly.xml b/distribution/src/assembly/assembly.xml +index ff8e0d2fdd..f9daa49e21 100644 +--- a/distribution/src/assembly/assembly.xml ++++ b/distribution/src/assembly/assembly.xml +@@ -23,7 +23,7 @@ + xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.0.0 http://maven.apache.org/xsd/assembly-2.0.0.xsd"> + bin + +- tar.gz ++ dir + + + diff --git a/druid/stackable/patches/31.0.1/07-cyclonedx-plugin.patch b/druid/stackable/patches/31.0.1/07-cyclonedx-plugin.patch new file mode 100644 index 000000000..b2ddeebf6 --- /dev/null +++ b/druid/stackable/patches/31.0.1/07-cyclonedx-plugin.patch @@ -0,0 +1,17 @@ +diff --git a/pom.xml b/pom.xml +index 9051ed2..10a2c85 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -1728,7 +1728,11 @@ + + org.cyclonedx + cyclonedx-maven-plugin +- 2.7.9 ++ 2.8.0 ++ ++ application ++ 1.5 ++ + + + package diff --git a/druid/stackable/patches/31.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch b/druid/stackable/patches/31.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch new file mode 100644 index 000000000..04999a574 --- /dev/null +++ b/druid/stackable/patches/31.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch @@ -0,0 +1,37 @@ +Fix CVE-2024-36114 +see https://github.com/stackabletech/vulnerabilities/issues/834 + +Aircompressor is a library with ports of the Snappy, LZO, LZ4, and +Zstandard compression algorithms to Java. All decompressor +implementations of Aircompressor (LZ4, LZO, Snappy, Zstandard) can crash +the JVM for certain input, and in some cases also leak the content of +other memory of the Java process (which could contain sensitive +information). When decompressing certain data, the decompressors try to +access memory outside the bounds of the given byte arrays or byte +buffers. Because Aircompressor uses the JDK class sun.misc.Unsafe to +speed up memory access, no additional bounds checks are performed and +this has similar security consequences as out-of-bounds access in C or +C++, namely it can lead to non-deterministic behavior or crash the JVM. +Users should update to Aircompressor 0.27 or newer where these issues +have been fixed. When decompressing data from untrusted users, this can +be exploited for a denial-of-service attack by crashing the JVM, or to +leak other sensitive information from the Java process. There are no +known workarounds for this issue. + +diff --git a/pom.xml b/pom.xml +index 9051ed24c5..e839295b61 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -283,6 +283,12 @@ + + + ++ ++ ++ io.airlift ++ aircompressor ++ 0.27 ++ + + + commons-codec diff --git a/druid/stackable/patches/31.0.1/09-update-fmpp.patch b/druid/stackable/patches/31.0.1/09-update-fmpp.patch new file mode 100644 index 000000000..3abb818da --- /dev/null +++ b/druid/stackable/patches/31.0.1/09-update-fmpp.patch @@ -0,0 +1,21 @@ +diff --git a/10-update-fmpp.patch b/10-update-fmpp.patch +new file mode 100644 +index 0000000000..e69de29bb2 +diff --git a/sql/pom.xml b/sql/pom.xml +index bdd29f3f91..e5ba89f655 100644 +--- a/sql/pom.xml ++++ b/sql/pom.xml +@@ -322,6 +322,13 @@ + + com.googlecode.fmpp-maven-plugin + fmpp-maven-plugin ++ ++ ++ net.sourceforge.fmpp ++ fmpp ++ 0.9.16 ++ ++ + + + generate-fmpp-sources diff --git a/druid/stackable/patches/31.0.1/10-cve-2023-34455-rm-snappy.patch b/druid/stackable/patches/31.0.1/10-cve-2023-34455-rm-snappy.patch new file mode 100644 index 000000000..e4e440d0d --- /dev/null +++ b/druid/stackable/patches/31.0.1/10-cve-2023-34455-rm-snappy.patch @@ -0,0 +1,36 @@ +Fix CVE-2023-34455 +see https://github.com/stackabletech/vulnerabilities/issues/558 + +At the end of build process, Druid downloads dependencies directly from a remote +Maven repository ignoring existing patches that have been applyed locally. +These dependencies include all transitive dependencies too. +The hadoop client depends on a vulnerable version of the snappy library which +is then also downloaded even though a newer version is already on the system. + +This patch removes the vulnerable jars. + +diff --git a/distribution/pom.xml b/distribution/pom.xml +index d5918710ef..2d5bfc6ab4 100644 +--- a/distribution/pom.xml ++++ b/distribution/pom.xml +@@ -259,6 +259,20 @@ + + + ++ ++ fix-cve-2023-34455-remove-snappy ++ package ++ ++ exec ++ ++ ++ /usr/bin/rm ++ ++ ${project.build.directory}/hadoop-dependencies/hadoop-client-api/3.3.6/snappy-java-1.1.8.2.jar ++ ${project.build.directory}/hadoop-dependencies/hadoop-client-runtime/3.3.6/snappy-java-1.1.8.2.jar ++ ++ ++ + + + diff --git a/druid/versions.py b/druid/versions.py index ec14e455b..c5a7f33fc 100644 --- a/druid/versions.py +++ b/druid/versions.py @@ -12,4 +12,11 @@ "java-devel": "17", "authorizer": "0.5.0", }, + { + "product": "31.0.1", + # https://druid.apache.org/docs/31.0.1/operations/java/ + "java-base": "17", + "java-devel": "17", + "authorizer": "0.7.0", + }, ] From 7f145efa3510217303f497470ad00d2b92152210 Mon Sep 17 00:00:00 2001 From: dervoeti Date: Wed, 26 Feb 2025 12:18:06 +0100 Subject: [PATCH 2/6] chore: bump opa-authorizer to 0.6.0 --- CHANGELOG.md | 4 ++++ druid/versions.py | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d4b770239..1105c0419 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +### Changed + + - BREAKING: druid: Bump opa-authorizer to 0.6.0 for all versions ([#984]) + ### Added - nifi: Activate `include-hadoop` profile for NiFi version 2.* ([#958]). diff --git a/druid/versions.py b/druid/versions.py index c5a7f33fc..c2f85646f 100644 --- a/druid/versions.py +++ b/druid/versions.py @@ -3,20 +3,20 @@ "product": "26.0.0", "java-base": "11", "java-devel": "11", - "authorizer": "0.5.0", + "authorizer": "0.6.0", }, { "product": "30.0.0", # https://druid.apache.org/docs/30.0.0/operations/java/ "java-base": "17", "java-devel": "17", - "authorizer": "0.5.0", + "authorizer": "0.6.0", }, { "product": "31.0.1", # https://druid.apache.org/docs/31.0.1/operations/java/ "java-base": "17", "java-devel": "17", - "authorizer": "0.7.0", + "authorizer": "0.6.0", }, ] From 0c3dbd31d1529b3f1041c2f6ccf28da00dba12c0 Mon Sep 17 00:00:00 2001 From: dervoeti Date: Wed, 26 Feb 2025 12:39:13 +0100 Subject: [PATCH 3/6] fix: changelog --- CHANGELOG.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3b8a49ef9..01e7d0b44 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,10 +4,6 @@ All notable changes to this project will be documented in this file. ## [Unreleased] -### Changed - - - BREAKING: druid: Bump opa-authorizer to 0.6.0 for all versions ([#984]) - ### Added - airflow: Add OPA support to Airflow ([#978]). @@ -41,6 +37,7 @@ All notable changes to this project will be documented in this file. - Update registry references to oci ([#989]). - trino-storage-connector: Move the build out of trino/ for easier patching ([#996]). - druid 26.0.0: Migrate to patchable ([#1003]). +- BREAKING: druid: Bump opa-authorizer to 0.6.0 for all versions ([#984]) ### Removed @@ -70,9 +67,9 @@ All notable changes to this project will be documented in this file. [#981]: https://github.com/stackabletech/docker-images/pull/981 [#982]: https://github.com/stackabletech/docker-images/pull/982 [#984]: https://github.com/stackabletech/docker-images/pull/984 +[#988]: https://github.com/stackabletech/docker-images/pull/988 [#989]: https://github.com/stackabletech/docker-images/pull/989 [#990]: https://github.com/stackabletech/docker-images/pull/990 -[#988]: https://github.com/stackabletech/docker-images/pull/988 [#991]: https://github.com/stackabletech/docker-images/pull/991 [#992]: https://github.com/stackabletech/docker-images/pull/992 [#993]: https://github.com/stackabletech/docker-images/pull/993 From 8f26d8a312f549965c87ef22a418b8906bdbc91c Mon Sep 17 00:00:00 2001 From: dervoeti Date: Wed, 26 Feb 2025 17:51:23 +0100 Subject: [PATCH 4/6] drop druid 26 / add 30.0.1 --- CHANGELOG.md | 5 +- ...ndencies-that-have-a-new-patch-relea.patch | 134 ---------------- druid/stackable/patches/26.0.0/patchable.toml | 2 - .../01-remove-ranger-security.patch} | 27 +--- .../02-prometheus-emitter-from-source.patch} | 13 +- .../03-stop-building-unused-extensions.patch} | 38 ++--- .../30.0.1/04-update-patch-dependencies.patch | 148 ++++++++++++++++++ .../05-xmllayout-dependencies.patch} | 12 +- .../06-dont-build-targz.patch} | 7 +- .../07-cyclonedx-plugin.patch} | 17 +- ...-2024-36114-bump-aircompressor-0-27.patch} | 17 +- .../09-update-fmpp.patch} | 18 +-- .../30.0.1/10-cve-2023-34455-rm-snappy.patch | 36 +++++ druid/stackable/patches/30.0.1/series | 9 ++ druid/versions.py | 11 +- 15 files changed, 247 insertions(+), 247 deletions(-) delete mode 100644 druid/stackable/patches/26.0.0/0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch delete mode 100644 druid/stackable/patches/26.0.0/patchable.toml rename druid/stackable/patches/{26.0.0/0001-Removes-all-traces-of-the-druid-ranger-extension.patch => 30.0.1/01-remove-ranger-security.patch} (55%) rename druid/stackable/patches/{26.0.0/0002-Include-Prometheus-emitter-in-distribution.patch => 30.0.1/02-prometheus-emitter-from-source.patch} (90%) rename druid/stackable/patches/{26.0.0/0003-Stop-building-unused-extensions.patch => 30.0.1/03-stop-building-unused-extensions.patch} (74%) create mode 100644 druid/stackable/patches/30.0.1/04-update-patch-dependencies.patch rename druid/stackable/patches/{26.0.0/0005-Include-jackson-dataformat-xml-dependency.patch => 30.0.1/05-xmllayout-dependencies.patch} (75%) rename druid/stackable/patches/{26.0.0/0006-Stop-building-the-tar.gz-distribution.patch => 30.0.1/06-dont-build-targz.patch} (78%) rename druid/stackable/patches/{26.0.0/0007-Update-CycloneDX-plugin.patch => 30.0.1/07-cyclonedx-plugin.patch} (54%) rename druid/stackable/patches/{26.0.0/0008-Fix-CVE-2024-36114.patch => 30.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch} (81%) rename druid/stackable/patches/{26.0.0/0009-Update-FMPP-version.patch => 30.0.1/09-update-fmpp.patch} (51%) create mode 100644 druid/stackable/patches/30.0.1/10-cve-2023-34455-rm-snappy.patch create mode 100644 druid/stackable/patches/30.0.1/series diff --git a/CHANGELOG.md b/CHANGELOG.md index 01e7d0b44..35d24db42 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,7 +14,7 @@ All notable changes to this project will be documented in this file. util-linux-core contains a basic set of Linux utilities, including the command logger which allows to enter messages into the system log. - vector: Add version 0.43.1 ([#980]). -- druid: Add version 31.0.1 ([#984]) +- druid: Add version 30.0.1 and 31.0.1 ([#984]) - opa: Add version 1.0.1 ([#981], [#1000]). - statsd-exporter: Bump version to 0.28.0 ([#982]). - git-sync: Bump version to 4.4.0 ([#990]). @@ -36,7 +36,6 @@ All notable changes to this project will be documented in this file. - kafka: Bump 3.8.0 to 3.8.1 ([#995]). - Update registry references to oci ([#989]). - trino-storage-connector: Move the build out of trino/ for easier patching ([#996]). -- druid 26.0.0: Migrate to patchable ([#1003]). - BREAKING: druid: Bump opa-authorizer to 0.6.0 for all versions ([#984]) ### Removed @@ -48,6 +47,7 @@ All notable changes to this project will be documented in this file. - trino-cli: Remove version 469 ([#999]). - trino-storage-connector: Remove version 469 ([#999]). - nifi: Remove 2.0.0 ([#1006]). +- druid: Remove 26.0.0 ([#984]) ### Fixed @@ -78,7 +78,6 @@ All notable changes to this project will be documented in this file. [#997]: https://github.com/stackabletech/docker-images/pull/997 [#999]: https://github.com/stackabletech/docker-images/pull/999 [#1000]: https://github.com/stackabletech/docker-images/pull/1000 -[#1003]: https://github.com/stackabletech/docker-images/pull/1003 [#1006]: https://github.com/stackabletech/docker-images/pull/1006 [#1007]: https://github.com/stackabletech/docker-images/pull/1007 diff --git a/druid/stackable/patches/26.0.0/0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch b/druid/stackable/patches/26.0.0/0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch deleted file mode 100644 index 53c20d559..000000000 --- a/druid/stackable/patches/26.0.0/0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch +++ /dev/null @@ -1,134 +0,0 @@ -From 4229d1c0d096e10dce72929224a7b4c2284fb417 Mon Sep 17 00:00:00 2001 -From: Lars Francke -Date: Thu, 12 Dec 2024 17:59:17 +0100 -Subject: Updates all dependencies that have a new patch release available. - ---- - extensions-core/avro-extensions/pom.xml | 2 +- - extensions-core/kubernetes-extensions/pom.xml | 2 +- - extensions-core/orc-extensions/pom.xml | 2 +- - extensions-core/parquet-extensions/pom.xml | 2 +- - extensions-core/protobuf-extensions/pom.xml | 2 +- - pom.xml | 20 +++++++++---------- - 6 files changed, 15 insertions(+), 15 deletions(-) - -diff --git a/extensions-core/avro-extensions/pom.xml b/extensions-core/avro-extensions/pom.xml -index 35b154a469..a9eb0c6851 100644 ---- a/extensions-core/avro-extensions/pom.xml -+++ b/extensions-core/avro-extensions/pom.xml -@@ -35,7 +35,7 @@ - - - 0.1.3 -- 5.5.1 -+ 5.5.15 - - - -diff --git a/extensions-core/kubernetes-extensions/pom.xml b/extensions-core/kubernetes-extensions/pom.xml -index aeac095d53..105f7f0d76 100644 ---- a/extensions-core/kubernetes-extensions/pom.xml -+++ b/extensions-core/kubernetes-extensions/pom.xml -@@ -34,7 +34,7 @@ - - - -- 11.0.1 -+ 11.0.4 - - - -diff --git a/extensions-core/orc-extensions/pom.xml b/extensions-core/orc-extensions/pom.xml -index cb1ed09c7a..f118b6c385 100644 ---- a/extensions-core/orc-extensions/pom.xml -+++ b/extensions-core/orc-extensions/pom.xml -@@ -31,7 +31,7 @@ - - 4.0.0 - -- 1.7.6 -+ 1.7.10 - - - -diff --git a/extensions-core/parquet-extensions/pom.xml b/extensions-core/parquet-extensions/pom.xml -index 79ad46b038..be95251485 100644 ---- a/extensions-core/parquet-extensions/pom.xml -+++ b/extensions-core/parquet-extensions/pom.xml -@@ -33,7 +33,7 @@ - 4.0.0 - - -- 1.12.0 -+ 1.12.3 - - - -diff --git a/extensions-core/protobuf-extensions/pom.xml b/extensions-core/protobuf-extensions/pom.xml -index 77fe703838..fdbc6703ab 100644 ---- a/extensions-core/protobuf-extensions/pom.xml -+++ b/extensions-core/protobuf-extensions/pom.xml -@@ -34,7 +34,7 @@ - - - -- 6.0.1 -+ 6.0.15 - 2.11.0 - - -diff --git a/pom.xml b/pom.xml -index f5001910e1..2364f27dc4 100644 ---- a/pom.xml -+++ b/pom.xml -@@ -74,7 +74,7 @@ - 1.8 - 8 - UTF-8 -- 0.9.0.M2 -+ 0.9.1.v20140329 - 5.4.0 - 3.4.0 - 2.0.0 -@@ -90,13 +90,13 @@ - 3.2.0 - 2.0.0 - 10.14.2.0 -- 4.0.0 -+ 4.0.7 - 2.11.0 - 8.5.4 - 16.0.1 - 4.1.0 - 1.3 -- 9.4.48.v20220622 -+ 9.4.54.v20240208 - 1.19.4 - 2.10.5.20201202 - 1.9.13 -@@ -104,18 +104,18 @@ - 5.1.49 - 2.7.3 - 3.10.6.Final -- 4.1.86.Final -- 42.4.1 -- 3.21.7 -+ 4.1.111.Final -+ 42.4.5 -+ 3.21.12 - 1.3.1 - 1.7.36 - 2.8.5 - 4.3.1 -- 1.12.317 -- 2.8.0 -- 0.8.7 -+ 1.12.754 -+ 2.8.8 -+ 0.8.12 - 5.2.5.Final -- 4.5.13 -+ 4.5.14 - - 3.5.10 - 2.5.7 diff --git a/druid/stackable/patches/26.0.0/patchable.toml b/druid/stackable/patches/26.0.0/patchable.toml deleted file mode 100644 index 264c71a6a..000000000 --- a/druid/stackable/patches/26.0.0/patchable.toml +++ /dev/null @@ -1,2 +0,0 @@ -upstream = "https://github.com/apache/druid.git" -base = "7cffb81a8e124d5f218f9af16ad685acf5e9c67c" diff --git a/druid/stackable/patches/26.0.0/0001-Removes-all-traces-of-the-druid-ranger-extension.patch b/druid/stackable/patches/30.0.1/01-remove-ranger-security.patch similarity index 55% rename from druid/stackable/patches/26.0.0/0001-Removes-all-traces-of-the-druid-ranger-extension.patch rename to druid/stackable/patches/30.0.1/01-remove-ranger-security.patch index 6823e2c61..14c4d1c5e 100644 --- a/druid/stackable/patches/26.0.0/0001-Removes-all-traces-of-the-druid-ranger-extension.patch +++ b/druid/stackable/patches/30.0.1/01-remove-ranger-security.patch @@ -1,18 +1,16 @@ -From a8bec93ee6d0a4364676333168229aa0ec56657e Mon Sep 17 00:00:00 2001 +Removes all traces of the druid ranger extension + From: Lars Francke -Date: Thu, 12 Dec 2024 17:59:17 +0100 -Subject: Removes all traces of the druid ranger extension + --- - distribution/pom.xml | 4 ---- - pom.xml | 1 - - 2 files changed, 5 deletions(-) + 0 files changed diff --git a/distribution/pom.xml b/distribution/pom.xml -index eec26171af..a6e72cf2c2 100644 +index 0f17a8c877..d7cd645767 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml -@@ -255,8 +255,6 @@ +@@ -252,8 +252,6 @@ -c org.apache.druid.extensions:druid-pac4j -c @@ -21,20 +19,11 @@ index eec26171af..a6e72cf2c2 100644 org.apache.druid.extensions:druid-kubernetes-extensions -c org.apache.druid.extensions:druid-catalog -@@ -439,8 +437,6 @@ - -c - org.apache.druid.extensions:druid-pac4j - -c -- org.apache.druid.extensions:druid-ranger-security -- -c - org.apache.druid.extensions:druid-kubernetes-extensions - ${druid.distribution.pulldeps.opts} - diff --git a/pom.xml b/pom.xml -index 0c6294f5ed..a33c6bd521 100644 +index cfca79dc6e..2acb812cbe 100644 --- a/pom.xml +++ b/pom.xml -@@ -186,7 +186,6 @@ +@@ -199,7 +199,6 @@ extensions-core/simple-client-sslcontext extensions-core/druid-basic-security extensions-core/google-extensions diff --git a/druid/stackable/patches/26.0.0/0002-Include-Prometheus-emitter-in-distribution.patch b/druid/stackable/patches/30.0.1/02-prometheus-emitter-from-source.patch similarity index 90% rename from druid/stackable/patches/26.0.0/0002-Include-Prometheus-emitter-in-distribution.patch rename to druid/stackable/patches/30.0.1/02-prometheus-emitter-from-source.patch index 3bc040817..8f0ca6795 100644 --- a/druid/stackable/patches/26.0.0/0002-Include-Prometheus-emitter-in-distribution.patch +++ b/druid/stackable/patches/30.0.1/02-prometheus-emitter-from-source.patch @@ -1,17 +1,16 @@ -From c19288cd84492d76f924152f2d4f0d0fc0499ed6 Mon Sep 17 00:00:00 2001 +Include Prometheus emitter in distribution + From: Lars Francke -Date: Thu, 12 Dec 2024 17:59:17 +0100 -Subject: Include Prometheus emitter in distribution + --- - distribution/pom.xml | 46 ++++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 46 insertions(+) + 0 files changed diff --git a/distribution/pom.xml b/distribution/pom.xml -index a6e72cf2c2..3ab13d5d11 100644 +index d7cd645767..eda1ddcfab 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml -@@ -637,6 +637,52 @@ +@@ -464,6 +464,52 @@ diff --git a/druid/stackable/patches/26.0.0/0003-Stop-building-unused-extensions.patch b/druid/stackable/patches/30.0.1/03-stop-building-unused-extensions.patch similarity index 74% rename from druid/stackable/patches/26.0.0/0003-Stop-building-unused-extensions.patch rename to druid/stackable/patches/30.0.1/03-stop-building-unused-extensions.patch index 722e9e42a..7d0f91dd1 100644 --- a/druid/stackable/patches/26.0.0/0003-Stop-building-unused-extensions.patch +++ b/druid/stackable/patches/30.0.1/03-stop-building-unused-extensions.patch @@ -1,20 +1,18 @@ -From 85cacbcc47c88a56acd60d91fbf0412040523c8d Mon Sep 17 00:00:00 2001 +Stop building unused extensions. + From: Lars Francke -Date: Thu, 12 Dec 2024 17:59:17 +0100 -Subject: Stop building unused extensions. By default Druid builds all community extensions and then discards them while assembling the final distribution. This patch removes unused extensions from the build. --- - pom.xml | 32 ++++---------------------------- - 1 file changed, 4 insertions(+), 28 deletions(-) + 0 files changed diff --git a/pom.xml b/pom.xml -index a33c6bd521..f5001910e1 100644 +index 2acb812cbe..38e0ddc61a 100644 --- a/pom.xml +++ b/pom.xml -@@ -188,34 +188,10 @@ +@@ -201,39 +201,9 @@ extensions-core/google-extensions extensions-core/druid-catalog extensions-core/testing-tools @@ -41,31 +39,17 @@ index a33c6bd521..f5001910e1 100644 - extensions-contrib/momentsketch - extensions-contrib/moving-average-query - extensions-contrib/tdigestsketch +- extensions-contrib/ddsketch - extensions-contrib/influxdb-emitter - extensions-contrib/gce-extensions - extensions-contrib/aliyun-oss-extensions extensions-contrib/prometheus-emitter - extensions-contrib/opentelemetry-emitter - extensions-contrib/kubernetes-overlord-extensions -+ +- extensions-contrib/druid-iceberg-extensions +- extensions-contrib/druid-deltalake-extensions +- extensions-contrib/spectator-histogram +- extensions-contrib/rabbit-stream-indexing-service + distribution - -@@ -233,7 +209,7 @@ - false - - -- -+ - - - sigar -@@ -243,7 +219,7 @@ - - - -- -+ - - - ${repoOrgId} diff --git a/druid/stackable/patches/30.0.1/04-update-patch-dependencies.patch b/druid/stackable/patches/30.0.1/04-update-patch-dependencies.patch new file mode 100644 index 000000000..989b42620 --- /dev/null +++ b/druid/stackable/patches/30.0.1/04-update-patch-dependencies.patch @@ -0,0 +1,148 @@ +Updates all dependencies that have a new patch release available. + +From: Lars Francke + + +--- + 0 files changed + +diff --git a/extensions-core/druid-pac4j/pom.xml b/extensions-core/druid-pac4j/pom.xml +index 282e0e5b15..523a2ca305 100644 +--- a/extensions-core/druid-pac4j/pom.xml ++++ b/extensions-core/druid-pac4j/pom.xml +@@ -38,7 +38,10 @@ + + + 1.7 +- 9.37.2 ++ ++ 8.22.1 + 8.22 + + +diff --git a/extensions-core/kubernetes-extensions/pom.xml b/extensions-core/kubernetes-extensions/pom.xml +index e3e77a99af..1304740ff3 100644 +--- a/extensions-core/kubernetes-extensions/pom.xml ++++ b/extensions-core/kubernetes-extensions/pom.xml +@@ -35,7 +35,7 @@ + + + +- 19.0.0 ++ 19.0.1 + + + +diff --git a/extensions-core/orc-extensions/pom.xml b/extensions-core/orc-extensions/pom.xml +index b7eb007979..2c210c42c0 100644 +--- a/extensions-core/orc-extensions/pom.xml ++++ b/extensions-core/orc-extensions/pom.xml +@@ -31,7 +31,7 @@ + + 4.0.0 + +- 1.7.6 ++ 1.7.10 + + + +diff --git a/extensions-core/parquet-extensions/pom.xml b/extensions-core/parquet-extensions/pom.xml +index 371d2e7673..ad0b874db0 100644 +--- a/extensions-core/parquet-extensions/pom.xml ++++ b/extensions-core/parquet-extensions/pom.xml +@@ -201,7 +201,7 @@ + + + +- 1.13.0 ++ 1.13.1 + + + +diff --git a/pom.xml b/pom.xml +index 73fb14c1fc..26b24b8c14 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -74,7 +74,7 @@ + 1.8 + 8 + UTF-8 +- 0.9.0.M2 ++ 0.9.1.v20140329 + 5.5.0 + 3.6.1 + ++ 8.5.6 + 32.0.1-jre + 4.1.0 + 1.3 + 9.4.54.v20240208 + 1.19.4 +- 2.12.7.20221012 ++ 2.12.7.20240502 + 1.9.13 + 2.22.1 + 5.1.49 + 2.7.3 + 3.10.6.Final +- 4.1.108.Final +- 42.7.2 +- 3.24.0 ++ 4.1.111.Final ++ 42.7.3 ++ 3.24.4 + 1.3.1 + 1.7.36 + 5.13.0 +@@ -120,17 +120,17 @@ + however it is required in some cases when running against mockito 4.x (mockito 4.x is required for Java <11. + We use the following property to pick the proper artifact based on Java version (see pre-java-11 profile) --> + core +- 1.12.638 +- 2.8.0 +- 0.8.7 ++ 1.12.754 ++ 2.8.8 ++ 0.8.12 + 6.2.5.Final +- 4.5.13 ++ 4.5.14 + + 3.8.4 + 2.5.7 + 2.2.0 + 1.42.3 +- v1-rev20230606-2.0.0 ++ v1-rev20240618-2.0.0 + 2.29.1 + + +diff --git a/processing/pom.xml b/processing/pom.xml +index affd900fe6..0daad4fa56 100644 +--- a/processing/pom.xml ++++ b/processing/pom.xml +@@ -37,7 +37,7 @@ + 1.6.5 + ${sigar.base.version}.132 + 5.3.4 +- 6.4.4 ++ 6.4.13 + + + diff --git a/druid/stackable/patches/26.0.0/0005-Include-jackson-dataformat-xml-dependency.patch b/druid/stackable/patches/30.0.1/05-xmllayout-dependencies.patch similarity index 75% rename from druid/stackable/patches/26.0.0/0005-Include-jackson-dataformat-xml-dependency.patch rename to druid/stackable/patches/30.0.1/05-xmllayout-dependencies.patch index 4032142ab..29d325dfc 100644 --- a/druid/stackable/patches/26.0.0/0005-Include-jackson-dataformat-xml-dependency.patch +++ b/druid/stackable/patches/30.0.1/05-xmllayout-dependencies.patch @@ -1,21 +1,19 @@ -From d55895a2525286a5198a3b327c3ce503bc852ead Mon Sep 17 00:00:00 2001 +Include jackson-dataformat-xml dependency. + From: Lars Francke -Date: Thu, 12 Dec 2024 17:59:17 +0100 -Subject: Include jackson-dataformat-xml dependency. This allows us to use XmlLayout for Log4jV2. By including it here as a dependency we can make sure that we always have the matching version and we don't need to include it manually later in the build. --- - server/pom.xml | 5 +++++ - 1 file changed, 5 insertions(+) + 0 files changed diff --git a/server/pom.xml b/server/pom.xml -index fdc6f1f548..9f18e614e9 100644 +index 410b51480e..b7dcf46111 100644 --- a/server/pom.xml +++ b/server/pom.xml -@@ -195,6 +195,11 @@ +@@ -205,6 +205,11 @@ org.apache.logging.log4j log4j-core diff --git a/druid/stackable/patches/26.0.0/0006-Stop-building-the-tar.gz-distribution.patch b/druid/stackable/patches/30.0.1/06-dont-build-targz.patch similarity index 78% rename from druid/stackable/patches/26.0.0/0006-Stop-building-the-tar.gz-distribution.patch rename to druid/stackable/patches/30.0.1/06-dont-build-targz.patch index 910a7a0a5..1bed79fd1 100644 --- a/druid/stackable/patches/26.0.0/0006-Stop-building-the-tar.gz-distribution.patch +++ b/druid/stackable/patches/30.0.1/06-dont-build-targz.patch @@ -1,12 +1,11 @@ -From d1ae8732e2eee44abb5c831f5363c69e75e64a9a Mon Sep 17 00:00:00 2001 +Stop building the tar.gz distribution. + From: Lars Francke -Date: Thu, 12 Dec 2024 17:59:17 +0100 -Subject: Stop building the tar.gz distribution. All we do is build Druid tar and gzip it only to immediately uncompress it again. So, instead we just skip the compression step entirely. --- - distribution/src/assembly/assembly.xml | 2 +- + distribution/src/assembly/assembly.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/distribution/src/assembly/assembly.xml b/distribution/src/assembly/assembly.xml diff --git a/druid/stackable/patches/26.0.0/0007-Update-CycloneDX-plugin.patch b/druid/stackable/patches/30.0.1/07-cyclonedx-plugin.patch similarity index 54% rename from druid/stackable/patches/26.0.0/0007-Update-CycloneDX-plugin.patch rename to druid/stackable/patches/30.0.1/07-cyclonedx-plugin.patch index 36756ca94..b2ddeebf6 100644 --- a/druid/stackable/patches/26.0.0/0007-Update-CycloneDX-plugin.patch +++ b/druid/stackable/patches/30.0.1/07-cyclonedx-plugin.patch @@ -1,22 +1,13 @@ -From ff7d6a5ea07ea30653b47f6ef6844103a7ac3349 Mon Sep 17 00:00:00 2001 -From: Lukas Voetmand -Date: Thu, 12 Dec 2024 17:59:17 +0100 -Subject: Update CycloneDX plugin - ---- - pom.xml | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - diff --git a/pom.xml b/pom.xml -index 2364f27dc4..c902899304 100644 +index 9051ed2..10a2c85 100644 --- a/pom.xml +++ b/pom.xml -@@ -1533,7 +1533,11 @@ +@@ -1728,7 +1728,11 @@ org.cyclonedx cyclonedx-maven-plugin -- 2.7.5 -+ 2.8.1 +- 2.7.9 ++ 2.8.0 + + application + 1.5 diff --git a/druid/stackable/patches/26.0.0/0008-Fix-CVE-2024-36114.patch b/druid/stackable/patches/30.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch similarity index 81% rename from druid/stackable/patches/26.0.0/0008-Fix-CVE-2024-36114.patch rename to druid/stackable/patches/30.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch index 7368f95e7..04999a574 100644 --- a/druid/stackable/patches/26.0.0/0008-Fix-CVE-2024-36114.patch +++ b/druid/stackable/patches/30.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch @@ -1,9 +1,5 @@ -From bdd52ae32874b686d6ddfa3179f6af787444662f Mon Sep 17 00:00:00 2001 -From: Malte Sander -Date: Thu, 12 Dec 2024 17:59:17 +0100 -Subject: Fix CVE-2024-36114 - -See https://github.com/stackabletech/vulnerabilities/issues/834 +Fix CVE-2024-36114 +see https://github.com/stackabletech/vulnerabilities/issues/834 Aircompressor is a library with ports of the Snappy, LZO, LZ4, and Zstandard compression algorithms to Java. All decompressor @@ -21,16 +17,13 @@ have been fixed. When decompressing data from untrusted users, this can be exploited for a denial-of-service attack by crashing the JVM, or to leak other sensitive information from the Java process. There are no known workarounds for this issue. ---- - pom.xml | 6 ++++++ - 1 file changed, 6 insertions(+) diff --git a/pom.xml b/pom.xml -index c902899304..6c24bdc0b2 100644 +index 9051ed24c5..e839295b61 100644 --- a/pom.xml +++ b/pom.xml -@@ -233,6 +233,12 @@ - +@@ -283,6 +283,12 @@ + + diff --git a/druid/stackable/patches/26.0.0/0009-Update-FMPP-version.patch b/druid/stackable/patches/30.0.1/09-update-fmpp.patch similarity index 51% rename from druid/stackable/patches/26.0.0/0009-Update-FMPP-version.patch rename to druid/stackable/patches/30.0.1/09-update-fmpp.patch index 67120aec1..3abb818da 100644 --- a/druid/stackable/patches/26.0.0/0009-Update-FMPP-version.patch +++ b/druid/stackable/patches/30.0.1/09-update-fmpp.patch @@ -1,18 +1,8 @@ -From 736165ab0fe73e0bef765f2cfd21cd800baddbc1 Mon Sep 17 00:00:00 2001 -From: Lars Francke -Date: Thu, 12 Dec 2024 06:35:21 +0100 -Subject: Update FMPP version - -This is because FMPP Maven Plugin depends on FMPP in version 0.9.14 -which itself depends on a Freemarker version that has not been pinned. -Instead it specifies a "range" which resolves to a SNAPSHOT version -which we don't want. ---- - sql/pom.xml | 7 +++++++ - 1 file changed, 7 insertions(+) - +diff --git a/10-update-fmpp.patch b/10-update-fmpp.patch +new file mode 100644 +index 0000000000..e69de29bb2 diff --git a/sql/pom.xml b/sql/pom.xml -index e2bbd8c7f8..a72f96a6ca 100644 +index bdd29f3f91..e5ba89f655 100644 --- a/sql/pom.xml +++ b/sql/pom.xml @@ -322,6 +322,13 @@ diff --git a/druid/stackable/patches/30.0.1/10-cve-2023-34455-rm-snappy.patch b/druid/stackable/patches/30.0.1/10-cve-2023-34455-rm-snappy.patch new file mode 100644 index 000000000..e4e440d0d --- /dev/null +++ b/druid/stackable/patches/30.0.1/10-cve-2023-34455-rm-snappy.patch @@ -0,0 +1,36 @@ +Fix CVE-2023-34455 +see https://github.com/stackabletech/vulnerabilities/issues/558 + +At the end of build process, Druid downloads dependencies directly from a remote +Maven repository ignoring existing patches that have been applyed locally. +These dependencies include all transitive dependencies too. +The hadoop client depends on a vulnerable version of the snappy library which +is then also downloaded even though a newer version is already on the system. + +This patch removes the vulnerable jars. + +diff --git a/distribution/pom.xml b/distribution/pom.xml +index d5918710ef..2d5bfc6ab4 100644 +--- a/distribution/pom.xml ++++ b/distribution/pom.xml +@@ -259,6 +259,20 @@ + + + ++ ++ fix-cve-2023-34455-remove-snappy ++ package ++ ++ exec ++ ++ ++ /usr/bin/rm ++ ++ ${project.build.directory}/hadoop-dependencies/hadoop-client-api/3.3.6/snappy-java-1.1.8.2.jar ++ ${project.build.directory}/hadoop-dependencies/hadoop-client-runtime/3.3.6/snappy-java-1.1.8.2.jar ++ ++ ++ + + + diff --git a/druid/stackable/patches/30.0.1/series b/druid/stackable/patches/30.0.1/series new file mode 100644 index 000000000..0dc0d4cac --- /dev/null +++ b/druid/stackable/patches/30.0.1/series @@ -0,0 +1,9 @@ +# This series applies on Git commit 0f4a8032d4f3c17fc8a7d3dba5fc272c1bd76c2b +01-remove-ranger-security.patch +02-prometheus-emitter-from-source.patch +03-stop-building-unused-extensions.patch +04-update-patch-dependencies.patch +05-xmllayout-dependencies.patch +06-dont-build-targz.patch +07-cyclonedx-plugin.patch +08-CVE-2024-36114-bump-aircompressor-0-27.patch diff --git a/druid/versions.py b/druid/versions.py index c2f85646f..ec46b26da 100644 --- a/druid/versions.py +++ b/druid/versions.py @@ -1,13 +1,14 @@ versions = [ { - "product": "26.0.0", - "java-base": "11", - "java-devel": "11", + "product": "30.0.0", + # https://druid.apache.org/docs/30.0.0/operations/java/ + "java-base": "17", + "java-devel": "17", "authorizer": "0.6.0", }, { - "product": "30.0.0", - # https://druid.apache.org/docs/30.0.0/operations/java/ + "product": "30.0.1", + # https://druid.apache.org/docs/30.0.1/operations/java/ "java-base": "17", "java-devel": "17", "authorizer": "0.6.0", From 2a27d33d1f4b2293e2d4c7ac3653c1121d13fd64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Natalie=20Klestrup=20R=C3=B6ijezon?= Date: Thu, 27 Feb 2025 14:01:47 +0100 Subject: [PATCH 5/6] Convert Druid 30.0.1 patches to patchable --- ...races-of-the-druid-ranger-extension.patch} | 16 ++++---- ...-Prometheus-emitter-in-distribution.patch} | 11 +++--- ...003-Stop-building-unused-extensions.patch} | 12 +++--- ...dencies-that-have-a-new-patch-relea.patch} | 38 +++++++++++-------- ...e-jackson-dataformat-xml-dependency.patch} | 10 +++-- ...op-building-the-tar.gz-distribution.patch} | 7 ++-- ...tch => 0007-Update-CycloneDX-plugin.patch} | 13 ++++++- ...27.patch => 0008-Fix-CVE-2024-36114.patch} | 13 +++++-- .../30.0.1/0009-Update-FMPP-version.patch | 31 +++++++++++++++ ...py.patch => 0010-Fix-CVE-2023-34455.patch} | 11 +++++- .../patches/30.0.1/09-update-fmpp.patch | 21 ---------- druid/stackable/patches/30.0.1/patchable.toml | 2 + druid/stackable/patches/30.0.1/series | 9 ----- 13 files changed, 117 insertions(+), 77 deletions(-) rename druid/stackable/patches/30.0.1/{01-remove-ranger-security.patch => 0001-Removes-all-traces-of-the-druid-ranger-extension.patch} (79%) rename druid/stackable/patches/30.0.1/{02-prometheus-emitter-from-source.patch => 0002-Include-Prometheus-emitter-in-distribution.patch} (90%) rename druid/stackable/patches/30.0.1/{03-stop-building-unused-extensions.patch => 0003-Stop-building-unused-extensions.patch} (89%) rename druid/stackable/patches/30.0.1/{04-update-patch-dependencies.patch => 0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch} (85%) rename druid/stackable/patches/30.0.1/{05-xmllayout-dependencies.patch => 0005-Include-jackson-dataformat-xml-dependency.patch} (77%) rename druid/stackable/patches/30.0.1/{06-dont-build-targz.patch => 0006-Stop-building-the-tar.gz-distribution.patch} (78%) rename druid/stackable/patches/30.0.1/{07-cyclonedx-plugin.patch => 0007-Update-CycloneDX-plugin.patch} (63%) rename druid/stackable/patches/30.0.1/{08-CVE-2024-36114-bump-aircompressor-0-27.patch => 0008-Fix-CVE-2024-36114.patch} (84%) create mode 100644 druid/stackable/patches/30.0.1/0009-Update-FMPP-version.patch rename druid/stackable/patches/30.0.1/{10-cve-2023-34455-rm-snappy.patch => 0010-Fix-CVE-2023-34455.patch} (84%) delete mode 100644 druid/stackable/patches/30.0.1/09-update-fmpp.patch create mode 100644 druid/stackable/patches/30.0.1/patchable.toml delete mode 100644 druid/stackable/patches/30.0.1/series diff --git a/druid/stackable/patches/30.0.1/01-remove-ranger-security.patch b/druid/stackable/patches/30.0.1/0001-Removes-all-traces-of-the-druid-ranger-extension.patch similarity index 79% rename from druid/stackable/patches/30.0.1/01-remove-ranger-security.patch rename to druid/stackable/patches/30.0.1/0001-Removes-all-traces-of-the-druid-ranger-extension.patch index 14c4d1c5e..e483b6144 100644 --- a/druid/stackable/patches/30.0.1/01-remove-ranger-security.patch +++ b/druid/stackable/patches/30.0.1/0001-Removes-all-traces-of-the-druid-ranger-extension.patch @@ -1,13 +1,15 @@ -Removes all traces of the druid ranger extension - +From 1f18905f78c9c46c7c12c1d705547f00ddbfa1ab Mon Sep 17 00:00:00 2001 From: Lars Francke - +Date: Wed, 10 Jul 2024 17:07:13 +0200 +Subject: Removes all traces of the druid ranger extension --- - 0 files changed + distribution/pom.xml | 2 -- + pom.xml | 1 - + 2 files changed, 3 deletions(-) diff --git a/distribution/pom.xml b/distribution/pom.xml -index 0f17a8c877..d7cd645767 100644 +index 1ebfa31f84..9c2cfc8753 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -252,8 +252,6 @@ @@ -20,10 +22,10 @@ index 0f17a8c877..d7cd645767 100644 -c org.apache.druid.extensions:druid-catalog diff --git a/pom.xml b/pom.xml -index cfca79dc6e..2acb812cbe 100644 +index 17cd202ea6..08a3f24210 100644 --- a/pom.xml +++ b/pom.xml -@@ -199,7 +199,6 @@ +@@ -198,7 +198,6 @@ extensions-core/simple-client-sslcontext extensions-core/druid-basic-security extensions-core/google-extensions diff --git a/druid/stackable/patches/30.0.1/02-prometheus-emitter-from-source.patch b/druid/stackable/patches/30.0.1/0002-Include-Prometheus-emitter-in-distribution.patch similarity index 90% rename from druid/stackable/patches/30.0.1/02-prometheus-emitter-from-source.patch rename to druid/stackable/patches/30.0.1/0002-Include-Prometheus-emitter-in-distribution.patch index 8f0ca6795..9ed01f6ff 100644 --- a/druid/stackable/patches/30.0.1/02-prometheus-emitter-from-source.patch +++ b/druid/stackable/patches/30.0.1/0002-Include-Prometheus-emitter-in-distribution.patch @@ -1,13 +1,14 @@ -Include Prometheus emitter in distribution - +From b449a870c7cf546117aba0a64c1b1487e036ab14 Mon Sep 17 00:00:00 2001 From: Lars Francke - +Date: Mon, 17 Feb 2025 16:42:34 +0100 +Subject: Include Prometheus emitter in distribution --- - 0 files changed + distribution/pom.xml | 46 ++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 46 insertions(+) diff --git a/distribution/pom.xml b/distribution/pom.xml -index d7cd645767..eda1ddcfab 100644 +index 9c2cfc8753..08b4121287 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -464,6 +464,52 @@ diff --git a/druid/stackable/patches/30.0.1/03-stop-building-unused-extensions.patch b/druid/stackable/patches/30.0.1/0003-Stop-building-unused-extensions.patch similarity index 89% rename from druid/stackable/patches/30.0.1/03-stop-building-unused-extensions.patch rename to druid/stackable/patches/30.0.1/0003-Stop-building-unused-extensions.patch index 7d0f91dd1..08e568794 100644 --- a/druid/stackable/patches/30.0.1/03-stop-building-unused-extensions.patch +++ b/druid/stackable/patches/30.0.1/0003-Stop-building-unused-extensions.patch @@ -1,18 +1,20 @@ -Stop building unused extensions. - +From 087a8e2324d938871c012097446f106daba7d6a7 Mon Sep 17 00:00:00 2001 From: Lars Francke +Date: Mon, 17 Feb 2025 16:42:34 +0100 +Subject: Stop building unused extensions. By default Druid builds all community extensions and then discards them while assembling the final distribution. This patch removes unused extensions from the build. --- - 0 files changed + pom.xml | 32 +------------------------------- + 1 file changed, 1 insertion(+), 31 deletions(-) diff --git a/pom.xml b/pom.xml -index 2acb812cbe..38e0ddc61a 100644 +index 08a3f24210..e8585349f4 100644 --- a/pom.xml +++ b/pom.xml -@@ -201,39 +201,9 @@ +@@ -200,39 +200,9 @@ extensions-core/google-extensions extensions-core/druid-catalog extensions-core/testing-tools diff --git a/druid/stackable/patches/30.0.1/04-update-patch-dependencies.patch b/druid/stackable/patches/30.0.1/0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch similarity index 85% rename from druid/stackable/patches/30.0.1/04-update-patch-dependencies.patch rename to druid/stackable/patches/30.0.1/0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch index 989b42620..6c3c75c4d 100644 --- a/druid/stackable/patches/30.0.1/04-update-patch-dependencies.patch +++ b/druid/stackable/patches/30.0.1/0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch @@ -1,13 +1,19 @@ -Updates all dependencies that have a new patch release available. - +From cf05fadf57c308bf782844226d7fd133ec200189 Mon Sep 17 00:00:00 2001 From: Lars Francke - +Date: Mon, 17 Feb 2025 16:42:49 +0100 +Subject: Updates all dependencies that have a new patch release available. --- - 0 files changed + extensions-core/druid-pac4j/pom.xml | 5 +++- + extensions-core/kubernetes-extensions/pom.xml | 2 +- + extensions-core/orc-extensions/pom.xml | 2 +- + extensions-core/parquet-extensions/pom.xml | 2 +- + pom.xml | 29 ++++++++++--------- + processing/pom.xml | 2 +- + 6 files changed, 24 insertions(+), 18 deletions(-) diff --git a/extensions-core/druid-pac4j/pom.xml b/extensions-core/druid-pac4j/pom.xml -index 282e0e5b15..523a2ca305 100644 +index 1f95186c19..7961274438 100644 --- a/extensions-core/druid-pac4j/pom.xml +++ b/extensions-core/druid-pac4j/pom.xml @@ -38,7 +38,10 @@ @@ -23,10 +29,10 @@ index 282e0e5b15..523a2ca305 100644 diff --git a/extensions-core/kubernetes-extensions/pom.xml b/extensions-core/kubernetes-extensions/pom.xml -index e3e77a99af..1304740ff3 100644 +index 33c8a0b2f6..17f288b868 100644 --- a/extensions-core/kubernetes-extensions/pom.xml +++ b/extensions-core/kubernetes-extensions/pom.xml -@@ -35,7 +35,7 @@ +@@ -34,7 +34,7 @@ @@ -36,7 +42,7 @@ index e3e77a99af..1304740ff3 100644 diff --git a/extensions-core/orc-extensions/pom.xml b/extensions-core/orc-extensions/pom.xml -index b7eb007979..2c210c42c0 100644 +index 47e178d19e..fd985b9061 100644 --- a/extensions-core/orc-extensions/pom.xml +++ b/extensions-core/orc-extensions/pom.xml @@ -31,7 +31,7 @@ @@ -49,7 +55,7 @@ index b7eb007979..2c210c42c0 100644 diff --git a/extensions-core/parquet-extensions/pom.xml b/extensions-core/parquet-extensions/pom.xml -index 371d2e7673..ad0b874db0 100644 +index b2b7c2ff04..f8d213d63c 100644 --- a/extensions-core/parquet-extensions/pom.xml +++ b/extensions-core/parquet-extensions/pom.xml @@ -201,7 +201,7 @@ @@ -62,7 +68,7 @@ index 371d2e7673..ad0b874db0 100644 diff --git a/pom.xml b/pom.xml -index 73fb14c1fc..26b24b8c14 100644 +index e8585349f4..e1b83dac70 100644 --- a/pom.xml +++ b/pom.xml @@ -74,7 +74,7 @@ @@ -98,7 +104,7 @@ index 73fb14c1fc..26b24b8c14 100644 + 2.12.7.20240502 1.9.13 2.22.1 - 5.1.49 + 8.2.0 2.7.3 3.10.6.Final - 4.1.108.Final @@ -110,9 +116,9 @@ index 73fb14c1fc..26b24b8c14 100644 1.3.1 1.7.36 5.13.0 -@@ -120,17 +120,17 @@ - however it is required in some cases when running against mockito 4.x (mockito 4.x is required for Java <11. - We use the following property to pick the proper artifact based on Java version (see pre-java-11 profile) --> +@@ -119,17 +122,17 @@ + core - 1.12.638 - 2.8.0 @@ -134,10 +140,10 @@ index 73fb14c1fc..26b24b8c14 100644 diff --git a/processing/pom.xml b/processing/pom.xml -index affd900fe6..0daad4fa56 100644 +index fcc16a65c5..2f5fb45890 100644 --- a/processing/pom.xml +++ b/processing/pom.xml -@@ -37,7 +37,7 @@ +@@ -36,7 +36,7 @@ 1.6.5 ${sigar.base.version}.132 5.3.4 diff --git a/druid/stackable/patches/30.0.1/05-xmllayout-dependencies.patch b/druid/stackable/patches/30.0.1/0005-Include-jackson-dataformat-xml-dependency.patch similarity index 77% rename from druid/stackable/patches/30.0.1/05-xmllayout-dependencies.patch rename to druid/stackable/patches/30.0.1/0005-Include-jackson-dataformat-xml-dependency.patch index 29d325dfc..dc3775693 100644 --- a/druid/stackable/patches/30.0.1/05-xmllayout-dependencies.patch +++ b/druid/stackable/patches/30.0.1/0005-Include-jackson-dataformat-xml-dependency.patch @@ -1,16 +1,18 @@ -Include jackson-dataformat-xml dependency. - +From 1f1d47e9ab58fe2d4549225f182f3ff381971c20 Mon Sep 17 00:00:00 2001 From: Lars Francke +Date: Mon, 17 Feb 2025 16:42:49 +0100 +Subject: Include jackson-dataformat-xml dependency. This allows us to use XmlLayout for Log4jV2. By including it here as a dependency we can make sure that we always have the matching version and we don't need to include it manually later in the build. --- - 0 files changed + server/pom.xml | 5 +++++ + 1 file changed, 5 insertions(+) diff --git a/server/pom.xml b/server/pom.xml -index 410b51480e..b7dcf46111 100644 +index cfa6b8f9f5..4e36bc9438 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -205,6 +205,11 @@ diff --git a/druid/stackable/patches/30.0.1/06-dont-build-targz.patch b/druid/stackable/patches/30.0.1/0006-Stop-building-the-tar.gz-distribution.patch similarity index 78% rename from druid/stackable/patches/30.0.1/06-dont-build-targz.patch rename to druid/stackable/patches/30.0.1/0006-Stop-building-the-tar.gz-distribution.patch index 1bed79fd1..f2474299a 100644 --- a/druid/stackable/patches/30.0.1/06-dont-build-targz.patch +++ b/druid/stackable/patches/30.0.1/0006-Stop-building-the-tar.gz-distribution.patch @@ -1,11 +1,12 @@ -Stop building the tar.gz distribution. - +From 719e70a5143f7fc3143186a2e277495be7eada72 Mon Sep 17 00:00:00 2001 From: Lars Francke +Date: Mon, 17 Feb 2025 16:42:49 +0100 +Subject: Stop building the tar.gz distribution. All we do is build Druid tar and gzip it only to immediately uncompress it again. So, instead we just skip the compression step entirely. --- - distribution/src/assembly/assembly.xml | 2 +- + distribution/src/assembly/assembly.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/distribution/src/assembly/assembly.xml b/distribution/src/assembly/assembly.xml diff --git a/druid/stackable/patches/30.0.1/07-cyclonedx-plugin.patch b/druid/stackable/patches/30.0.1/0007-Update-CycloneDX-plugin.patch similarity index 63% rename from druid/stackable/patches/30.0.1/07-cyclonedx-plugin.patch rename to druid/stackable/patches/30.0.1/0007-Update-CycloneDX-plugin.patch index b2ddeebf6..ac98de27e 100644 --- a/druid/stackable/patches/30.0.1/07-cyclonedx-plugin.patch +++ b/druid/stackable/patches/30.0.1/0007-Update-CycloneDX-plugin.patch @@ -1,8 +1,17 @@ +From aff63a7572dd88797be111e8ab04d443bf125369 Mon Sep 17 00:00:00 2001 +From: Lukas Voetmand +Date: Fri, 6 Sep 2024 17:53:52 +0200 +Subject: Update CycloneDX plugin + +--- + pom.xml | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + diff --git a/pom.xml b/pom.xml -index 9051ed2..10a2c85 100644 +index e1b83dac70..7cf5ffda15 100644 --- a/pom.xml +++ b/pom.xml -@@ -1728,7 +1728,11 @@ +@@ -1700,7 +1700,11 @@ org.cyclonedx cyclonedx-maven-plugin diff --git a/druid/stackable/patches/30.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch b/druid/stackable/patches/30.0.1/0008-Fix-CVE-2024-36114.patch similarity index 84% rename from druid/stackable/patches/30.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch rename to druid/stackable/patches/30.0.1/0008-Fix-CVE-2024-36114.patch index 04999a574..240d7f409 100644 --- a/druid/stackable/patches/30.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch +++ b/druid/stackable/patches/30.0.1/0008-Fix-CVE-2024-36114.patch @@ -1,4 +1,8 @@ -Fix CVE-2024-36114 +From 3c4e883753763d3b76b05b438b65feff345d3fb2 Mon Sep 17 00:00:00 2001 +From: Malte Sander +Date: Thu, 12 Dec 2024 17:59:17 +0100 +Subject: Fix CVE-2024-36114 + see https://github.com/stackabletech/vulnerabilities/issues/834 Aircompressor is a library with ports of the Snappy, LZO, LZ4, and @@ -17,12 +21,15 @@ have been fixed. When decompressing data from untrusted users, this can be exploited for a denial-of-service attack by crashing the JVM, or to leak other sensitive information from the Java process. There are no known workarounds for this issue. +--- + pom.xml | 6 ++++++ + 1 file changed, 6 insertions(+) diff --git a/pom.xml b/pom.xml -index 9051ed24c5..e839295b61 100644 +index 7cf5ffda15..f27713d5fd 100644 --- a/pom.xml +++ b/pom.xml -@@ -283,6 +283,12 @@ +@@ -255,6 +255,12 @@ diff --git a/druid/stackable/patches/30.0.1/0009-Update-FMPP-version.patch b/druid/stackable/patches/30.0.1/0009-Update-FMPP-version.patch new file mode 100644 index 000000000..2580e05e1 --- /dev/null +++ b/druid/stackable/patches/30.0.1/0009-Update-FMPP-version.patch @@ -0,0 +1,31 @@ +From 64f5d9955d31695a0bbb98bc70233cca49939bfb Mon Sep 17 00:00:00 2001 +From: Lars Francke +Date: Thu, 12 Dec 2024 06:35:21 +0100 +Subject: Update FMPP version + +This is because FMPP Maven Plugin depends on FMPP in version 0.9.14 +which itself depends on a Freemarker version that has not been pinned. +Instead it specifies a "range" which resolves to a SNAPSHOT version +which we don't want. +--- + sql/pom.xml | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/sql/pom.xml b/sql/pom.xml +index 00ed50cf69..bad8096a59 100644 +--- a/sql/pom.xml ++++ b/sql/pom.xml +@@ -384,6 +384,13 @@ + + com.googlecode.fmpp-maven-plugin + fmpp-maven-plugin ++ ++ ++ net.sourceforge.fmpp ++ fmpp ++ 0.9.16 ++ ++ + + + generate-fmpp-sources diff --git a/druid/stackable/patches/30.0.1/10-cve-2023-34455-rm-snappy.patch b/druid/stackable/patches/30.0.1/0010-Fix-CVE-2023-34455.patch similarity index 84% rename from druid/stackable/patches/30.0.1/10-cve-2023-34455-rm-snappy.patch rename to druid/stackable/patches/30.0.1/0010-Fix-CVE-2023-34455.patch index e4e440d0d..fab4b0f0d 100644 --- a/druid/stackable/patches/30.0.1/10-cve-2023-34455-rm-snappy.patch +++ b/druid/stackable/patches/30.0.1/0010-Fix-CVE-2023-34455.patch @@ -1,4 +1,8 @@ -Fix CVE-2023-34455 +From f246bea0ec12b167b4fb49dcf775527429715f77 Mon Sep 17 00:00:00 2001 +From: Razvan-Daniel Mihai <84674+razvan@users.noreply.github.com> +Date: Tue, 28 Jan 2025 17:29:59 +0100 +Subject: Fix CVE-2023-34455 + see https://github.com/stackabletech/vulnerabilities/issues/558 At the end of build process, Druid downloads dependencies directly from a remote @@ -8,9 +12,12 @@ The hadoop client depends on a vulnerable version of the snappy library which is then also downloaded even though a newer version is already on the system. This patch removes the vulnerable jars. +--- + distribution/pom.xml | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) diff --git a/distribution/pom.xml b/distribution/pom.xml -index d5918710ef..2d5bfc6ab4 100644 +index 08b4121287..ba08137c26 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -259,6 +259,20 @@ diff --git a/druid/stackable/patches/30.0.1/09-update-fmpp.patch b/druid/stackable/patches/30.0.1/09-update-fmpp.patch deleted file mode 100644 index 3abb818da..000000000 --- a/druid/stackable/patches/30.0.1/09-update-fmpp.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff --git a/10-update-fmpp.patch b/10-update-fmpp.patch -new file mode 100644 -index 0000000000..e69de29bb2 -diff --git a/sql/pom.xml b/sql/pom.xml -index bdd29f3f91..e5ba89f655 100644 ---- a/sql/pom.xml -+++ b/sql/pom.xml -@@ -322,6 +322,13 @@ - - com.googlecode.fmpp-maven-plugin - fmpp-maven-plugin -+ -+ -+ net.sourceforge.fmpp -+ fmpp -+ 0.9.16 -+ -+ - - - generate-fmpp-sources diff --git a/druid/stackable/patches/30.0.1/patchable.toml b/druid/stackable/patches/30.0.1/patchable.toml new file mode 100644 index 000000000..aad1cde81 --- /dev/null +++ b/druid/stackable/patches/30.0.1/patchable.toml @@ -0,0 +1,2 @@ +upstream = "https://github.com/apache/druid.git" +base = "a30af7a91d528e5c3a90356a5592abc7119191c6" diff --git a/druid/stackable/patches/30.0.1/series b/druid/stackable/patches/30.0.1/series deleted file mode 100644 index 0dc0d4cac..000000000 --- a/druid/stackable/patches/30.0.1/series +++ /dev/null @@ -1,9 +0,0 @@ -# This series applies on Git commit 0f4a8032d4f3c17fc8a7d3dba5fc272c1bd76c2b -01-remove-ranger-security.patch -02-prometheus-emitter-from-source.patch -03-stop-building-unused-extensions.patch -04-update-patch-dependencies.patch -05-xmllayout-dependencies.patch -06-dont-build-targz.patch -07-cyclonedx-plugin.patch -08-CVE-2024-36114-bump-aircompressor-0-27.patch From 79ad10052f8357df8eb9f550a2076fdf527e276d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Natalie=20Klestrup=20R=C3=B6ijezon?= Date: Thu, 27 Feb 2025 14:07:13 +0100 Subject: [PATCH 6/6] Convert Druid 31.0.1 patches to patchable --- ...races-of-the-druid-ranger-extension.patch} | 16 ++++++---- ...-Prometheus-emitter-in-distribution.patch} | 11 ++++--- ...003-Stop-building-unused-extensions.patch} | 12 ++++--- ...dencies-that-have-a-new-patch-relea.patch} | 32 ++++++++++++------- ...e-jackson-dataformat-xml-dependency.patch} | 10 +++--- ...op-building-the-tar.gz-distribution.patch} | 7 ++-- ...tch => 0007-Update-CycloneDX-plugin.patch} | 13 ++++++-- ...27.patch => 0008-Fix-CVE-2024-36114.patch} | 12 +++++-- ...p.patch => 0009-Update-FMPP-version.patch} | 19 +++++++++-- ...py.patch => 0010-Fix-CVE-2023-34455.patch} | 11 +++++-- druid/stackable/patches/31.0.1/patchable.toml | 2 ++ 11 files changed, 101 insertions(+), 44 deletions(-) rename druid/stackable/patches/31.0.1/{01-remove-ranger-security.patch => 0001-Removes-all-traces-of-the-druid-ranger-extension.patch} (79%) rename druid/stackable/patches/31.0.1/{02-prometheus-emitter-from-source.patch => 0002-Include-Prometheus-emitter-in-distribution.patch} (90%) rename druid/stackable/patches/31.0.1/{03-stop-building-unused-extensions.patch => 0003-Stop-building-unused-extensions.patch} (89%) rename druid/stackable/patches/31.0.1/{04-update-patch-dependencies.patch => 0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch} (88%) rename druid/stackable/patches/31.0.1/{05-xmllayout-dependencies.patch => 0005-Include-jackson-dataformat-xml-dependency.patch} (77%) rename druid/stackable/patches/31.0.1/{06-dont-build-targz.patch => 0006-Stop-building-the-tar.gz-distribution.patch} (78%) rename druid/stackable/patches/31.0.1/{07-cyclonedx-plugin.patch => 0007-Update-CycloneDX-plugin.patch} (63%) rename druid/stackable/patches/31.0.1/{08-CVE-2024-36114-bump-aircompressor-0-27.patch => 0008-Fix-CVE-2024-36114.patch} (85%) rename druid/stackable/patches/31.0.1/{09-update-fmpp.patch => 0009-Update-FMPP-version.patch} (51%) rename druid/stackable/patches/31.0.1/{10-cve-2023-34455-rm-snappy.patch => 0010-Fix-CVE-2023-34455.patch} (84%) create mode 100644 druid/stackable/patches/31.0.1/patchable.toml diff --git a/druid/stackable/patches/31.0.1/01-remove-ranger-security.patch b/druid/stackable/patches/31.0.1/0001-Removes-all-traces-of-the-druid-ranger-extension.patch similarity index 79% rename from druid/stackable/patches/31.0.1/01-remove-ranger-security.patch rename to druid/stackable/patches/31.0.1/0001-Removes-all-traces-of-the-druid-ranger-extension.patch index 14c4d1c5e..1a63c96b7 100644 --- a/druid/stackable/patches/31.0.1/01-remove-ranger-security.patch +++ b/druid/stackable/patches/31.0.1/0001-Removes-all-traces-of-the-druid-ranger-extension.patch @@ -1,13 +1,15 @@ -Removes all traces of the druid ranger extension - +From ac257969aaf853835a5a410bb3d432c2b8d9f390 Mon Sep 17 00:00:00 2001 From: Lars Francke - +Date: Wed, 10 Jul 2024 17:07:13 +0200 +Subject: Removes all traces of the druid ranger extension --- - 0 files changed + distribution/pom.xml | 2 -- + pom.xml | 1 - + 2 files changed, 3 deletions(-) diff --git a/distribution/pom.xml b/distribution/pom.xml -index 0f17a8c877..d7cd645767 100644 +index dcb01abceb..1a4f7df716 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -252,8 +252,6 @@ @@ -20,10 +22,10 @@ index 0f17a8c877..d7cd645767 100644 -c org.apache.druid.extensions:druid-catalog diff --git a/pom.xml b/pom.xml -index cfca79dc6e..2acb812cbe 100644 +index e5bcfafacb..807f9f11df 100644 --- a/pom.xml +++ b/pom.xml -@@ -199,7 +199,6 @@ +@@ -198,7 +198,6 @@ extensions-core/simple-client-sslcontext extensions-core/druid-basic-security extensions-core/google-extensions diff --git a/druid/stackable/patches/31.0.1/02-prometheus-emitter-from-source.patch b/druid/stackable/patches/31.0.1/0002-Include-Prometheus-emitter-in-distribution.patch similarity index 90% rename from druid/stackable/patches/31.0.1/02-prometheus-emitter-from-source.patch rename to druid/stackable/patches/31.0.1/0002-Include-Prometheus-emitter-in-distribution.patch index 8f0ca6795..beb5f4e94 100644 --- a/druid/stackable/patches/31.0.1/02-prometheus-emitter-from-source.patch +++ b/druid/stackable/patches/31.0.1/0002-Include-Prometheus-emitter-in-distribution.patch @@ -1,13 +1,14 @@ -Include Prometheus emitter in distribution - +From 484bd7f13890823fdfdcbec5bd21b046ac885015 Mon Sep 17 00:00:00 2001 From: Lars Francke - +Date: Mon, 17 Feb 2025 16:42:34 +0100 +Subject: Include Prometheus emitter in distribution --- - 0 files changed + distribution/pom.xml | 46 ++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 46 insertions(+) diff --git a/distribution/pom.xml b/distribution/pom.xml -index d7cd645767..eda1ddcfab 100644 +index 1a4f7df716..a28e34bb6a 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -464,6 +464,52 @@ diff --git a/druid/stackable/patches/31.0.1/03-stop-building-unused-extensions.patch b/druid/stackable/patches/31.0.1/0003-Stop-building-unused-extensions.patch similarity index 89% rename from druid/stackable/patches/31.0.1/03-stop-building-unused-extensions.patch rename to druid/stackable/patches/31.0.1/0003-Stop-building-unused-extensions.patch index 7d0f91dd1..97fc3b900 100644 --- a/druid/stackable/patches/31.0.1/03-stop-building-unused-extensions.patch +++ b/druid/stackable/patches/31.0.1/0003-Stop-building-unused-extensions.patch @@ -1,18 +1,20 @@ -Stop building unused extensions. - +From 540182e6a1169103cb77ff37d963186f23204800 Mon Sep 17 00:00:00 2001 From: Lars Francke +Date: Mon, 17 Feb 2025 16:42:34 +0100 +Subject: Stop building unused extensions. By default Druid builds all community extensions and then discards them while assembling the final distribution. This patch removes unused extensions from the build. --- - 0 files changed + pom.xml | 32 +------------------------------- + 1 file changed, 1 insertion(+), 31 deletions(-) diff --git a/pom.xml b/pom.xml -index 2acb812cbe..38e0ddc61a 100644 +index 807f9f11df..e9e19f7920 100644 --- a/pom.xml +++ b/pom.xml -@@ -201,39 +201,9 @@ +@@ -200,39 +200,9 @@ extensions-core/google-extensions extensions-core/druid-catalog extensions-core/testing-tools diff --git a/druid/stackable/patches/31.0.1/04-update-patch-dependencies.patch b/druid/stackable/patches/31.0.1/0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch similarity index 88% rename from druid/stackable/patches/31.0.1/04-update-patch-dependencies.patch rename to druid/stackable/patches/31.0.1/0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch index 364fe1cc5..f6d435ab6 100644 --- a/druid/stackable/patches/31.0.1/04-update-patch-dependencies.patch +++ b/druid/stackable/patches/31.0.1/0004-Updates-all-dependencies-that-have-a-new-patch-relea.patch @@ -1,11 +1,19 @@ -Updates all dependencies that have a new patch release available. - -From: Lukas Krug - +From 14918ed4cad073b1e62ba26111352dafd2da3ae0 Mon Sep 17 00:00:00 2001 +From: Lars Francke +Date: Mon, 17 Feb 2025 16:42:49 +0100 +Subject: Updates all dependencies that have a new patch release available. --- + extensions-core/druid-pac4j/pom.xml | 2 +- + extensions-core/kubernetes-extensions/pom.xml | 2 +- + extensions-core/orc-extensions/pom.xml | 2 +- + extensions-core/parquet-extensions/pom.xml | 2 +- + pom.xml | 31 ++++++++++--------- + processing/pom.xml | 2 +- + 6 files changed, 22 insertions(+), 19 deletions(-) + diff --git a/extensions-core/druid-pac4j/pom.xml b/extensions-core/druid-pac4j/pom.xml -index 3693d28..8be5e4c 100644 +index 3693d28d67..8be5e4c355 100644 --- a/extensions-core/druid-pac4j/pom.xml +++ b/extensions-core/druid-pac4j/pom.xml @@ -34,7 +34,7 @@ @@ -18,7 +26,7 @@ index 3693d28..8be5e4c 100644 1.7 diff --git a/extensions-core/kubernetes-extensions/pom.xml b/extensions-core/kubernetes-extensions/pom.xml -index 1e513ec..7f43fdd 100644 +index 1e513ec8eb..7f43fdd108 100644 --- a/extensions-core/kubernetes-extensions/pom.xml +++ b/extensions-core/kubernetes-extensions/pom.xml @@ -34,7 +34,7 @@ @@ -31,7 +39,7 @@ index 1e513ec..7f43fdd 100644 diff --git a/extensions-core/orc-extensions/pom.xml b/extensions-core/orc-extensions/pom.xml -index 1b6a394..bb4a9be 100644 +index 1b6a394728..bb4a9be716 100644 --- a/extensions-core/orc-extensions/pom.xml +++ b/extensions-core/orc-extensions/pom.xml @@ -31,7 +31,7 @@ @@ -44,7 +52,7 @@ index 1b6a394..bb4a9be 100644 diff --git a/extensions-core/parquet-extensions/pom.xml b/extensions-core/parquet-extensions/pom.xml -index 0d18d91..a8f9e7d 100644 +index 0d18d9162d..a8f9e7d52e 100644 --- a/extensions-core/parquet-extensions/pom.xml +++ b/extensions-core/parquet-extensions/pom.xml @@ -201,7 +201,7 @@ @@ -57,7 +65,7 @@ index 0d18d91..a8f9e7d 100644 diff --git a/pom.xml b/pom.xml -index e5bcfaf..80861bc 100644 +index e9e19f7920..4408e55b9c 100644 --- a/pom.xml +++ b/pom.xml @@ -74,7 +74,7 @@ @@ -105,7 +113,7 @@ index e5bcfaf..80861bc 100644 3.25.5 1.3.1 1.7.36 -@@ -118,17 +118,17 @@ +@@ -118,17 +121,17 @@ core @@ -129,10 +137,10 @@ index e5bcfaf..80861bc 100644 diff --git a/processing/pom.xml b/processing/pom.xml -index affd900fe6..0daad4fa56 100644 +index d5418dce93..716c1299f4 100644 --- a/processing/pom.xml +++ b/processing/pom.xml -@@ -37,7 +37,7 @@ +@@ -36,7 +36,7 @@ 1.6.5 ${sigar.base.version}.132 5.3.4 diff --git a/druid/stackable/patches/31.0.1/05-xmllayout-dependencies.patch b/druid/stackable/patches/31.0.1/0005-Include-jackson-dataformat-xml-dependency.patch similarity index 77% rename from druid/stackable/patches/31.0.1/05-xmllayout-dependencies.patch rename to druid/stackable/patches/31.0.1/0005-Include-jackson-dataformat-xml-dependency.patch index 29d325dfc..1a469fef8 100644 --- a/druid/stackable/patches/31.0.1/05-xmllayout-dependencies.patch +++ b/druid/stackable/patches/31.0.1/0005-Include-jackson-dataformat-xml-dependency.patch @@ -1,16 +1,18 @@ -Include jackson-dataformat-xml dependency. - +From bb1dd6ace9f6112532e5c4ad7158f0703b5baf9a Mon Sep 17 00:00:00 2001 From: Lars Francke +Date: Mon, 17 Feb 2025 16:42:49 +0100 +Subject: Include jackson-dataformat-xml dependency. This allows us to use XmlLayout for Log4jV2. By including it here as a dependency we can make sure that we always have the matching version and we don't need to include it manually later in the build. --- - 0 files changed + server/pom.xml | 5 +++++ + 1 file changed, 5 insertions(+) diff --git a/server/pom.xml b/server/pom.xml -index 410b51480e..b7dcf46111 100644 +index 8f1bb2bd72..4c443f9ac4 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -205,6 +205,11 @@ diff --git a/druid/stackable/patches/31.0.1/06-dont-build-targz.patch b/druid/stackable/patches/31.0.1/0006-Stop-building-the-tar.gz-distribution.patch similarity index 78% rename from druid/stackable/patches/31.0.1/06-dont-build-targz.patch rename to druid/stackable/patches/31.0.1/0006-Stop-building-the-tar.gz-distribution.patch index 1bed79fd1..41fc73a3f 100644 --- a/druid/stackable/patches/31.0.1/06-dont-build-targz.patch +++ b/druid/stackable/patches/31.0.1/0006-Stop-building-the-tar.gz-distribution.patch @@ -1,11 +1,12 @@ -Stop building the tar.gz distribution. - +From e91413a596de7c72e659a0da45522f8d84a6372b Mon Sep 17 00:00:00 2001 From: Lars Francke +Date: Mon, 17 Feb 2025 16:42:49 +0100 +Subject: Stop building the tar.gz distribution. All we do is build Druid tar and gzip it only to immediately uncompress it again. So, instead we just skip the compression step entirely. --- - distribution/src/assembly/assembly.xml | 2 +- + distribution/src/assembly/assembly.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/distribution/src/assembly/assembly.xml b/distribution/src/assembly/assembly.xml diff --git a/druid/stackable/patches/31.0.1/07-cyclonedx-plugin.patch b/druid/stackable/patches/31.0.1/0007-Update-CycloneDX-plugin.patch similarity index 63% rename from druid/stackable/patches/31.0.1/07-cyclonedx-plugin.patch rename to druid/stackable/patches/31.0.1/0007-Update-CycloneDX-plugin.patch index b2ddeebf6..52880e32c 100644 --- a/druid/stackable/patches/31.0.1/07-cyclonedx-plugin.patch +++ b/druid/stackable/patches/31.0.1/0007-Update-CycloneDX-plugin.patch @@ -1,8 +1,17 @@ +From 245dbf0bff4e386db6b27d079fe5baff6180732c Mon Sep 17 00:00:00 2001 +From: Lukas Voetmand +Date: Fri, 6 Sep 2024 17:53:52 +0200 +Subject: Update CycloneDX plugin + +--- + pom.xml | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + diff --git a/pom.xml b/pom.xml -index 9051ed2..10a2c85 100644 +index 4408e55b9c..5c99e69381 100644 --- a/pom.xml +++ b/pom.xml -@@ -1728,7 +1728,11 @@ +@@ -1707,7 +1707,11 @@ org.cyclonedx cyclonedx-maven-plugin diff --git a/druid/stackable/patches/31.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch b/druid/stackable/patches/31.0.1/0008-Fix-CVE-2024-36114.patch similarity index 85% rename from druid/stackable/patches/31.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch rename to druid/stackable/patches/31.0.1/0008-Fix-CVE-2024-36114.patch index 04999a574..5915ad3a9 100644 --- a/druid/stackable/patches/31.0.1/08-CVE-2024-36114-bump-aircompressor-0-27.patch +++ b/druid/stackable/patches/31.0.1/0008-Fix-CVE-2024-36114.patch @@ -1,3 +1,8 @@ +From f36f1491c4d3658a8ebdc74e90fdbfa949546abe Mon Sep 17 00:00:00 2001 +From: Malte Sander +Date: Thu, 12 Dec 2024 17:59:17 +0100 +Subject: Fix CVE-2024-36114 + Fix CVE-2024-36114 see https://github.com/stackabletech/vulnerabilities/issues/834 @@ -17,12 +22,15 @@ have been fixed. When decompressing data from untrusted users, this can be exploited for a denial-of-service attack by crashing the JVM, or to leak other sensitive information from the Java process. There are no known workarounds for this issue. +--- + pom.xml | 6 ++++++ + 1 file changed, 6 insertions(+) diff --git a/pom.xml b/pom.xml -index 9051ed24c5..e839295b61 100644 +index 5c99e69381..88fdfcb09a 100644 --- a/pom.xml +++ b/pom.xml -@@ -283,6 +283,12 @@ +@@ -256,6 +256,12 @@ diff --git a/druid/stackable/patches/31.0.1/09-update-fmpp.patch b/druid/stackable/patches/31.0.1/0009-Update-FMPP-version.patch similarity index 51% rename from druid/stackable/patches/31.0.1/09-update-fmpp.patch rename to druid/stackable/patches/31.0.1/0009-Update-FMPP-version.patch index 3abb818da..0ff41331f 100644 --- a/druid/stackable/patches/31.0.1/09-update-fmpp.patch +++ b/druid/stackable/patches/31.0.1/0009-Update-FMPP-version.patch @@ -1,11 +1,26 @@ +From 15f604cc0c9f953df95be8a4c38d5dcc0b595051 Mon Sep 17 00:00:00 2001 +From: Lars Francke +Date: Thu, 12 Dec 2024 06:35:21 +0100 +Subject: Update FMPP version + +This is because FMPP Maven Plugin depends on FMPP in version 0.9.14 +which itself depends on a Freemarker version that has not been pinned. +Instead it specifies a "range" which resolves to a SNAPSHOT version +which we don't want. +--- + 10-update-fmpp.patch | 0 + sql/pom.xml | 7 +++++++ + 2 files changed, 7 insertions(+) + create mode 100644 10-update-fmpp.patch + diff --git a/10-update-fmpp.patch b/10-update-fmpp.patch new file mode 100644 index 0000000000..e69de29bb2 diff --git a/sql/pom.xml b/sql/pom.xml -index bdd29f3f91..e5ba89f655 100644 +index 56ed03f5c2..d0d19dd854 100644 --- a/sql/pom.xml +++ b/sql/pom.xml -@@ -322,6 +322,13 @@ +@@ -365,6 +365,13 @@ com.googlecode.fmpp-maven-plugin fmpp-maven-plugin diff --git a/druid/stackable/patches/31.0.1/10-cve-2023-34455-rm-snappy.patch b/druid/stackable/patches/31.0.1/0010-Fix-CVE-2023-34455.patch similarity index 84% rename from druid/stackable/patches/31.0.1/10-cve-2023-34455-rm-snappy.patch rename to druid/stackable/patches/31.0.1/0010-Fix-CVE-2023-34455.patch index e4e440d0d..c69d2f85e 100644 --- a/druid/stackable/patches/31.0.1/10-cve-2023-34455-rm-snappy.patch +++ b/druid/stackable/patches/31.0.1/0010-Fix-CVE-2023-34455.patch @@ -1,4 +1,8 @@ -Fix CVE-2023-34455 +From 90f6dd1211a4d4ced8b3a75b7549b1e68e4b6ee6 Mon Sep 17 00:00:00 2001 +From: Razvan-Daniel Mihai <84674+razvan@users.noreply.github.com> +Date: Tue, 28 Jan 2025 17:29:59 +0100 +Subject: Fix CVE-2023-34455 + see https://github.com/stackabletech/vulnerabilities/issues/558 At the end of build process, Druid downloads dependencies directly from a remote @@ -8,9 +12,12 @@ The hadoop client depends on a vulnerable version of the snappy library which is then also downloaded even though a newer version is already on the system. This patch removes the vulnerable jars. +--- + distribution/pom.xml | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) diff --git a/distribution/pom.xml b/distribution/pom.xml -index d5918710ef..2d5bfc6ab4 100644 +index a28e34bb6a..4ab7837538 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -259,6 +259,20 @@ diff --git a/druid/stackable/patches/31.0.1/patchable.toml b/druid/stackable/patches/31.0.1/patchable.toml new file mode 100644 index 000000000..97ae47d66 --- /dev/null +++ b/druid/stackable/patches/31.0.1/patchable.toml @@ -0,0 +1,2 @@ +upstream = "https://github.com/apache/druid.git" +base = "520482cb9638e452b0553595b4f29bb397a63758"