首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Vertica的BoneCP

使用Vertica的BoneCP
EN

Stack Overflow用户
提问于 2013-07-19 21:13:10
回答 1查看 383关注 0票数 0

我尝试使用BoneCP来合并Vertica连接,但遇到了错误

代码语言:javascript
复制
[BoneCP-pool-watch-thread-vertica pool] ERROR com.jolbox.bonecp.PoolWatchThread - Error in trying to obtain a connection. Retrying in 7000ms
java.sql.SQLException: [Vertica][JDBC](11760) Cannot call setReadOnly while Connection is in a transaction.
    at com.jolbox.bonecp.ConnectionHandle.setReadOnly(ConnectionHandle.java:1279)
    at com.jolbox.bonecp.ConnectionHandle.<init>(ConnectionHandle.java:254)
    at com.jolbox.bonecp.ConnectionHandle.<init>(ConnectionHandle.java:185)
    at com.jolbox.bonecp.PoolWatchThread.fillConnections(PoolWatchThread.java:114)
    at com.jolbox.bonecp.PoolWatchThread.run(PoolWatchThread.java:81)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)

这是我正在使用的代码

代码语言:javascript
复制
    BoneCPConfig bvcp = new BoneCPConfig();
    Class.forName("com.vertica.jdbc.Driver");
    bvcp.setPoolName("vertica pool");
    bvcp.setDefaultReadOnly(false);
    bvcp.setJdbcUrl("jdbc:vertica://vertica-server:5433/schema");
    bvcp.setUser("username");
    bvcp.setPassword("vertica-pwd");

    BoneCPDataSource bds = new BoneCPDataSource(bvcp);

    JdbcTemplate template = new JdbcTemplate(ds);

    List<Map<String, Object>> ret = template
                .queryForList("select * from table1 ");

我在Oracle和HSQL上尝试了相同的代码,它工作得很好。

这是Vertica JDBC驱动程序5.1.1和BoneCP 0.8.0-rc1提供的

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

发布于 2013-07-28 00:36:16

在我将vertica JDBC驱动程序升级到6.1.2后,这个问题得到了解决

显然,在5.1.1中,事务是在建立连接后立即启动的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17746994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档