From eb8d596ab9066fdd6d9f8275524b99070a7af07d Mon Sep 17 00:00:00 2001 From: hantmac Date: Fri, 19 Dec 2025 14:18:38 +0800 Subject: [PATCH 1/7] fix: jdk version and metabase upgrade --- deps.edn | 2 +- metabase.pom | 43 ++++++++----------- project.clj | 2 +- .../1.40/metabase-core-1.40.jar.md5 | 2 +- .../1.40/metabase-core-1.40.jar.sha1 | 2 +- .../metabase-core/1.40/metabase-core-1.40.pom | 43 ++++++++----------- .../1.40/metabase-core-1.40.pom.md5 | 2 +- .../1.40/metabase-core-1.40.pom.sha1 | 2 +- .../databend/metabase-core/maven-metadata.xml | 4 +- .../metabase-core/maven-metadata.xml.md5 | 2 +- .../metabase-core/maven-metadata.xml.sha1 | 2 +- src/metabase/driver/databend.clj | 7 +-- 12 files changed, 52 insertions(+), 61 deletions(-) diff --git a/deps.edn b/deps.edn index b3d1718..3b1905a 100644 --- a/deps.edn +++ b/deps.edn @@ -2,7 +2,7 @@ ["src" "resources"] :deps - {com.databend/databend-jdbc {:mvn/version "0.0.7"} + {com.databend/databend-jdbc {:mvn/version "0.4.2"} com.widdindustries/cljc.java-time {:mvn/version "0.1.21"}} :mvn/repos {"releases" {:url "https://repo.repsy.io/mvn/databend/maven"}} diff --git a/metabase.pom b/metabase.pom index 96c7045..b8a4483 100644 --- a/metabase.pom +++ b/metabase.pom @@ -1,12 +1,12 @@ - + + 4.0.0 - amalloy - ring-buffer - jar - 1.3.1 - ring-buffer - Persistent bounded-size queue implementation in Clojure - https://github.com/clj-commons/ring-buffer + scout + scout + 0.1.0 + scout + Functional string searching and matching for parsing. + http://example.com/FIXME Eclipse Public License @@ -14,7 +14,10 @@ - ef3635c71182eac1b6ecfa216c14adf90fabd28e + scm:git:git://github.com/davidsantiago/scout.git + scm:git:ssh://git@github.com/davidsantiago/scout.git + 2b825a7f8d8073b805ad37e0006dccd8d2d9efef + https://github.com/davidsantiago/scout src @@ -25,20 +28,22 @@ + + dev-resources + resources target target/classes - central - https://repo1.maven.org/maven2/ + http://repo1.maven.org/maven2 - false + true true @@ -46,7 +51,7 @@ clojars - https://repo.clojars.org/ + http://clojars.org/repo/ true @@ -55,21 +60,11 @@ - - - org.clojure clojure - 1.10.1 - provided - - - org.clojure - clojurescript - 1.10.520 - provided + 1.3.0 diff --git a/project.clj b/project.clj index 07085bd..861e9b7 100644 --- a/project.clj +++ b/project.clj @@ -2,7 +2,7 @@ :min-lein-version "2.5.0" :dependencies - [[com.databend/databend-jdbc "0.0.7"] + [[com.databend/databend-jdbc "0.4.2"] [clojure.java-time "0.3.2"] ] diff --git a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.md5 b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.md5 index 5a8cc88..a428445 100644 --- a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.md5 +++ b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.md5 @@ -1 +1 @@ -a99d82f92b21c5c761f0d2c8ac6b177e \ No newline at end of file +842303d66671f38eeac0faf81dfb1e0e \ No newline at end of file diff --git a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.sha1 b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.sha1 index 99aa6f6..5976c3f 100644 --- a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.sha1 +++ b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.jar.sha1 @@ -1 +1 @@ -cf45160a9fef4b0f3e15afdfcfa1ad063df70070 \ No newline at end of file +3a70ac07cecbf79c3e80c89d9b4a2eedd9f4c125 \ No newline at end of file diff --git a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom index 96c7045..b8a4483 100644 --- a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom +++ b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom @@ -1,12 +1,12 @@ - + + 4.0.0 - amalloy - ring-buffer - jar - 1.3.1 - ring-buffer - Persistent bounded-size queue implementation in Clojure - https://github.com/clj-commons/ring-buffer + scout + scout + 0.1.0 + scout + Functional string searching and matching for parsing. + http://example.com/FIXME Eclipse Public License @@ -14,7 +14,10 @@ - ef3635c71182eac1b6ecfa216c14adf90fabd28e + scm:git:git://github.com/davidsantiago/scout.git + scm:git:ssh://git@github.com/davidsantiago/scout.git + 2b825a7f8d8073b805ad37e0006dccd8d2d9efef + https://github.com/davidsantiago/scout src @@ -25,20 +28,22 @@ + + dev-resources + resources target target/classes - central - https://repo1.maven.org/maven2/ + http://repo1.maven.org/maven2 - false + true true @@ -46,7 +51,7 @@ clojars - https://repo.clojars.org/ + http://clojars.org/repo/ true @@ -55,21 +60,11 @@ - - - org.clojure clojure - 1.10.1 - provided - - - org.clojure - clojurescript - 1.10.520 - provided + 1.3.0 diff --git a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.md5 b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.md5 index 72e3845..f5e617d 100644 --- a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.md5 +++ b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.md5 @@ -1 +1 @@ -419561bf2a35cfa4ece195698b6a6640 \ No newline at end of file +927bed85091e091f37059344817fd841 \ No newline at end of file diff --git a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.sha1 b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.sha1 index bd7ef01..ffe608e 100644 --- a/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.sha1 +++ b/repo/com/databend/metabase-core/1.40/metabase-core-1.40.pom.sha1 @@ -1 +1 @@ -8a10de8a144faafe7dd71decc36e0a2d9dc7af2e \ No newline at end of file +c4afa795efeb3025ca9f9a5b4e8c37f1f5d59249 \ No newline at end of file diff --git a/repo/com/databend/metabase-core/maven-metadata.xml b/repo/com/databend/metabase-core/maven-metadata.xml index 2284e58..9b97bfd 100644 --- a/repo/com/databend/metabase-core/maven-metadata.xml +++ b/repo/com/databend/metabase-core/maven-metadata.xml @@ -3,11 +3,11 @@ com.databend metabase-core - 1.41 + 1.40 1.40 1.41 - 20240528085732 + 20251219034729 diff --git a/repo/com/databend/metabase-core/maven-metadata.xml.md5 b/repo/com/databend/metabase-core/maven-metadata.xml.md5 index fff64a5..32afed7 100644 --- a/repo/com/databend/metabase-core/maven-metadata.xml.md5 +++ b/repo/com/databend/metabase-core/maven-metadata.xml.md5 @@ -1 +1 @@ -f5ab9f9594372558da4228baacdbb718 \ No newline at end of file +731b96f31e5a8c48a228d117fa1da59b \ No newline at end of file diff --git a/repo/com/databend/metabase-core/maven-metadata.xml.sha1 b/repo/com/databend/metabase-core/maven-metadata.xml.sha1 index 31b174e..16ec9af 100644 --- a/repo/com/databend/metabase-core/maven-metadata.xml.sha1 +++ b/repo/com/databend/metabase-core/maven-metadata.xml.sha1 @@ -1 +1 @@ -344de6db540a64af1dd9f9d602aef2c1fccbc83f \ No newline at end of file +f32a69d2cbb1ec187a478267cd32a5a39fc7aadf \ No newline at end of file diff --git a/src/metabase/driver/databend.clj b/src/metabase/driver/databend.clj index 050737a..5ebe3cf 100644 --- a/src/metabase/driver/databend.clj +++ b/src/metabase/driver/databend.clj @@ -7,7 +7,9 @@ [honey.sql :as sql] [java-time :as t] [medley.core :as m] - [metabase [config :as config] [driver :as driver] [util :as u]] + [metabase.config.core :as config] + [metabase.driver :as driver] + [metabase.util :as u] [metabase.driver.ddl.interface :as ddl.i] [metabase.driver.sql :as driver.sql] [metabase.driver.sql.util :as sql.u] @@ -21,7 +23,6 @@ [metabase.driver.sql-jdbc.sync.interface :as i] [metabase.util.honey-sql-2 :as h2x] [metabase.util.date-2 :as u.date] - [metabase.util.ssh :as ssh] [schema.core :as s]) (:import @@ -418,4 +419,4 @@ (defmethod driver.sql/set-role-statement :databend [_ role] - (format "SET ROLE %s;" role)) \ No newline at end of file + (format "SET ROLE %s;" role)) From 05806bbbc3ca1366eedfa8e7c0fa6c673be6a36d Mon Sep 17 00:00:00 2001 From: hantmac Date: Fri, 19 Dec 2025 14:27:23 +0800 Subject: [PATCH 2/7] fix ci --- .github/workflows/check.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yaml b/.github/workflows/check.yaml index 0b64007..7e789ac 100644 --- a/.github/workflows/check.yaml +++ b/.github/workflows/check.yaml @@ -64,7 +64,7 @@ jobs: cache: "yarn" - name: Get M2 cache - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: | ~/.m2 From 4c650a263bb785b5843f0606bcc9bc07def49d56 Mon Sep 17 00:00:00 2001 From: hantmac Date: Fri, 19 Dec 2025 14:29:03 +0800 Subject: [PATCH 3/7] fix action version --- .github/workflows/check.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yaml b/.github/workflows/check.yaml index 7e789ac..9eb9985 100644 --- a/.github/workflows/check.yaml +++ b/.github/workflows/check.yaml @@ -78,7 +78,7 @@ jobs: ls -lah resources/modules - name: Archive driver JAR - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: databend.metabase-driver.jar path: resources/modules/databend.metabase-driver.jar From ae2c16ebd14cec4499047e1c516b4c24c2e3652c Mon Sep 17 00:00:00 2001 From: hantmac Date: Fri, 19 Dec 2025 14:36:40 +0800 Subject: [PATCH 4/7] fix ci --- .github/workflows/check.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/check.yaml b/.github/workflows/check.yaml index 9eb9985..7dce904 100644 --- a/.github/workflows/check.yaml +++ b/.github/workflows/check.yaml @@ -58,10 +58,11 @@ jobs: sudo bash ./linux-install-1.11.1.1182.sh - name: Setup Node - uses: actions/setup-node@v2 + uses: actions/setup-node@v4 with: node-version: "18" cache: "yarn" + cache-dependency-path: "yarn.lock" - name: Get M2 cache uses: actions/cache@v4 From 791ede5752608db1eddda1e77bb9399e7af1686a Mon Sep 17 00:00:00 2001 From: hantmac Date: Fri, 19 Dec 2025 15:38:39 +0800 Subject: [PATCH 5/7] upgrade jdk in ci --- .github/workflows/check.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check.yaml b/.github/workflows/check.yaml index 7dce904..c4a15f9 100644 --- a/.github/workflows/check.yaml +++ b/.github/workflows/check.yaml @@ -46,11 +46,11 @@ jobs: with: path: modules/drivers/databend - - name: Prepare JDK 17 + - name: Prepare JDK 23 uses: actions/setup-java@v2 with: distribution: "temurin" - java-version: "17" + java-version: "23" - name: Install Clojure CLI run: | From ecdb15e8d3f976a125577b3bb19b656522ee5939 Mon Sep 17 00:00:00 2001 From: hantmac Date: Fri, 19 Dec 2025 15:44:43 +0800 Subject: [PATCH 6/7] fix ci --- .github/workflows/check.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yaml b/.github/workflows/check.yaml index c4a15f9..502f7a8 100644 --- a/.github/workflows/check.yaml +++ b/.github/workflows/check.yaml @@ -39,7 +39,7 @@ jobs: uses: actions/checkout@v2 with: repository: metabase/metabase - ref: v0.49.12 + ref: v0.57.6 - name: Checkout Driver Repo uses: actions/checkout@v2 From 5209894d304793dff0d32c5deb21225fe0411a4d Mon Sep 17 00:00:00 2001 From: hantmac Date: Fri, 19 Dec 2025 17:38:08 +0800 Subject: [PATCH 7/7] add readme --- README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 8c9b52b..eb82714 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,7 @@ ### Prerequisites - [Leiningen](https://leiningen.org/) +- JDK 21 or newer (current builds target Metabase 0.56.x and above, which require Java 21+) ### Build from source @@ -47,6 +48,11 @@ LEIN_SNAPSHOTS_IN_RELEASE=true DEBUG=1 lein uberjar ``` + Notes: + + - Use JDK 21+ when compiling; newer Metabase builds (0.56.x and above) depend on Java 21 APIs and will fail on older JDKs. + - This driver version is intended for Metabase 0.56.x and later. For older Metabase releases, use the matching driver version from the table below. + 5. Let's assume we download `metabase.jar` from the [Metabase jar](https://www.metabase.com/docs/latest/operations-guide/running-the-metabase-jar-file.html) to `~/metabase/` and we built the project above. Copy the built jar to the Metabase plugins directly and run Metabase from there! ```shell @@ -72,4 +78,4 @@ You should see a message on startup similar to: | 0.42.x | 0.0.5 | | 0.44.x | 0.0.6 | | 0.47.7+ | 0.0.7 | -| 0.49.x | 0.0.8 | \ No newline at end of file +| 0.49.x | 0.0.8 |