2017-04-25 23 views
0

当我将PostegreSQL设置为主数据源进行集群化时,我遇到了问题。 有时我会看到WSO2组件中挂起的会话会锁定数据库中的对象。因为这会导致不活动的计划任务,认证问题等。PostgreSQL作为WSO2 EI和APIM + IS的数据源

请问您可以帮我配置PostgreSQL吗?我想我必须指定一些会话超时属性或其他参数。

下面,用于连接到PostgreSQL配置的一部分:

<configuration> 
    <url>jdbc:postgresql://xxx.xxx.xxx.xxx:xxxx/yyyy_db</url> 
    <username>username</username> 
    <password>password</password> 
    <driverClassName>org.postgresql.Driver</driverClassName> 
    <maxActive>50</maxActive> 
    <maxWait>60000</maxWait> 
    <testOnBorrow>true</testOnBorrow> 
    <validationInterval>30000</validationInterval> 
    <defaultAutoCommit>true</defaultAutoCommit> 
</configuration> 

此致

基里尔Levitskiy

回答

0

我找到了解决办法。 应该将'testOnBorrow'更改为false。这是无用的,因为我之前已经删除了ValidationQuery和InitValidation选项,但忘记了testOnBorrow。

数据库配置应该是这样的:

<configuration> 
    <url>jdbc:postgresql://xxx.xxx.xxx.xxx:xxxx/yyyy_db</url> 
    <username>username</username> 
    <password>password</password> 
    <driverClassName>org.postgresql.Driver</driverClassName> 
    <maxWait>60000</maxWait> 
    <testOnBorrow>false</testOnBorrow> 
    <validationInterval>30000</validationInterval> 
    <defaultAutoCommit>true</defaultAutoCommit> 
</configuration>