EAP 6 にデータソースの idle-timeout-minutes プロパティを設定する
Environment
- Red Hat JBoss Enterprise Application Platform (EAP) 6
Issue
- データソースプロパティ
idle-timeout-minutes
はどのように設定しますか? idle-timeout-minutes
プロパティを追加または設定することができません。- 負荷が急に高くなると ActiveCount が増えます。しばらくすると、InUseCount が減っても ActiveCount は減りません。これは、アイドル状態の接続が接続プールから解放されないことを示しています。データベースリソースの観点から、このような接続は解放したいです。
Resolution
以下のように timeout
要素に idle-timeout-minutes
属性を設定します。
...
<security>
...
</security>
<validation>
...
</validation>
<timeout>
<!-- specify a value appropriate for system constraints/desired behavior -->
<idle-timeout-minutes>5</idle-timeout-minutes>
</timeout>
...
参照
- How does idle-timeout-minutes work in a datasource?
- Default idle-timeout-minutes setting
idle-timeout-minutes
の定義と関連するタイムアウトパラメーターの詳細は、Administration and Configuration Guide (table 6.10) を参照してください。<JBOSS_HOME>/docs/schema
に定義したidle-timeout-minutes
(and related parameters) も確認してください。jboss-as-datasources_1_0.xsd
jboss-as-datasources_1_1.xsd
jboss-as-datasources_1_2.xsd
jboss-as-resource-adapters_1_0.xsd
jboss-as-resource-adapters_1_1.xsd
- New datasources have idle-timeout-minutes set to 0 in EAP 6
Root Cause
- データソース設定の
timeout
要素にidle-timeout-minutes
プロパティが設定されていません。
Diagnostic Steps
- サーバーログで以下の ERROR メッセージを確認します。
ERROR [org.jboss.as.server] (Controller Boot Thread) JBAS015956:Caught exception during boot: org.jboss.as.controller.persistence.ConfigurationPersistenceException:JBAS014676:Failed to parse configuration
at org.jboss.as.controller.persistence.XmlConfigurationPersister.load(XmlConfigurationPersister.java:141) [jboss-as-controller-7.3.2.Final-redhat-2.jar:7.3.2.Final-redhat-2]
at org.jboss.as.server.ServerService.boot(ServerService.java:324) [jboss-as-server-7.3.2.Final-redhat-2.jar:7.3.2.Final-redhat-2]
at org.jboss.as.controller.AbstractControllerService$1.run(AbstractControllerService.java:253) [jboss-as-controller-7.3.2.Final-redhat-2.jar:7.3.2.Final-redhat-2]
at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
Caused by: javax.xml.stream.XMLStreamException: org.jboss.as.connector.util.ParserException:IJ010061:Unexpected element: idle-timeout-minutes
at org.jboss.as.connector.subsystems.datasources.DataSourcesExtension$DataSourceSubsystemParser.readElement(DataSourcesExtension.java:582)
at org.jboss.as.connector.subsystems.datasources.DataSourcesExtension$DataSourceSubsystemParser.readElement(DataSourcesExtension.java:182)
at org.jboss.staxmapper.XMLMapperImpl.processNested(XMLMapperImpl.java:110) [staxmapper-1.1.0.Final-redhat-2.jar:1.1.0.Final-redhat-2]
at org.jboss.staxmapper.XMLExtendedStreamReaderImpl.handleAny(XMLExtendedStreamReaderImpl.java:69) [staxmapper-1.1.0.Final
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments