+-

我正在尝试使用 Spring-JDBC连接到Presto,并且我正在使用Hikari CP作为数据源.
这是我的配置:
这是我的配置:
@Bean
public DataSource myDataSource() {
HikariDataSource hikariDataSource = new HikariDataSource();
hikariDataSource.setDriverClassName("com.facebook.presto.jdbc.PrestoDriver");
hikariDataSource.setJdbcUrl("xxxxxxx");
hikariDataSource.setMaximumPoolSize(10);
hikariDataSource.setMinimumIdle(5);
hikariDataSource.setIdleTimeout(10000);
hikariDataSource.setConnectionTimeout(60000);
hikariDataSource.setUsername("xxxx");
hikariDataSource.setPassword("xxxx");
hikariDataSource.setAutoCommit(false);
return hikariDataSource;
}
在服务类中自动装配数据源时,出现以下错误:
java.sql.SQLFeatureNotSupportedException: Disabling auto-commit mode not supported
at com.facebook.presto.jdbc.PrestoConnection.setAutoCommit(PrestoConnection.java:126) ~[presto-jdbc-0.163.jar:0.163]
依赖关系:对于Springboot base 1.5.10.RELEASE
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>2.7.8</version>
</dependency>
<dependency>
<groupId>com.facebook.presto</groupId>
<artifactId>presto-jdbc</artifactId>
<version>0.163</version>
</dependency>
最佳答案
您将在以下行中禁用自动提交模式:
hikariDataSource.setAutoCommit(false);
当您的Presto驱动程序不支持此操作时,将引发异常.从您的@Bean中删除setAutoCommit(false). open issue #3592中对此进行了讨论.
另一个选择是将驱动程序更新为新版本,因为在主驱动器上,自动提交为already handled in PrestoConnection.最新版本为0.197.
点击查看更多相关文章
转载注明原文:java-Presto JDBC连接池创建错误“不支持禁用自动提交模式” - 乐贴网