-
Notifications
You must be signed in to change notification settings - Fork 618
Description
followed is the exception stack:
java.lang.RuntimeException: ru.yandex.clickhouse.except.ClickHouseUnknownException: ClickHouse exception, code: 1002, host: 10.17.27.195, port: 9322;
at ru.yandex.clickhouse.ClickHouseConnectionImpl.initTimeZone(ClickHouseConnectionImpl.java:97)
at ru.yandex.clickhouse.ClickHouseConnectionImpl.(ClickHouseConnectionImpl.java:78)
at ru.yandex.clickhouse.ClickHouseDriver.connect(ClickHouseDriver.java:55)
at ru.yandex.clickhouse.ClickHouseDriver.connect(ClickHouseDriver.java:47)
at ru.yandex.clickhouse.ClickHouseDriver.connect(ClickHouseDriver.java:29)
at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1596)
at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1662)
at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:932)
at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1369)
at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1365)
at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:109)
at com.bytedance.data.dp.datahub.engine.ClickHouseEngine.getConnection(ClickHouseEngine.java:59)
at com.bytedance.data.dp.datahub.engine.ClickHouseEngine.query(ClickHouseEngine.java:257)
at com.bytedance.data.dp.datahub.controller.DatahubController.QueryExecute(DatahubController.java:234)
at com.bytedance.data.dp.datahub.api.DatahubService$Processor$QueryExecute.getResult(DatahubService.java:527)
at com.bytedance.data.dp.datahub.api.DatahubService$Processor$QueryExecute.getResult(DatahubService.java:506)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:38)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
at org.apache.thrift.server.AbstractNonblockingServer$FrameBuffer.invoke(AbstractNonblockingServer.java:518)
at org.apache.thrift.server.Invocation.run(Invocation.java:18)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: ru.yandex.clickhouse.except.ClickHouseUnknownException: ClickHouse exception, code: 1002, host: 10.17.27.195, port: 9322;
at ru.yandex.clickhouse.except.ClickHouseExceptionSpecifier.getException(ClickHouseExceptionSpecifier.java:88)
at ru.yandex.clickhouse.except.ClickHouseExceptionSpecifier.specify(ClickHouseExceptionSpecifier.java:55)
at ru.yandex.clickhouse.except.ClickHouseExceptionSpecifier.specify(ClickHouseExceptionSpecifier.java:28)
at ru.yandex.clickhouse.ClickHouseStatementImpl.checkForErrorAndThrow(ClickHouseStatementImpl.java:817)
at ru.yandex.clickhouse.ClickHouseStatementImpl.getInputStream(ClickHouseStatementImpl.java:612)
at ru.yandex.clickhouse.ClickHouseStatementImpl.executeQuery(ClickHouseStatementImpl.java:114)
at ru.yandex.clickhouse.ClickHouseStatementImpl.executeQuery(ClickHouseStatementImpl.java:97)
at ru.yandex.clickhouse.ClickHouseStatementImpl.executeQuery(ClickHouseStatementImpl.java:92)
at ru.yandex.clickhouse.ClickHouseStatementImpl.executeQuery(ClickHouseStatementImpl.java:87)
at ru.yandex.clickhouse.ClickHouseConnectionImpl.initTimeZone(ClickHouseConnectionImpl.java:92)
... 22 more
Caused by: java.lang.Throwable:
at ru.yandex.clickhouse.except.ClickHouseExceptionSpecifier.specify(ClickHouseExceptionSpecifier.java:53)
... 30 more
I use connection pool to manage the connection of clickhouse, I found that sometimes it failed get connection due to init timezone error in ClickhouseConnectionImpl,
And I have test "select timezone()" sql by send http request using curl command, but I get no error. I guess the error above is not raised by clickhouse server side.
The curl command I test is below:
for i in seq 0 50; do echo "select timezone()" | time bash -c 'curl -H "cluster: aeolus_i18n" -s -w "%{http_code}" "http://aeolus_web:Xhc7xfpuQgXHabkt@10.11.49.161:9203/?query=" --data-binary @-' ;done
But the http response of ClickhouseStatementImpl HttpClient when the exception raised in clickhouse jdbc said it is a "server internal erro: 500"
I can't not figure out what is the problem, can you give any suggestionk, please~