【发布时间】:2021-06-13 11:51:39
【问题描述】:
我经常使用 WSO2 Ei 6.1.1 在 WSO2 DSS 中遇到类似 "com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed" 之类的异常。
例外:
<soapenv:Fault xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope" xmlns:axis2ns1244="http://ws.wso2.org/dataservice">
<soapenv:Code>
<soapenv:Value>axis2ns1244:DATABASE_ERROR</soapenv:Value>
</soapenv:Code>
<soapenv:Reason>
<soapenv:Text xml:lang="en-US">DS Code: DATABASE_ERROR Nested Exception:- javax.xml.stream.XMLStreamException: DS Fault Message: Error in 'SQLQuery.processPreNormalQuery': DS Fault Message: Error in 'createProcessedPreparedStatement' DS Code: UNKNOWN_ERROR Nested Exception:- com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed. DS Code: DATABASE_ERROR Source Data Service:- Name: AR_DropDown_NAC_Merge Location: /AR_DropDown_NAC_Merge.dbs Description: N/A Default Namespace: http://ws.wso2.org/dataservice Current Request Name: AR_Salesperson_DropDown_appRevenue_Oper Current Params: {Salesperson_Query=25} Nested Exception:- DS Fault Message: Error in 'createProcessedPreparedStatement' DS Code: UNKNOWN_ERROR Nested Exception:- com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after connection closed. </soapenv:Text>
</soapenv:Reason>
<soapenv:Detail>
DSS 配置:
<config enableOData="false" id="DropDown_NAC_Merge_Datasource">
<property name="driverClassName">com.mysql.jdbc.Driver</property>
<property name="url">jdbc:mysql://host_name:3306/db_name</property>
<property name="username">user_name</property>
<property name="password">password</property>
<property name="maxActive">55</property>
<property name="minIdle">1</property>
</config>
我尝试更改 maxActive=55 和 minIdle=1。在 DSS 中启用这些配置级别更改时,它工作正常。但一段时间后(一天或两天)再次面临同样的问题。我可以为此获得任何永久解决方案吗?
注意:mysql 数据库 max_connections 几乎没有达到其限制(150 个连接中使用了 5 个)
【问题讨论】:
标签: mysql wso2 wso2esb wso2dss wso2ei