Open bralbral opened 3 years ago
UPD : problem in boolean fields.
Query select Origin, FlightNum, DistanceMiles, FlightTimeMin, OriginWeather, dayOfWeek, AvgTicketPrice, Carrier, FlightDelayMin, OriginRegion, DestAirportID, FlightDelayType, timestamp, Dest, FlightTimeHour, DistanceKilometers, OriginCityName, DestWeather, OriginCountry, DestCountry, DestRegion, OriginAirportID, DestCityName from jdbc('jdbc:elasticsearch://https://192.168.0.103:9200/?trustSelfSigned=true&hostnameVerification=false&auth=basic&user=admin&password=admin&requestCompression=true','kibana_sample_data_flights') limit 1
works like a charm if delete boolean fields.
Thanks for letting me know. This repo is deprecated as the code has been merged into official repo. I'm working on a new release targeting Dec and I will try to fix the issue there.
Hello!
Thanks for the library! I successfully connected to the MSSQL server but problems appeared with elasticsearch.
I tried select from elasticsearch using your datasource bridge.
I added 2 lines in your Dockerfile:
ELASTICSEARCH_OPENDISTRO_DRIVER_VERSION=1.11.0.0
as environ variable and$MAVEN_REPO_URL/com/amazon/opendistroforelasticsearch/client/opendistro-sql-jdbc/$ELASTICSEARCH_OPENDISTRO_DRIVER_VERSION/opendistro-sql-jdbc-$ELASTICSEARCH_OPENDISTRO_DRIVER_VERSION.jar \
in install line.After i executed :
select * from jdbc('jdbc:elasticsearch://https://192.168.0.103:9200/?trustSelfSigned=true&hostnameVerification=false&auth=basic&user=admin&password=admin&requestCompression=true','kibana_sample_data_flights')
and it gave me error:
jdbc-bridge | 2020-11-07 16:11:49.049 [vert.x-eventloop-thread-0] [INFO ] {DataSourceBridgeVerticle:205} - Raw query: jdbc-bridge | kibana_sample_data_flights jdbc-bridge | 2020-11-07 16:11:49.049 [vert.x-eventloop-thread-0] [WARN ] {ClickHouseJdbcDataSource:154} - Failed call setClientInfo due to Client info is not supported. jdbc-bridge | 2020-11-07 16:11:49.049 [vert.x-eventloop-thread-0] [WARN ] {ClickHouseJdbcDataSource:154} - Failed call setClientInfo due to Client info is not supported. jdbc-bridge | 2020-11-07 16:11:49.049 [vert.x-eventloop-thread-0] [WARN ] {ClickHouseJdbcDataSource:572} - Identifier quote string cannot be empty string, had to change it to default jdbc-bridge | 2020-11-07 16:11:49.049 [vert.x-eventloop-thread-0] [WARN ] {ClickHouseJdbcDataSource:154} - Failed call setClientInfo due to Client info is not supported. jdbc-bridge | 2020-11-07 16:11:49.049 [vert.x-eventloop-thread-0] [WARN ] {ClickHouseJdbcDataSource:572} - Identifier quote string cannot be empty string, had to change it to default jdbc-bridge | 2020-11-07 16:11:49.049 [vert.x-worker-thread-15] [INFO ] {ClickHouseJdbcDataSource:582} - Executing SQL: jdbc-bridge | SELECT
Origin,
FlightNum,
FlightDelay,
DistanceMiles,
FlightTimeMin,
OriginWeather,
dayOfWeek,
AvgTicketPrice,
Carrier,
FlightDelayMin,
OriginRegion,
DestAirportID,
FlightDelayType,
timestamp,
Dest,
FlightTimeHour,
Cancelled,
DistanceKilometers,
OriginCityName,
DestWeather,
OriginCountry,
DestCountry,
DestRegion,
OriginAirportID,
DestCityNameFROM
kibana_sample_data_flightsjdbc-bridge | 2020-11-07 16:11:49.049 [vert.x-worker-thread-15] [WARN ] {ClickHouseJdbcDataSource:154} - Failed call setClientInfo due to Client info is not supported. jdbc-bridge | 2020-11-07 16:11:49.049 [vert.x-eventloop-thread-0] [ERROR] {DataSourceBridgeVerticle:192} - Failed to respond jdbc-bridge | java.lang.IllegalStateException: Failed to execute SQL jdbc-bridge | at com.github.clickhouse.bridge.jdbc.ClickHouseJdbcDataSource.executeQuery(ClickHouseJdbcDataSource.java:599) jdbc-bridge | at com.github.clickhouse.bridge.DataSourceBridgeVerticle.lambda$handleQuery$7(DataSourceBridgeVerticle.java:325) jdbc-bridge | at com.github.clickhouse.bridge.DataSourceBridgeVerticle$$Lambda$133/00000000A4BE8AE0.handle(Unknown Source) jdbc-bridge | at io.vertx.core.impl.ContextImpl.lambda$executeBlocking$2(ContextImpl.java:316) jdbc-bridge | at io.vertx.core.impl.ContextImpl$$Lambda$30/00000000A4265CC0.run(Unknown Source) jdbc-bridge | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) jdbc-bridge | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) jdbc-bridge | at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) jdbc-bridge | at java.lang.Thread.run(Thread.java:821) jdbc-bridge | Caused by: java.sql.SQLDataException: Can not convert object 'false' of type 'java.lang.Boolean' to type 'java.lang.Integer' jdbc-bridge | at com.amazon.opendistroforelasticsearch.jdbc.types.TypeConverter.objectConversionException(TypeConverter.java:48) jdbc-bridge | at com.amazon.opendistroforelasticsearch.jdbc.types.BaseTypeConverter.convert(BaseTypeConverter.java:63) jdbc-bridge | at com.amazon.opendistroforelasticsearch.jdbc.ResultSetImpl.getObjectX(ResultSetImpl.java:589) jdbc-bridge | at com.amazon.opendistroforelasticsearch.jdbc.ResultSetImpl.getObjectX(ResultSetImpl.java:583) jdbc-bridge | at com.amazon.opendistroforelasticsearch.jdbc.ResultSetImpl.getIntX(ResultSetImpl.java:265) jdbc-bridge | at com.amazon.opendistroforelasticsearch.jdbc.ResultSetImpl.getInt(ResultSetImpl.java:259) jdbc-bridge | at com.github.clickhouse.bridge.jdbc.ClickHouseJdbcDataSource.stream(ClickHouseJdbcDataSource.java:420) jdbc-bridge | at com.github.clickhouse.bridge.jdbc.ClickHouseJdbcDataSource.executeQuery(ClickHouseJdbcDataSource.java:588) jdbc-bridge | ... 8 more
As I understand it, the problem is somewhere in your implementation or implementation of jdbc function in clickhouse.
Best regards!