As a first step “yes”. This is not the final solution but just narrowing down what the issue is
@balaji.ramaswamy Im running Dremio and Metabase on same network of docker
Getting below error
2025-01-09 14:57:21 2025-01-09 13:57:21,044 [UserServer-1] INFO c.d.sabot.rpc.user.UserRPCServer - [USER]: Channel closed /172.19.0.2:31010 ↔ /172.19.0.3:40274 (user client)
2025-01-09 14:57:21 2025-01-09 13:57:21,046 [UserServer-1] INFO com.dremio.ConnectionLog - [7c298836-b6ad-4b84-b239-e56c3bad8c7b] Connection Closed
2025-01-09 14:57:21 2025-01-09 13:57:21,171 [UserServer-1] INFO com.dremio.ConnectionLog - [87fad732-47b0-4554-b040-a144218fe711] Connection opened.
2025-01-09 14:57:21 Endpoint: 172.19.0.3:40286
2025-01-09 14:57:21 Protocol Version: 5
2025-01-09 14:57:21 Record Type: DREMIO
2025-01-09 14:57:21 Record Formats: DREMIO_23_0, DREMIO_1_4, DREMIO_0_9
2025-01-09 14:57:21 Support Complex Types: true
2025-01-09 14:57:21 Name: Dremio JDBC Driver
2025-01-09 14:57:21 Version: 24.0.0-202302100528110223-3a169b7c (24.0.0)
2025-01-09 14:57:21 Application: 1@1f0b0641b632
2025-01-09 14:57:21 User Properties:
2025-01-09 14:57:21 port=31010
2025-01-09 14:57:21 direct=dremio:31010
2025-01-09 14:57:21 host=dremio
2025-01-09 14:57:21 loginTimeout=10
2025-01-09 14:57:21 sendTimeAsDatetime=false
2025-01-09 14:57:21 type=dremio
2025-01-09 14:57:21 user=vinaybhai
2025-01-09 14:57:21 applicationName=Metabase v0.52.5
2025-01-09 14:57:21
2025-01-09 14:57:21 2025-01-09 13:57:21,172 [UserServer-1] WARN c.dremio.sabot.rpc.user.UserSession - Ignoring unknown property: PORT
2025-01-09 14:57:21 2025-01-09 13:57:21,172 [UserServer-1] WARN c.dremio.sabot.rpc.user.UserSession - Ignoring unknown property: DIRECT
2025-01-09 14:57:21 2025-01-09 13:57:21,172 [UserServer-1] WARN c.dremio.sabot.rpc.user.UserSession - Ignoring unknown property: HOST
2025-01-09 14:57:21 2025-01-09 13:57:21,172 [UserServer-1] WARN c.dremio.sabot.rpc.user.UserSession - Ignoring unknown property: LOGINTIMEOUT
2025-01-09 14:57:21 2025-01-09 13:57:21,172 [UserServer-1] WARN c.dremio.sabot.rpc.user.UserSession - Ignoring unknown property: SENDTIMEASDATETIME
2025-01-09 14:57:21 2025-01-09 13:57:21,172 [UserServer-1] WARN c.dremio.sabot.rpc.user.UserSession - Ignoring unknown property: TYPE
2025-01-09 14:57:21 2025-01-09 13:57:21,172 [UserServer-1] WARN c.dremio.sabot.rpc.user.UserSession - Ignoring unknown property: APPLICATIONNAME
2025-01-09 14:57:21 2025-01-09 13:57:21,180 [UserServer-1] INFO c.d.sabot.rpc.user.UserRPCServer - [USER]: Channel closed /172.19.0.2:31010 ↔ /172.19.0.3:40286 (user client)
2025-01-09 14:57:21 2025-01-09 13:57:21,181 [UserServer-1] INFO com.dremio.ConnectionLog - [87fad732-47b0-4554-b040-a144218fe711] Connection Closed
And below is log from Metabase
Caused by: java.sql.SQLException: Failure in connecting to Dremio: cdjd.com.dremio.exec.rpc.RpcException: HANDSHAKE_COMMUNICATION : [USER]: Channel closed null ↔ null (user client)
2025-01-09 14:59:21 at com.dremio.jdbc.impl.DremioExceptionMapper.map(DremioExceptionMapper.java:80)
2025-01-09 14:59:21 at com.dremio.jdbc.impl.DremioConnectionImpl.(DremioConnectionImpl.java:105)
2025-01-09 14:59:21 at com.dremio.jdbc.impl.DremioJdbc41Factory.newConnection(DremioJdbc41Factory.java:72)
2025-01-09 14:59:21 at com.dremio.jdbc.impl.DremioFactory.newConnection(DremioFactory.java:67)
2025-01-09 14:59:21 at cdjd.org.apache.calcite.avatica.UnregisteredDriver.connect(UnregisteredDriver.java:138)
2025-01-09 14:59:21 at com.dremio.jdbc.Driver.connect(Driver.java:84)
2025-01-09 14:59:21 at metabase.plugins.jdbc_proxy$proxy_driver$reify__95362.connect(jdbc_proxy.clj:37)
2025-01-09 14:59:21 at java.sql/java.sql.DriverManager.getConnection(Unknown Source)
2025-01-09 14:59:21 at java.sql/java.sql.DriverManager.getConnection(Unknown Source)
2025-01-09 14:59:21 at clojure.java.jdbc$get_driver_connection.invokeStatic(jdbc.clj:271)
2025-01-09 14:59:21 at clojure.java.jdbc$get_driver_connection.invoke(jdbc.clj:250)
2025-01-09 14:59:21 at clojure.java.jdbc$get_connection.invokeStatic(jdbc.clj:411)
2025-01-09 14:59:21 at clojure.java.jdbc$get_connection.invoke(jdbc.clj:274)
2025-01-09 14:59:21 at clojure.java.jdbc$db_query_with_resultset_STAR_.invokeStatic(jdbc.clj:1111)
2025-01-09 14:59:21 at clojure.java.jdbc$db_query_with_resultset_STAR_.invoke(jdbc.clj:1093)
2025-01-09 14:59:21 at clojure.java.jdbc$query.invokeStatic(jdbc.clj:1182)
2025-01-09 14:59:21 at clojure.java.jdbc$query.invoke(jdbc.clj:1144)
2025-01-09 14:59:21 at clojure.java.jdbc$query.invokeStatic(jdbc.clj:1160)
2025-01-09 14:59:21 at clojure.java.jdbc$query.invoke(jdbc.clj:1144)
2025-01-09 14:59:21 at metabase.driver.sql_jdbc.connection$can_connect_with_spec_QMARK_.invokeStatic(connection.clj:389)
2025-01-09 14:59:21 at metabase.driver.sql_jdbc.connection$can_connect_with_spec_QMARK_.invoke(connection.clj:386)
2025-01-09 14:59:21 at metabase.driver.sql_jdbc.connection$can_connect_QMARK_$fn__87312.invoke(connection.clj:398)
2025-01-09 14:59:21 at metabase.driver.sql_jdbc.connection$do_with_connection_spec_for_testing_connection$fn__87294.invoke(connection.clj:374)
2025-01-09 14:59:21 at metabase.util.ssh$do_with_ssh_tunnel.invokeStatic(ssh.clj:165)
2025-01-09 14:59:21 at metabase.util.ssh$do_with_ssh_tunnel.invoke(ssh.clj:154)
2025-01-09 14:59:21 at metabase.driver.sql_jdbc.connection$do_with_connection_spec_for_testing_connection.invokeStatic(connection.clj:369)
2025-01-09 14:59:21 at metabase.driver.sql_jdbc.connection$do_with_connection_spec_for_testing_connection.invoke(connection.clj:365)
2025-01-09 14:59:21 at metabase.driver.sql_jdbc.connection$can_connect_QMARK_.invokeStatic(connection.clj:397)
2025-01-09 14:59:21 at metabase.driver.sql_jdbc.connection$can_connect_QMARK_.invoke(connection.clj:393)
2025-01-09 14:59:21 at metabase.driver.sql_jdbc$fn__115759.invokeStatic(sql_jdbc.clj:50)
2025-01-09 14:59:21 at metabase.driver.sql_jdbc$fn__115759.invoke(sql_jdbc.clj:48)
2025-01-09 14:59:21 at clojure.lang.MultiFn.invoke(MultiFn.java:234)
2025-01-09 14:59:21 at metabase.driver.util$can_connect_with_details_QMARK_$fn__59834.invoke(util.clj:173)
2025-01-09 14:59:21 at clojure.core$binding_conveyor_fn$fn__5842.invoke(core.clj:2047)
2025-01-09 14:59:21 at clojure.lang.AFn.call(AFn.java:18)
2025-01-09 14:59:21 at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
2025-01-09 14:59:21 at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
2025-01-09 14:59:21 at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
2025-01-09 14:59:21 … 1 more
2025-01-09 14:59:21 Caused by: cdjd.com.dremio.exec.rpc.RpcException: HANDSHAKE_COMMUNICATION : [USER]: Channel closed null ↔ null (user client)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.client.DremioClient$FutureHandler.connectionFailed(DremioClient.java:825)
2025-01-09 14:59:21 at cdjd.com.dremio.sabot.rpc.user.QueryResultHandler$ChannelClosedHandler.connectionFailed(QueryResultHandler.java:387)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.rpc.BasicClient$ConnectionMultiListener$HandshakeSendListener.failed(BasicClient.java:401)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.rpc.RequestIdMap$RpcListener.setException(RequestIdMap.java:196)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.rpc.RequestIdMap$SetExceptionProcedure.apply(RequestIdMap.java:118)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.rpc.RequestIdMap$SetExceptionProcedure.apply(RequestIdMap.java:108)
2025-01-09 14:59:21 at cdjd.com.carrotsearch.hppc.IntObjectHashMap.forEach(IntObjectHashMap.java:692)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.rpc.RequestIdMap.doNotify(RequestIdMap.java:104)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.rpc.RequestIdMap.channelClosed(RequestIdMap.java:71)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.rpc.RemoteConnection.channelClosed(RemoteConnection.java:208)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.rpc.RpcBus$ChannelClosedHandler.operationComplete(RpcBus.java:216)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.rpc.RpcBus$ChannelClosedHandler.operationComplete(RpcBus.java:202)
2025-01-09 14:59:21 at cdjd.io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:578)
2025-01-09 14:59:21 at cdjd.io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:552)
2025-01-09 14:59:21 at cdjd.io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:491)
2025-01-09 14:59:21 at cdjd.io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:616)
2025-01-09 14:59:21 at cdjd.io.netty.util.concurrent.DefaultPromise.setSuccess0(DefaultPromise.java:605)
2025-01-09 14:59:21 at cdjd.io.netty.util.concurrent.DefaultPromise.trySuccess(DefaultPromise.java:104)
2025-01-09 14:59:21 at cdjd.io.netty.channel.DefaultChannelPromise.trySuccess(DefaultChannelPromise.java:84)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannel$CloseFuture.setClosed(AbstractChannel.java:1182)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannel$AbstractUnsafe.doClose0(AbstractChannel.java:773)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:749)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannel$AbstractUnsafe.close(AbstractChannel.java:620)
2025-01-09 14:59:21 at cdjd.io.netty.channel.DefaultChannelPipeline$HeadContext.close(DefaultChannelPipeline.java:1352)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannelHandlerContext.invokeClose(AbstractChannelHandlerContext.java:622)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:606)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannelHandlerContext.close(AbstractChannelHandlerContext.java:472)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.rpc.RpcExceptionHandler.exceptionCaught(RpcExceptionHandler.java:37)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:273)
2025-01-09 14:59:21 at cdjd.io.netty.channel.DefaultChannelPipeline$HeadContext.exceptionCaught(DefaultChannelPipeline.java:1377)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)
2025-01-09 14:59:21 at cdjd.io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)
2025-01-09 14:59:21 at cdjd.io.netty.channel.DefaultChannelPipeline.fireExceptionCaught(DefaultChannelPipeline.java:907)
2025-01-09 14:59:21 at cdjd.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.handleReadException(AbstractNioByteChannel.java:125)
2025-01-09 14:59:21 at cdjd.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:177)
2025-01-09 14:59:21 at cdjd.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:719)
2025-01-09 14:59:21 at cdjd.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:655)
2025-01-09 14:59:21 at cdjd.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:581)
2025-01-09 14:59:21 at cdjd.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493)
2025-01-09 14:59:21 at cdjd.io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
2025-01-09 14:59:21 at cdjd.io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
2025-01-09 14:59:21 … 1 more
2025-01-09 14:59:21 Caused by: cdjd.com.dremio.exec.rpc.ChannelClosedException: [USER]: Channel closed null ↔ null (user client)
2025-01-09 14:59:21 at cdjd.com.dremio.exec.rpc.RpcBus$ChannelClosedHandler.operationComplete(RpcBus.java:214)
2025-01-09 14:59:21 … 33 more
2025-01-09 14:59:21 2025-01-09 13:59:21,831 DEBUG middleware.log :: POST /api/database 400 243ms (1 DB calls) {:metabase-user-id 1}
2025-01-09 14:59:21 {:message
2025-01-09 14:59:21 “Failure in connecting to Dremio: cdjd.com.dremio.exec.rpc.RpcException: HANDSHAKE_COMMUNICATION : [USER]: Channel closed null ↔ null (user client)”}
@vinaybhai Seems like some property names in Metabase config are not the right one. Any chance you can send screenshot where you have defined the Dremio host, port etc?
Something wrong with the part below
2025-01-09 14:57:21 User Properties:
2025-01-09 14:57:21 port=31010
2025-01-09 14:57:21 direct=dremio:31010
2025-01-09 14:57:21 host=dremio
2025-01-09 14:57:21 loginTimeout=10
2025-01-09 14:57:21 sendTimeAsDatetime=false
2025-01-09 14:57:21 type=dremio
2025-01-09 14:57:21 user=vinaybhai
Are you sure that your host name is “dremio”?
If above information is correct, your jdbc should look like
jdbc:dremio:direct=dremio:31010
Which looks weirds, maybe it’s because you’re using Docker, so it just assign “dremio” dns to the correspoding container IP