Closed gfunc closed 2 years ago
Sorry for the late response and thanks for the detailed information.
JDBC bridge uses a custom class loader by default in order to support loading driver from URL and versioning(different versions of same driver). It's probably why you ran into the issue. If you're using docker, you may disable it by setting environment variable CUSTOM_DRIVER_LOADER
to false
. Alternatively, you may refer to below code snippet to start JDBC bridge - just make sure every jar you need is specified in classpath
.
@zhicwu Thanks for your reply!
I am not using docker, but I will try to study this script.
This problem is solved by using docker with below command.
docker run -d -p 9019:9019 \
--name clickhouse-jdbc-bridge \
-v ${JDBC_DRIVER_DIR}:/app/drivers \
-v ${JDBC_DATASOURCE_DIR}:/app/config/datasources \
-v ${PWD}/clickhouse.keytab:/app/clickhouse.keytab \
-v ${PWD}/krb5.conf:/etc/krb5.conf \
-v ${PWD}/krb5Config.ini:/app/config/krb5Config.ini \
-e CUSTOM_DRIVER_LOADER=false \
-e JDBC_BRIDGE_JVM_OPTS='-Xms1024m -Xmx10240m -Djava.security.auth.login.config=/app/config/krb5Config.ini -Djava.security.krb5.conf=/etc/krb5.conf' \
clickhouse/jdbc-bridge:2.0.6
Thanks again for your help @zhicwu !
background:
I am trying to configure ClickHouse to query Impala via jdbc-bridge our Impala implementation was authenticated via Kerberos and thus require a keytab for connection
this is what I did:
change set-env.sh to this:
/etc/clickhouse-jdbc-bridge/config/datasources
:select * from jdbc('','show datasources')
is showingimpala
without a problemerror:
the connection is not working and showing below error,
judging by the error messge, it seems the JAAS configuration file is not properly read by jdbc-brdige, since it is complaining about empty principal.
I am not familiar with Java nor JVM enough to debug this error.
could anyone help? Thanks in advance!