PGPoolingDataSource不支持默认自动提交

时间:2016-03-19 09:25:49

标签: postgresql jdbc connection-pooling

记录了使用带有getConnection函数的数据源 https://jdbc.postgresql.org/documentation/94/ds-ds.html

当数据源禁用自动提交时,我们有

ds.isDefaultAutoCommit

res0:Boolean = false

获得连接:

val conn = ds.getConnection

启用自动提交:

conn.getAutoCommit

res1:Boolean = true

查看代码,我们看到getConnection使用父类函数而不更改提交模式 https://github.com/pgjdbc/pgjdbc/blob/master/pgjdbc/src/main/java/org/postgresql/ds/PGConnectionPoolDataSource.java

这只是实施异常/限制还是还有其他一些推理?

1 个答案:

答案 0 :(得分:1)

它看起来像一个bug。类PGPooledConnection(池中连接的句柄)在其构造函数中采用布尔参数autoCommit,但它不对它做任何事情(比如在处理之前重置自动提交状态)逻辑连接。)

你应该在他们的github上创建一个问题。