metabase-clickhouse-driver
metabase-clickhouse-driver copied to clipboard
Unable to initialise driver 1.53.2 with Metabase 0.53.6
Describe the bug
Steps to reproduce
Upgraded Metabase to 0.53.6 with driver 1.53.2 and the driver is unable to initialise.
Expected behaviour
Driver should work as no obvious incompatibility note.
Error log
2025-03-14 08:35:15,626 INFO driver.impl :: [33mInitializing driver :clickhouse...[0m 2025-03-14 08:35:15,627 INFO plugins.classloader :: Added URL file:/plugins/clickhouse.metabase-driver.jar to classpath 2025-03-14 08:35:15,628 DEBUG plugins.init-steps :: [34mLoading plugin namespace metabase.driver.clickhouse...[0m 2025-03-14 08:35:15,714 INFO driver.impl :: [34mRegistered driver :clickhouse[0m (parents: [:sql-jdbc]) 🚚 2025-03-14 08:35:15,738 DEBUG plugins.jdbc-proxy :: [34mRegistering JDBC proxy driver for com.clickhouse.jdbc.ClickHouseDriver...[0m 2025-03-14 08:35:15,744 INFO metabase.util :: [32m[35mLoad lazy loading driver :clickhouse[0m took 111.9 ms[0m 2025-03-14 08:35:15,755 ERROR driver.util :: [31mFailed to check feature 'uploads' for database 'Clickhouse'[0m java.lang.NoClassDefFoundError: Could not initialize class metabase.driver.clickhouse$fn__117139$fn__117141 at metabase.driver.clickhouse$fn__117139.invokeStatic(clickhouse.clj:88) at metabase.driver.clickhouse$fn__117139.invoke(clickhouse.clj:86) at clojure.lang.MultiFn.invoke(MultiFn.java:244) at metabase.driver.clickhouse$fn__117147.invokeStatic(clickhouse.clj:119) at metabase.driver.clickhouse$fn__117147.invoke(clickhouse.clj:117) at clojure.lang.AFn.applyToHelper(AFn.java:154) at clojure.lang.AFn.applyTo(AFn.java:144) at clojure.core$apply.invokeStatic(core.clj:667) at clojure.core$apply.invoke(core.clj:662) at clojure.core.memoize$through_STAR_$fn__6594.invoke(memoize.clj:110) at clojure.core.cache$through$fn__6316.invoke(cache.clj:55) at clojure.core.memoize$through_STAR_$fn__6590$fn__6591.invoke(memoize.clj:109) at clojure.core.memoize.RetryingDelay.deref(memoize.clj:47) at clojure.core$deref.invokeStatic(core.clj:2337) at clojure.core$deref.invoke(core.clj:2323) at clojure.core.memoize$cached_function$fn__6658.doInvoke(memoize.clj:234) at clojure.lang.RestFn.applyTo(RestFn.java:140) at clojure.lang.AFunction$1.doInvoke(AFunction.java:33) at clojure.lang.RestFn.invoke(RestFn.java:411) at metabase.driver.clickhouse$fn__117156.invokeStatic(clickhouse.clj:140) at metabase.driver.clickhouse$fn__117156.invoke(clickhouse.clj:138) at clojure.lang.MultiFn.invoke(MultiFn.java:239) at metabase.driver.util$supports_QMARK__STAR_$fn__58168.invoke(util.clj:249) at clojure.core$binding_conveyor_fn$fn__5842.invoke(core.clj:2047) at clojure.lang.AFn.call(AFn.java:18) at java.base/java.util.concurrent.FutureTask.run(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.ClassNotFoundException: com.clickhouse.jdbc.ConnectionImpl [in thread "clojure-agent-send-off-pool-1"] at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source) at java.base/java.lang.ClassLoader.loadClass(Unknown Source) at java.base/java.lang.Class.forName0(Native Method) at java.base/java.lang.Class.forName(Unknown Source) at java.base/java.lang.Class.forName(Unknown Source) at clojure.lang.RT.classForName(RT.java:2229) at clojure.lang.RT.classForName(RT.java:2238) at metabase.driver.clickhouse$fn__117139$fn__117141.<clinit>(clickhouse.clj:92) at metabase.driver.clickhouse$fn__117139.invokeStatic(clickhouse.clj:88) at metabase.driver.clickhouse$fn__117139.invoke(clickhouse.clj:86) at clojure.lang.MultiFn.invoke(MultiFn.java:244) at metabase.driver.clickhouse$fn__117147.invokeStatic(clickhouse.clj:119) at metabase.driver.clickhouse$fn__117147.invoke(clickhouse.clj:117) at clojure.lang.AFn.applyToHelper(AFn.java:154) at clojure.lang.AFn.applyTo(AFn.java:144) at clojure.core$apply.invokeStatic(core.clj:667) at clojure.core$apply.invoke(core.clj:662) at clojure.core.memoize$through_STAR_$fn__6594.invoke(memoize.clj:110) at clojure.core.cache$through$fn__6316.invoke(cache.clj:55) at clojure.core.memoize$through_STAR_$fn__6590$fn__6591.invoke(memoize.clj:109) at clojure.core.memoize.RetryingDelay.deref(memoize.clj:47) at clojure.core$deref.invokeStatic(core.clj:2337) at clojure.core$deref.invoke(core.clj:2323) at clojure.core.memoize$cached_function$fn__6658.doInvoke(memoize.clj:234) at clojure.lang.RestFn.applyTo(RestFn.java:140) at clojure.lang.AFunction$1.doInvoke(AFunction.java:33) at clojure.lang.RestFn.invoke(RestFn.java:411) at metabase.driver.clickhouse$fn__117151$fn__117153.invoke(clickhouse.clj:131) at metabase.driver.clickhouse$fn__117151.invokeStatic(clickhouse.clj:131) at metabase.driver.clickhouse$fn__117151.invoke(clickhouse.clj:128) at clojure.lang.MultiFn.invoke(MultiFn.java:234) at metabase.driver.clickhouse_version$fn__89524.invokeStatic(clickhouse_version.clj:27) at metabase.driver.clickhouse_version$fn__89524.invoke(clickhouse_version.clj:24) at clojure.lang.AFn.applyToHelper(AFn.java:154) at clojure.lang.AFn.applyTo(AFn.java:144) at clojure.core$apply.invokeStatic(core.clj:667) at clojure.core$apply.invoke(core.clj:662) at clojure.core.memoize$through_STAR_$fn__6594.invoke(memoize.clj:110) at clojure.core.cache$through$fn__6316.invoke(cache.clj:55) at clojure.core.memoize$through_STAR_$fn__6590$fn__6591.invoke(memoize.clj:109) at clojure.core.memoize.RetryingDelay.deref(memoize.clj:47) at clojure.core$deref.invokeStatic(core.clj:2337) at clojure.core$deref.invoke(core.clj:2323) at clojure.core.memoize$cached_function$fn__6658.doInvoke(memoize.clj:234) at clojure.lang.RestFn.applyTo(RestFn.java:140) at clojure.lang.AFunction$1.doInvoke(AFunction.java:33) at clojure.lang.RestFn.invoke(RestFn.java:411) at metabase.driver.clickhouse_version$fn__89528.invokeStatic(clickhouse_version.clj:40) at metabase.driver.clickhouse_version$fn__89528.invoke(clickhouse_version.clj:38) at clojure.lang.MultiFn.invoke(MultiFn.java:234) at metabase.driver.clickhouse_version$is_at_least_QMARK_.invokeStatic(clickhouse_version.clj:49) at metabase.driver.clickhouse_version$is_at_least_QMARK_.invoke(clickhouse_version.clj:42) at metabase.driver.clickhouse$fn__117238.invokeStatic(clickhouse.clj:264) at metabase.driver.clickhouse$fn__117238.invoke(clickhouse.clj:261) ... 8 more
Configuration
Environment
- metabase-clickhouse-driver version: 1.53.2
- metabase-clickhouse-driver configuration: default
- Metabase version: 0.53.6
- OS: Docker
ClickHouse server
- ClickHouse Server version: 8.0
- ClickHouse Server non-default settings, if any: NA
I verified it with MB 53 and 1.53.2, and it works as expected.
This looks odd:
java.lang.NoClassDefFoundError: Could not initialize class metabase.driver.clickhouse
Could you check if the driver jar is correctly put to plugins directory?
I'm using the clickhouse driver in Metabase Cloud, and since saturday it has a lot of problemas
The cache feature stopped working, and I had to disable it. That's not a big deal, and after disabling it, the dashboads began loading again
Now, between yesterday and now, nothing loads again, no dashboard, no question, nothing..
My company is built entirely on top of metabase dashboards using clickhouse data, I really really need urgent help!
@StefanoHellebrekers, as a Metabase Cloud customer, please reach out our support team to get support
Same error, different version of the driver: Metabase v0.53.5 (run on docker) Clickhouse v25.1.5 (run on docker) Driver v1.53.3 (worked fine with driver v1.53.2 though)
$ docker logs -f metabase
2025-03-19 10:38:10,328 ERROR api.database :: Cannot connect to Database
clojure.lang.ExceptionInfo: Could not initialize class metabase.driver.clickhouse$fn__117139$fn__117141 {:message "Could not initialize class metabase.driver.clickhouse$fn__117139$fn__117141"}
at metabase.driver.util$can_connect_with_details_QMARK_.invokeStatic(util.clj:190)
at metabase.driver.util$can_connect_with_details_QMARK_.doInvoke(util.clj:161)
at clojure.lang.RestFn.invoke(RestFn.java:445)
at metabase.api.database$test_database_connection.invokeStatic(database.clj:731)
at metabase.api.database$test_database_connection.doInvoke(database.clj:721)
at clojure.lang.RestFn.invoke(RestFn.java:428)
at metabase.api.database$test_connection_details105901__105902.invokeStatic(database.clj:785)
at metabase.api.database$test_connection_details105901__105902.invoke(database.clj:765)
at metabase.api.database$fn__105909$fn__105915.invoke(database.clj:809)
at metabase.api.macros$_core_fn92021__92022$core_fn__92023.invoke(macros.clj:405)
at metabase.api.macros$endpoint_handler_STAR_92065__92067$handler__92071.invoke(macros.clj:601)
at metabase.api.macros$build_ns_handler92098__92099$ns_handler_STAR___92100.invoke(macros.clj:665)
at metabase.api.open_api.HandlerWithOpenAPISpec.invoke(open_api.clj:42)
at metabase.server.middleware.auth$enforce_authentication$fn__55706.invoke(auth.clj:18)
at metabase.api.open_api.HandlerWithOpenAPISpec.invoke(open_api.clj:42)
at metabase.api.util.handlers$_route_map_handler$fn__102455.invoke(handlers.clj:23)
at metabase.api.open_api.HandlerWithOpenAPISpec.invoke(open_api.clj:42)
at compojure.core$routes$fn__102392$f__102393.invoke(core.clj:198)
at compojure.core$routes$fn__102392$f__102393$respond_SINGLEQUOTE___102394.invoke(core.clj:197)
at metabase.api.routes$fn__110891.invokeStatic(routes.clj:97)
at metabase.api.routes$fn__110891.invoke(routes.clj:96)
at metabase.api.open_api.HandlerWithOpenAPISpec.invoke(open_api.clj:42)
at compojure.core$routes$fn__102392$f__102393.invoke(core.clj:198)
at compojure.core$routes$fn__102392.invoke(core.clj:200)
at metabase.api.open_api.HandlerWithOpenAPISpec.invoke(open_api.clj:42)
at metabase.server.routes$fn__111449$fn__111450.invoke(routes.clj:70)
at compojure.core$routes$fn__102392$f__102393.invoke(core.clj:198)
at compojure.core$routes$fn__102392.invoke(core.clj:200)
at compojure.core$make_context$handler__102420.invoke(core.clj:290)
at compojure.core$make_context$fn__102424.invoke(core.clj:300)
at compojure.core$routes$fn__102392$f__102393.invoke(core.clj:198)
at compojure.core$routes$fn__102392$f__102393$respond_SINGLEQUOTE___102394.invoke(core.clj:197)
at compojure.core$wrap_route_matches$fn__102373.invoke(core.clj:153)
at compojure.core$routes$fn__102392$f__102393.invoke(core.clj:198)
at compojure.core$routes$fn__102392$f__102393$respond_SINGLEQUOTE___102394.invoke(core.clj:197)
at compojure.core$wrap_route_matches$fn__102373.invoke(core.clj:153)
at compojure.core$routes$fn__102392$f__102393.invoke(core.clj:198)
at compojure.core$routes$fn__102392$f__102393$respond_SINGLEQUOTE___102394.invoke(core.clj:197)
at compojure.core$wrap_route_matches$fn__102373.invoke(core.clj:153)
at compojure.core$routes$fn__102392$f__102393.invoke(core.clj:198)
at compojure.core$routes$fn__102392$f__102393$respond_SINGLEQUOTE___102394.invoke(core.clj:197)
at compojure.core$wrap_route_matches$fn__102373.invoke(core.clj:153)
at compojure.core$routes$fn__102392$f__102393.invoke(core.clj:198)
at compojure.core$routes$fn__102392$f__102393$respond_SINGLEQUOTE___102394.invoke(core.clj:197)
at metabase.api.util.handlers$_route_map_handler$fn__102455.invoke(handlers.clj:24)
at metabase.api.open_api.HandlerWithOpenAPISpec.invoke(open_api.clj:42)
at metabase.api.util.handlers$_route_map_handler$fn__102455.invoke(handlers.clj:23)
at metabase.api.open_api.HandlerWithOpenAPISpec.invoke(open_api.clj:42)
at compojure.core$routes$fn__102392$f__102393.invoke(core.clj:198)
at compojure.core$routes$fn__102392.invoke(core.clj:200)
at metabase.server.middleware.exceptions$catch_uncaught_exceptions$fn__56046.invoke(exceptions.clj:111)
at metabase.server.middleware.exceptions$catch_api_exceptions$fn__56043.invoke(exceptions.clj:100)
at metabase.server.middleware.log$log_api_call$fn__111873$fn__111874$fn__111875.invoke(log.clj:232)
at metabase.driver.sql_jdbc.execute.diagnostic$do_with_diagnostic_info.invokeStatic(diagnostic.clj:17)
at metabase.driver.sql_jdbc.execute.diagnostic$do_with_diagnostic_info.invoke(diagnostic.clj:12)
at metabase.server.middleware.log$log_api_call$fn__111873$fn__111874.invoke(log.clj:223)
at toucan2.execute$do_with_call_counts.invokeStatic(execute.clj:112)
at toucan2.execute$do_with_call_counts.invoke(execute.clj:103)
at metabase.server.middleware.log$log_api_call$fn__111873.invoke(log.clj:222)
at metabase.server.middleware.browser_cookie$ensure_browser_id_cookie$fn__116860.invoke(browser_cookie.clj:40)
at metabase.server.middleware.security$add_security_headers$fn__56002.invoke(security.clj:273)
at metabase.server.middleware.json$wrap_json_body$fn__48809.invoke(json.clj:128)
at metabase.server.middleware.offset_paging$handle_paging$fn__115788.invoke(offset_paging.clj:48)
at metabase.server.middleware.json$wrap_streamed_json_response$fn__48797.invoke(json.clj:83)
at ring.middleware.keyword_params$wrap_keyword_params$fn__117127.invoke(keyword_params.clj:55)
at ring.middleware.params$wrap_params$fn__117146.invoke(params.clj:77)
at metabase.server.middleware.misc$maybe_set_site_url$fn__111589.invoke(misc.clj:59)
at metabase.server.middleware.session$reset_session_timeout$fn__116847.invoke(session.clj:270)
at metabase.server.middleware.session$bind_current_user$fn__116840$fn__116841.invoke(session.clj:245)
at metabase.request.session$do_with_current_user.invokeStatic(session.clj:47)
at metabase.request.session$do_with_current_user.invoke(session.clj:30)
at metabase.server.middleware.session$bind_current_user$fn__116840.invoke(session.clj:244)
at metabase.server.middleware.session$wrap_current_user_info$fn__116832.invoke(session.clj:204)
at metabase.analytics.sdk$embedding_mw$embedding_mw_fn__78838.invoke(sdk.clj:64)
at metabase.server.middleware.session$wrap_session_id$fn__116804.invoke(session.clj:82)
at metabase.server.middleware.auth$wrap_static_api_key$fn__55714.invoke(auth.clj:33)
at ring.middleware.cookies$wrap_cookies$fn__117047.invoke(cookies.clj:200)
at metabase.server.middleware.misc$add_content_type$fn__111571.invoke(misc.clj:28)
at metabase.server.middleware.misc$disable_streaming_buffering$fn__111597.invoke(misc.clj:75)
at ring.middleware.gzip$wrap_gzip$fn__117089.invoke(gzip.clj:86)
at metabase.server.middleware.request_id$wrap_request_id$fn__111525.invoke(request_id.clj:10)
at metabase.server.middleware.misc$bind_request$fn__111600$fn__111601.invoke(misc.clj:87)
at metabase.request.current$do_with_current_request.invokeStatic(current.clj:19)
at metabase.request.current$do_with_current_request.invoke(current.clj:15)
at metabase.server.middleware.misc$bind_request$fn__111600.invoke(misc.clj:86)
at metabase.server.middleware.ssl$redirect_to_https_middleware$fn__116876.invoke(ssl.clj:51)
at clojure.lang.Var.invoke(Var.java:395)
at metabase.server.instance$async_proxy_handler$fn__56386.invoke(instance.clj:76)
at metabase.server.instance.proxy$org.eclipse.jetty.server.handler.AbstractHandler$ff19274a.handle(Unknown Source)
at org.eclipse.jetty.server.handler.StatisticsHandler.handle(StatisticsHandler.java:173)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)
at org.eclipse.jetty.server.Server.handle(Server.java:563)
at org.eclipse.jetty.server.HttpChannel$RequestDispatchable.dispatch(HttpChannel.java:1598)
at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:753)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:501)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:287)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:314)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100)
at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:421)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:390)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:277)
at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.run(AdaptiveExecutionStrategy.java:199)
at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:411)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:969)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1194)
at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1149)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class metabase.driver.clickhouse$fn__117139$fn__117141
at metabase.driver.clickhouse$fn__117139.invokeStatic(clickhouse.clj:92)
at metabase.driver.clickhouse$fn__117139.invoke(clickhouse.clj:90)
at clojure.lang.MultiFn.invoke(MultiFn.java:244)
at metabase.driver.clickhouse$fn__117147.invokeStatic(clickhouse.clj:123)
at metabase.driver.clickhouse$fn__117147.invoke(clickhouse.clj:121)
at clojure.lang.AFn.applyToHelper(AFn.java:154)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.core$apply.invokeStatic(core.clj:667)
at clojure.core$apply.invoke(core.clj:662)
at clojure.core.memoize$through_STAR_$fn__6594.invoke(memoize.clj:110)
at clojure.core.cache$through$fn__6316.invoke(cache.clj:55)
at clojure.core.memoize$through_STAR_$fn__6590$fn__6591.invoke(memoize.clj:109)
at clojure.core.memoize.RetryingDelay.deref(memoize.clj:47)
at clojure.core$deref.invokeStatic(core.clj:2337)
at clojure.core$deref.invoke(core.clj:2323)
at clojure.core.memoize$cached_function$fn__6658.doInvoke(memoize.clj:234)
at clojure.lang.RestFn.applyTo(RestFn.java:140)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:33)
at clojure.lang.RestFn.invoke(RestFn.java:411)
at metabase.driver.clickhouse$fn__117151$fn__117153.invoke(clickhouse.clj:135)
at metabase.driver.clickhouse$fn__117151.invokeStatic(clickhouse.clj:135)
at metabase.driver.clickhouse$fn__117151.invoke(clickhouse.clj:132)
at clojure.lang.MultiFn.invoke(MultiFn.java:234)
at metabase.driver.sql_jdbc.connection$do_with_connection_spec_for_testing_connection$fn__85379.invoke(connection.clj:379)
at metabase.util.ssh$do_with_ssh_tunnel.invokeStatic(ssh.clj:165)
at metabase.util.ssh$do_with_ssh_tunnel.invoke(ssh.clj:154)
at metabase.driver.sql_jdbc.connection$do_with_connection_spec_for_testing_connection.invokeStatic(connection.clj:375)
at metabase.driver.sql_jdbc.connection$do_with_connection_spec_for_testing_connection.invoke(connection.clj:371)
at metabase.driver.sql_jdbc.connection$can_connect_QMARK_.invokeStatic(connection.clj:403)
at metabase.driver.sql_jdbc.connection$can_connect_QMARK_.invoke(connection.clj:399)
at metabase.driver.clickhouse$fn__117158.invokeStatic(clickhouse.clj:169)
at metabase.driver.clickhouse$fn__117158.invoke(clickhouse.clj:149)
at clojure.lang.MultiFn.invoke(MultiFn.java:234)
at metabase.driver.util$can_connect_with_details_QMARK_$fn__58127.invoke(util.clj:173)
at clojure.core$binding_conveyor_fn$fn__5842.invoke(core.clj:2047)
at clojure.lang.AFn.call(AFn.java:18)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
... 1 more
Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.ClassNotFoundException: com.clickhouse.jdbc.ConnectionImpl [in thread "clojure-agent-send-off-pool-1"]
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Unknown Source)
at java.base/java.lang.Class.forName(Unknown Source)
at clojure.lang.RT.classForName(RT.java:2229)
at clojure.lang.RT.classForName(RT.java:2238)
at metabase.driver.clickhouse$fn__117139$fn__117141.<clinit>(clickhouse.clj:96)
at metabase.driver.clickhouse$fn__117139.invokeStatic(clickhouse.clj:92)
at metabase.driver.clickhouse$fn__117139.invoke(clickhouse.clj:90)
at clojure.lang.MultiFn.invoke(MultiFn.java:244)
at metabase.driver.clickhouse$fn__117147.invokeStatic(clickhouse.clj:123)
at metabase.driver.clickhouse$fn__117147.invoke(clickhouse.clj:121)
at clojure.lang.AFn.applyToHelper(AFn.java:154)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.core$apply.invokeStatic(core.clj:667)
at clojure.core$apply.invoke(core.clj:662)
at clojure.core.memoize$through_STAR_$fn__6594.invoke(memoize.clj:110)
at clojure.core.cache$through$fn__6316.invoke(cache.clj:55)
at clojure.core.memoize$through_STAR_$fn__6590$fn__6591.invoke(memoize.clj:109)
at clojure.core.memoize.RetryingDelay.deref(memoize.clj:47)
at clojure.core$deref.invokeStatic(core.clj:2337)
at clojure.core$deref.invoke(core.clj:2323)
at clojure.core.memoize$cached_function$fn__6658.doInvoke(memoize.clj:234)
at clojure.lang.RestFn.applyTo(RestFn.java:140)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:33)
at clojure.lang.RestFn.invoke(RestFn.java:411)
at metabase.driver.clickhouse$fn__117151$fn__117153.invoke(clickhouse.clj:135)
at metabase.driver.clickhouse$fn__117151.invokeStatic(clickhouse.clj:135)
at metabase.driver.clickhouse$fn__117151.invoke(clickhouse.clj:132)
at clojure.lang.MultiFn.invoke(MultiFn.java:234)
at metabase.driver.clickhouse_version$fn__89524.invokeStatic(clickhouse_version.clj:27)
at metabase.driver.clickhouse_version$fn__89524.invoke(clickhouse_version.clj:24)
at clojure.lang.AFn.applyToHelper(AFn.java:154)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.core$apply.invokeStatic(core.clj:667)
at clojure.core$apply.invoke(core.clj:662)
at clojure.core.memoize$through_STAR_$fn__6594.invoke(memoize.clj:110)
at clojure.core.cache$through$fn__6316.invoke(cache.clj:55)
at clojure.core.memoize$through_STAR_$fn__6590$fn__6591.invoke(memoize.clj:109)
at clojure.core.memoize.RetryingDelay.deref(memoize.clj:47)
at clojure.core$deref.invokeStatic(core.clj:2337)
at clojure.core$deref.invoke(core.clj:2323)
at clojure.core.memoize$cached_function$fn__6658.doInvoke(memoize.clj:234)
at clojure.lang.RestFn.applyTo(RestFn.java:140)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:33)
at clojure.lang.RestFn.invoke(RestFn.java:411)
at metabase.driver.clickhouse_version$fn__89528.invokeStatic(clickhouse_version.clj:40)
at metabase.driver.clickhouse_version$fn__89528.invoke(clickhouse_version.clj:38)
at clojure.lang.MultiFn.invoke(MultiFn.java:234)
at metabase.driver.clickhouse_version$is_at_least_QMARK_.invokeStatic(clickhouse_version.clj:49)
at metabase.driver.clickhouse_version$is_at_least_QMARK_.invoke(clickhouse_version.clj:42)
at metabase.driver.clickhouse$fn__117238.invokeStatic(clickhouse.clj:268)
at metabase.driver.clickhouse$fn__117238.invoke(clickhouse.clj:265)
at clojure.lang.MultiFn.invoke(MultiFn.java:239)
at metabase.driver.util$supports_QMARK__STAR_$fn__58154.invoke(util.clj:249)
... 6 more
So it's quite odd my side... I tried to rebuild my docker image and deploy on 2 different K8 cluster: one worked and the other showed the same error. So somehow it's dependent on maybe the config used on Metabase, although mines are very close to each other. I couldn't spot anything explaining it. I then re-created my failing pod and it worked.
I suspect something with the way the classpath is initialised where the order of loading classes is not guaranteed.
Could you check if the driver jar is correctly put to plugins directory?
Yes it is:
metabase-569c4986f8-62xbv:/# ls -lh plugins/ total 256M -rw-r--r-- 1 metabase metabase 27M Mar 13 16:40 athena.metabase-driver.jar -rw-r--r-- 1 metabase metabase 44M Mar 13 16:41 bigquery-cloud-sdk.metabase-driver.jar -rw-r--r-- 1 root root 4.8M Mar 14 10:47 clickhouse.metabase-driver.jar -rw-r--r-- 1 metabase metabase 22M Mar 13 16:41 databricks.metabase-driver.jar -rw-r--r-- 1 metabase metabase 7.2M Mar 13 16:41 druid-jdbc.metabase-driver.jar -rw-r--r-- 1 metabase metabase 515K Mar 13 16:40 druid.metabase-driver.jar -rw-r--r-- 1 metabase metabase 43M Mar 13 16:40 hive-like.metabase-driver.jar -rw-r--r-- 1 metabase metabase 3.1M Mar 13 16:40 mongo.metabase-driver.jar -rw-r--r-- 1 metabase metabase 130K Mar 13 16:41 oracle.metabase-driver.jar -rw-r--r-- 1 metabase metabase 11M Mar 13 16:41 presto-jdbc.metabase-driver.jar -rw-r--r-- 1 metabase metabase 1.1M Mar 13 16:40 redshift.metabase-driver.jar -rw-r--r-- 1 metabase metabase 3.4M Mar 14 11:21 sample-database.db.mv.db -rw-r--r-- 1 metabase metabase 76M Mar 13 16:41 snowflake.metabase-driver.jar -rw-r--r-- 1 metabase metabase 65K Mar 13 16:40 sparksql.metabase-driver.jar -rw-r--r-- 1 metabase metabase 14M Mar 13 16:40 sqlite.metabase-driver.jar -rw-r--r-- 1 metabase metabase 1.6M Mar 13 16:40 sqlserver.metabase-driver.jar -rw-r--r-- 1 metabase metabase 79K Mar 13 16:40 vertica.metabase-driver.jar