Presto JDBC driver

Hello, I’m using presto and am trying to connect with it.
JDBC version is 0.242
presto version 0.230

I am getting an

com.facebook.presto.jdbc.internal.client.FailureInfo$FailureException: No transaction in progress

Stack trace:

Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: [2020-11-01T16:12:26,049][WARN ][r.suppressed ] [siren-node] path: /_siren/connector/datasource/hive/_validate, params: {id=hive}
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: org.elasticsearch.ElasticsearchException: Could not validate datasource [hive].
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.q.a(JdbcQueryHandler.java:316) [siren-federate-7.6.2-20.0-proguard.jar:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at org.elasticsearch.action.ActionListener$1.onFailure(ActionListener.java:71) [elasticsearch-7.6.2.jar:7.6.2]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.q.b(JdbcQueryHandler.java:193) [siren-federate-7.6.2-20.0-proguard.jar:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:633) [elasticsearch-7.6.2.jar:7.6.2]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.lang.Thread.run(Thread.java:830) [?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: Caused by: java.lang.RuntimeException: Could not get product version from JDBC metadata.
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.c.u.a(ConnectorSqlDialectFactoryImpl.java:107) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.c.u.a(ConnectorSqlDialectFactoryImpl.java:91) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.c.u.create(ConnectorSqlDialectFactoryImpl.java:27) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.provider.CalciteProviderImpl.getDialect(CalciteProviderImpl.java:137) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.provider.b.getDialect(CalciteProviderService.java:154) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.q.b(JdbcQueryHandler.java:183) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: … 4 more
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: Suppressed: io.siren.federate.core.b.p: java.sql.SQLException: Query failed (#20201101_161226_00001_bgnfr): No transaction in progress
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.t$1.a(PoolDataSource.java:152) ~[siren-federate-7.6.2-20.0-proguard.jar:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.security.AccessController.doPrivileged(AccessController.java:312) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.t$1.invoke(PoolDataSource.java:147) ~[siren-federate-7.6.2-20.0-proguard.jar:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.sun.proxy.$Proxy51.close(Unknown Source) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.q.b(JdbcQueryHandler.java:190) [siren-federate-7.6.2-20.0-proguard.jar:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:633) [elasticsearch-7.6.2.jar
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.lang.Thread.run(Thread.java:830) [?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: Caused by: java.sql.SQLException: Query failed (#20201101_161226_00001_bgnfr): No transaction in progress
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.PrestoResultSet.resultsException(PrestoResultSet.java:1841) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.PrestoResultSet.getColumns(PrestoResultSet.java:1751) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.PrestoResultSet.(PrestoResultSet.java:121) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.PrestoStatement.internalExecute(PrestoStatement.java:250) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.PrestoConnection.rollback(PrestoConnection.java:189) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:240) ~[HikariCP-2.7.3.jar:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at jdk.internal.reflect.GeneratedMethodAccessor34.invoke(Unknown Source) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.lang.reflect.Method.invoke(Method.java:567) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.t$1.a(PoolDataSource.java:149) ~[siren-federate-7.6.2-20.0-proguard.jar:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: … 8 more
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: Caused by: com.facebook.presto.jdbc.internal.client.FailureInfo$FailureException: No transaction in progress
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.execution.RollbackTask.execute(RollbackTask.java:45) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.execution.RollbackTask.execute(RollbackTask.java:31) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.execution.DataDefinitionExecution.start(DataDefinitionExecution.java:175) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.lang.Thread.run(Thread.java:748) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: Caused by: java.sql.SQLException: Error fetching version from server
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.PrestoConnection.getServerInfo(PrestoConnection.java:650) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.PrestoDatabaseMetaData.getDatabaseProductVersion(PrestoDatabaseMetaData.java:119) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.c.u.a(ConnectorSqlDialectFactoryImpl.java:105) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.c.u.a(ConnectorSqlDialectFactoryImpl.java:91) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.c.u.create(ConnectorSqlDialectFactoryImpl.java:27) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.provider.CalciteProviderImpl.getDialect(CalciteProviderImpl.java:137) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.provider.b.getDialect(CalciteProviderService.java:154) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.q.b(JdbcQueryHandler.java:183) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: … 4 more
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: Caused by: java.security.AccessControlException: access denied (“java.lang.RuntimePermission” “accessDeclaredMembers”)
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.security.AccessControlContext.checkPermission(AccessControlContext.java:472) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.security.AccessController.checkPermission(AccessController.java:1036) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.lang.SecurityManager.checkPermission(SecurityManager.java:408) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.lang.Class.checkMemberAccess(Class.java:2848) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at java.lang.Class.getDeclaredMethods(Class.java:2308) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.util.ClassUtil.getDeclaredMethods(ClassUtil.java:1085) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.util.ClassUtil.getClassMethods(ClassUtil.java:1108) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.introspect.AnnotatedMethodCollector._addMemberMethods(AnnotatedMethodCollector.java:110) ~
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.introspect.AnnotatedMethodCollector.collect(AnnotatedMethodCollector.java:47) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.introspect.AnnotatedMethodCollector.collectMethods(AnnotatedMethodCollector.java:33) ~[?:?
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.introspect.AnnotatedClass._methods(AnnotatedClass.java:365) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.introspect.AnnotatedClass.memberMethods(AnnotatedClass.java:305) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.introspect.POJOPropertiesCollector._addMethods(POJOPropertiesCollector.java:525) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.introspect.POJOPropertiesCollector.collectAll(POJOPropertiesCollector.java:309) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.introspect.POJOPropertiesCollector.getPropertyMap(POJOPropertiesCollector.java:287) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.introspect.POJOPropertiesCollector.getProperties(POJOPropertiesCollector.java:170) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.introspect.BasicBeanDescription._properties(BasicBeanDescription.java:164) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.introspect.BasicBeanDescription.findProperties(BasicBeanDescription.java:239) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.BasicDeserializerFactory._findCreatorsFromProperties(BasicDeserializerFactory.java:3
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.BasicDeserializerFactory._constructDefaultValueInstantiator(BasicDeserializerFactory
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.BasicDeserializerFactory.findValueInstantiator(BasicDeserializerFactory.java:257) ~[
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.BeanDeserializerFactory.buildBeanDeserializer(BeanDeserializerFactory.java:214) ~[?:
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.BeanDeserializerFactory.createBeanDeserializer(BeanDeserializerFactory.java:137) ~[?
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.DeserializerCache._createDeserializer2(DeserializerCache.java:411) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.DeserializerCache._createDeserializer(DeserializerCache.java:349) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.DeserializerCache._createAndCache2(DeserializerCache.java:264) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.DeserializerCache._createAndCacheValueDeserializer(DeserializerCache.java:244) ~[?:?
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.DeserializerCache.findValueDeserializer(DeserializerCache.java:142) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.DeserializationContext.findContextualValueDeserializer(DeserializationContext.java:444) ~[
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.std.ReferenceTypeDeserializer.createContextual(ReferenceTypeDeserializer.java:69) ~[
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.DeserializationContext.handlePrimaryContextualization(DeserializationContext.java:651) ~[?
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.BeanDeserializerBase.resolve(BeanDeserializerBase.java:484) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.DeserializerCache._createAndCache2(DeserializerCache.java:293) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.DeserializerCache._createAndCacheValueDeserializer(DeserializerCache.java:244) ~[?:?
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.deser.DeserializerCache.findValueDeserializer(DeserializerCache.java:142) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.DeserializationContext.findRootValueDeserializer(DeserializationContext.java:477) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.ObjectReader._prefetchRootDeserializer(ObjectReader.java:1938) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.ObjectReader.(ObjectReader.java:189) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.ObjectMapper._newReader(ObjectMapper.java:658) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.jackson.databind.ObjectMapper.readerFor(ObjectMapper.java:3518) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.com.facebook.airlift.json.JsonCodec.fromJson(JsonCodec.java:134) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.client.JsonResponse.(JsonResponse.java:67) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.internal.client.JsonResponse.execute(JsonResponse.java:144) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.QueryExecutor.getServerInfo(QueryExecutor.java:59) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.PrestoConnection.getServerInfo(PrestoConnection.java:647) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at com.facebook.presto.jdbc.PrestoDatabaseMetaData.getDatabaseProductVersion(PrestoDatabaseMetaData.java:119) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.c.u.a(ConnectorSqlDialectFactoryImpl.java:105) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.c.u.a(ConnectorSqlDialectFactoryImpl.java:91) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.c.u.create(ConnectorSqlDialectFactoryImpl.java:27) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.provider.CalciteProviderImpl.getDialect(CalciteProviderImpl.java:137) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.provider.b.getDialect(CalciteProviderService.java:154) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: at io.siren.federate.connector.i.q.b(JdbcQueryHandler.java:183) ~[?:?]
Nov 01 16:12:26 ip-172-31-87-157 elasticsearch[81192]: … 4 more

Hi ,

Presto JDBC driver is currently not officially supported.

Updated list of supported JDBC driver supported by Siren Federate is here.

We do plan to support connecting to multiple JDBC drivers and Presto in future but there is no date for it yet (You may contact us at info@siren.io to discuss further details on your requirements).

Regards
Manu