H开发者_StackOverflowow would one know if there is a wait in WebLogic connection pool and what is the default wait timeout and what error will weblogic throw in the event of such?
There are two ways to see if there are waiters for a JDBC Connection Pool:
1) The Admin Console. When you select 'Data Sources' there is a 'Monitoring' tab. Select this tab. Next, you click on 'Customize this table'. You can then add columns to the table. There are columns for 'Waiting for Connection...' for the Current Waiters, The Highest number that waited, among others. There is also one you can select called 'Wait Seconds High Count' which will tell you the maximum amount of time that any thread has waited for a connection.
2) JMX - Everything you do in the Admin Console is directly linked to a JMX MBean. The MBean for this would be under the ServerRuntime and the bean is JDBCConnectionPoolRuntimeMBean instance for the connection pool you are interested in. You can use a JMX client to monitor this, or the WLDF framework if you wanted to send an email, JMS message, etc.
The default timeout for a thread wishing to reserve a connection is 25 seconds. You can change this setting in the 'Connection Pool' tab of the Configuration of the Data Source.
As for the exceptions, you can see them here: http://download.oracle.com/docs/cd/E12840_01/wls/docs103/javadocs/weblogic/jdbc/extensions/package-summary.html. It depends on your configuration. It would most likely be PoolLimitSQLException but may be ConnectionUnavailableSQLException.
精彩评论