BEA Systems, Inc.


weblogic.management.configuration
Interface JDBCConnectionPoolMBean


public interface JDBCConnectionPoolMBean
extends DeploymentMBean

This bean defines a JDBC connection pool.

Author:
Copyright (c) 2000, 2001 by BEA Systems, Inc. All Rights Reserved.

Fields inherited from class weblogic.management.configuration.DeploymentMBean
CACHING_STUB_SVUID, DEFAULT_ORDER, MAX_ORDER, MIN_ORDER
 
Fields inherited from class weblogic.management.configuration.ConfigurationMBean
CACHING_STUB_SVUID
 
Method Summary
 java.lang.String getACLName()
          Deprecated.  
 int getCapacityIncrement()
          Increment by which the connection pool capacity is expanded.
 int getCountOfRefreshFailuresTillDisable()
          Set the number of consecutive failures to replace dead pool connections before we disable the pool.
 int getCountOfTestFailuresTillFlush()
          Get the number of consecutive failed pool connection tests before we close all the connections the pool.
 java.lang.String getDriverName()
          The full package name of the JDBC 2-tier driver class used to create the physical connections between WebLogic Server and the DBMS for this connection pool.
 boolean getEnableResourceHealthMonitoring()
          Returns true if JTA resource health monitoring is enabled for this XA connection pool.
 int getInitialCapacity()
          The number of physical database connections to create when creating the connection pool.
 int getLoginDelaySeconds()
          The number of seconds to delay before creating each physical database connection.
 int getMaxCapacity()
          Maximum number of physical database connections that this connection pool can contain.
 java.lang.String getPassword()
          Returns the database password as set with setPassword() or as a key=value pair in setProperties().
 int getPreparedStatementCacheSize()
          Returns size of the prepared statement cache.
 java.util.Properties getProperties()
          Returns the list of properties passed to the the 2-tier JDBC Driver to use when creating physical database connections.
 int getRefreshMinutes()
          The number of minutes between database connection tests.
 int getShrinkPeriodMinutes()
          Number of minutes to wait before shrinking a connection pool that has incrementally increased to meet demand.
 boolean getSupportsLocalTransaction()
          Set to true if the XA driver used to create physical database connections supports SQL without global transactions.
 boolean getTestConnectionsOnRelease()
           
 boolean getTestConnectionsOnReserve()
           
 java.lang.String getTestTableName()
          The name of the table used when testing a physical database connection.
 java.lang.String getURL()
          Returns the database URL used to create the connections in this Connection Pool.
 java.lang.String getXAPassword()
          If set, this value overrides the password in the open string.
 int getXAPreparedStatementCacheSize()
           
 int getXARetryDurationSeconds()
          Determines the duration in seconds for which the transaction manager will perform recover operations on the resource.
 int getXARetryIntervalSeconds()
          Determines the time in seconds between XA retry operations if the XARetryDurationSeconds attribute is set to a positive value.
 boolean isConnLeakProfilingEnabled()
          This property enables JDBC Connection leak profiling.
 boolean isShrinkingEnabled()
          Indicates whether or not the pool can shrink back to its InitialCapacity when it is detected that connections created during increased traffic are not being used.
 boolean isSqlStmtProfilingEnabled()
          SQL roundtrip profiling stores SQL statement text, execution time and other metrics.
 void setACLName(java.lang.String name)
          Deprecated.  
 void setCapacityIncrement(int capacity)
          Increment by which the connection pool capacity is expanded.
 void setConnLeakProfilingEnabled(boolean enable)
           
 void setCountOfRefreshFailuresTillDisable(int newVal)
          Set the number of consecutive failures to replace dead pool connections before we disable the pool.
 void setCountOfTestFailuresTillFlush(int newVal)
          Set the number of consecutive failed pool connection tests before we close all the connections the pool.
 void setDriverName(java.lang.String driverClassName)
          The full package name of the JDBC 2-tier driver class used to create the physical connections between the WebLogic Server and the DBMS for this connection pool.
 void setEnableResourceHealthMonitoring(boolean enable)
          This property applies to XA connection pools only, and is ignored for connection pools that use a non-XA driver.
 void setInitialCapacity(int capacity)
          The number of physical database connections to create when creating the connection pool.
 void setLoginDelaySeconds(int secs)
          The number of seconds to delay before creating each physical database connection.
 void setMaxCapacity(int capacity)
          Maximum number of physical database connections that this connection pool can contain.
 void setPassword(java.lang.String password)
          Password attribute passed to the 2-tier JDBC driver when creating physical database connections.
 void setPreparedStatementCacheSize(int cacheSize)
          Sets size of the prepared statement cache.
 void setProperties(java.util.Properties props)
          The list of properties passed to the the 2-tier JDBC Driver to use when creating physical database connections.
 void setRefreshMinutes(int minutes)
          The number of minutes between database connection tests.
 void setShrinkingEnabled(boolean enable)
          Indicates whether or not the pool can shrink back to its InitialCapacity when it is detected that connections created during increased traffic are not being used.
 void setShrinkPeriodMinutes(int minutes)
          Number of minutes to wait before shrinking a connection pool that has incrementally increased to meet demand.
 void setSqlStmtProfilingEnabled(boolean enable)
          This property enables running of JDBC SQL roundtrip profiling.
 void setSupportsLocalTransaction(boolean support)
          This property applies to XA connection pools only, and is ignored for non-XA drivers.
 void setTestConnectionsOnRelease(boolean enable)
          When set to true, WebLogic Server tests a connection before returning it to the connection pool.
 void setTestConnectionsOnReserve(boolean enable)
          When set to true, WebLogic Server tests a connection before giving it to the client.
 void setTestTableName(java.lang.String table)
          The name of the table used when testing a physical database connection.
 void setURL(java.lang.String url)
          The database URL used to create the connections in this connection pool.
 void setXAPassword(java.lang.String password)
          If set, this value overrides the password in the open string.
 void setXAPreparedStatementCacheSize(int size)
          Sets the maximum number of prepared statements cached by this particular XA connection pool.
 void setXARetryDurationSeconds(int duration)
          Determines the duration in seconds for which the transaction manager will perform recover operations on the resource.
 void setXARetryIntervalSeconds(int interval)
          Determines the time in seconds between XA retry operations if the XARetryDurationSeconds attribute is set to a positive value.
 
Methods inherited from interface weblogic.management.configuration.DeploymentMBean
addTarget, getDeploymentOrder, getTargets, removeTarget, setDeploymentOrder, setTargets
 
Methods inherited from interface weblogic.management.configuration.ConfigurationMBean
addLinkMbeanAttribute, getNotes, isPersistenceEnabled, setNotes
 
Methods inherited from interface weblogic.management.WebLogicMBean
getMBeanInfo, getName, getObjectName, getParent, getType, isCachingDisabled, isRegistered, setName, setParent
 
Methods inherited from interface javax.management.DynamicMBean
getAttribute, getAttributes, invoke, setAttribute, setAttributes
 
Methods inherited from interface javax.management.MBeanRegistration
postDeregister, postRegister, preDeregister, preRegister
 
Methods inherited from interface javax.management.NotificationBroadcaster
addNotificationListener, getNotificationInfo, removeNotificationListener
 

Method Detail

isConnLeakProfilingEnabled

public boolean isConnLeakProfilingEnabled()
This property enables JDBC Connection leak profiling.

A Connection leak occurs when a connection from the pool is not closed explicitly by calling close() on that connection.

When connection leak profiling is active, the pool will store the stack trace at the time the Connection object is allocated from the pool and given to the client. When a connection leak is detected (when the Connection object is garbage collected), this stack trace is reported.

This feature uses extra resources and will likely slowdown Connection Pool operations, so it is not recommended for production use.

A dynamic MBean attribute
Default Value: false
Secure Value:  false

setConnLeakProfilingEnabled

public void setConnLeakProfilingEnabled(boolean enable)
                                 throws javax.management.InvalidAttributeValueException


isSqlStmtProfilingEnabled

public boolean isSqlStmtProfilingEnabled()
SQL roundtrip profiling stores SQL statement text, execution time and other metrics.

A dynamic MBean attribute
Default Value: false
Returns:
true if JDBC SQL roundtrip profiling enabled

setSqlStmtProfilingEnabled

public void setSqlStmtProfilingEnabled(boolean enable)
                                throws javax.management.InvalidAttributeValueException
This property enables running of JDBC SQL roundtrip profiling. When enabled, SQL statement text, execution time and other metrics are stored externally for further analysis.

This is a resource-consuming feature, so it's recommended that it's turned off on a production server.

A dynamic MBean attribute

getACLName

public java.lang.String getACLName()
Deprecated.  
Returns the ACL used to control access to this Connection Pool.


setACLName

public void setACLName(java.lang.String name)
                throws javax.management.InvalidAttributeValueException
Deprecated.  
The access control list (ACL) used to control access to this connection pool. Permissions available to this ACL are reserve and admin.

Reserve permission allows users to get logical connections from this connection pool.

Admin permission allows all other operations on this connection pool, including: reset, shrink, shutdown, disable, and enable.

Lack of an ACL allows any user open access (provided that the user passes other WLS security controls).

Secure Value:  null

getURL

public java.lang.String getURL()
Returns the database URL used to create the connections in this Connection Pool.

Old Property: weblogic.jdbc.connectionPool.url

setURL

public void setURL(java.lang.String url)
            throws javax.management.InvalidAttributeValueException
The database URL used to create the connections in this connection pool. The URL is passed to the JDBC driver to create the physical database connections.


getDriverName

public java.lang.String getDriverName()
The full package name of the JDBC 2-tier driver class used to create the physical connections between WebLogic Server and the DBMS for this connection pool. For example:

com.pointbase.jdbc.jdbcUniversalDriver

It must be the name of a class that implements the java.sql.Driver interface. Check the documentation for the JDBC driver to find the full pathname.

Old Property: weblogic.jdbc.connectionPool.driver

setDriverName

public void setDriverName(java.lang.String driverClassName)
                   throws javax.management.InvalidAttributeValueException
The full package name of the JDBC 2-tier driver class used to create the physical connections between the WebLogic Server and the DBMS for this connection pool. For example:

com.pointbase.jdbc.jdbcUniversalDriver

It must be the name of a class that implements the java.sql.Driver interface. Check the documentation for the JDBC driver to find the full pathname.


getProperties

public java.util.Properties getProperties()
Returns the list of properties passed to the the 2-tier JDBC Driver to use when creating physical database connections.

Old Property: weblogic.jdbc.connectionPool.props

setProperties

public void setProperties(java.util.Properties props)
                   throws javax.management.InvalidAttributeValueException
The list of properties passed to the the 2-tier JDBC Driver to use when creating physical database connections. The list consists of attribute=value tags, separated by semi-colons. For example user=scott;server=myDB.

Note: BEA recommends that you use setPassword(String) to specify the database password so that the value is stored in an encrypted form in config.xml and when displayed on the administration console.


getLoginDelaySeconds

public int getLoginDelaySeconds()
The number of seconds to delay before creating each physical database connection. This delay takes place both during initial pool creation and during the lifetime of the pool whenever a physical database connection is created.

Default Value: 0
Old Property: weblogic.jdbc.connectionPool.loginDelaySecs

setLoginDelaySeconds

public void setLoginDelaySeconds(int secs)
                          throws javax.management.InvalidAttributeValueException
The number of seconds to delay before creating each physical database connection. Some database servers cannot handle multiple requests for connections in rapid succession. This property allows you to specify a small delay for each database connection. This delay takes place both during initial pool creation and whenever a physical database connection is created.

Default Value: 0
Legal Minimum Value: 0
Legal Maximum Value: java.lang.Integer.MAX_VALUE
Secure Value:  0

getInitialCapacity

public int getInitialCapacity()
The number of physical database connections to create when creating the connection pool.

Default Value: 1
Old Property: weblogic.jdbc.connectionPool.initialCapacity

setInitialCapacity

public void setInitialCapacity(int capacity)
                        throws javax.management.InvalidAttributeValueException
The number of physical database connections to create when creating the connection pool. If unable to create this number of connections, creation of this connection pool will fail. This is also the minimum number of physical connections the connection pool will keep available.

Default Value: 1
Legal Minimum Value: 0
Legal Maximum Value: java.lang.Integer.MAX_VALUE

getMaxCapacity

public int getMaxCapacity()
Maximum number of physical database connections that this connection pool can contain. Different JDBC Drivers and database servers may limit the number of possible physical connections.

Default Value: 15
Old Property: weblogic.jdbc.connectionPool.maxCapacity

setMaxCapacity

public void setMaxCapacity(int capacity)
                    throws javax.management.InvalidAttributeValueException
Maximum number of physical database connections that this connection pool can contain. Different JDBC Drivers and database servers may limit the number of possible physical connections.

Default Value: 15
Legal Minimum Value: 1
Legal Maximum Value: java.lang.Integer.MAX_VALUE

getCapacityIncrement

public int getCapacityIncrement()
Increment by which the connection pool capacity is expanded. When there are no more available physical connections to service requests, the connection pool will create this number of additional physical database connections and add them to the connection pool. The connection pool will ensure that it does not exceed the maximum number of physical connections as set by MaxCapacity.

Default Value: 1
Old Property: weblogic.jdbc.connectionPool.capacityIncrement

setCapacityIncrement

public void setCapacityIncrement(int capacity)
                          throws javax.management.InvalidAttributeValueException
Increment by which the connection pool capacity is expanded. When there are no more available physical connections to service requests, the connection pool will create this number of additional physical database connections and add them to the connection pool. The connection pool will ensure that it does not exceed the maximum number of physical connections as set by MaxCapacity.

Default Value: 1
Legal Minimum Value: 1
Legal Maximum Value: java.lang.Integer.MAX_VALUE

isShrinkingEnabled

public boolean isShrinkingEnabled()
Indicates whether or not the pool can shrink back to its InitialCapacity when it is detected that connections created during increased traffic are not being used.

Default Value: true
Old Property: weblogic.jdbc.connectionPool.allowShrinking
Secure Value:  true

setShrinkingEnabled

public void setShrinkingEnabled(boolean enable)
                         throws javax.management.InvalidAttributeValueException
Indicates whether or not the pool can shrink back to its InitialCapacity when it is detected that connections created during increased traffic are not being used.

Secure Value:  true

getShrinkPeriodMinutes

public int getShrinkPeriodMinutes()
Number of minutes to wait before shrinking a connection pool that has incrementally increased to meet demand. ShrinkingEnabled must be set to true for a connection pool to shrink.

Default Value: 15
Old Property: weblogic.jdbc.connectionPool.shrinkPeriodMins

setShrinkPeriodMinutes

public void setShrinkPeriodMinutes(int minutes)
                            throws javax.management.InvalidAttributeValueException
Number of minutes to wait before shrinking a connection pool that has incrementally increased to meet demand. ShrinkingEnabled must be set to true for a connection pool to shrink.

Default Value: 15
Legal Minimum Value: 1
Legal Maximum Value: java.lang.Integer.MAX_VALUE
Secure Value:  15

getRefreshMinutes

public int getRefreshMinutes()
The number of minutes between database connection tests. After every RefreshMinutes interval, unused database connections are tested using TestTableName. Connections that do not pass the test will be closed and reopened to re-establish a valid physical database connection. If TestTableName is not set, the test will not be performed.

Default Value: 0
Old Property: weblogic.jdbc.connectionPool.refreshTestMinutes

setRefreshMinutes

public void setRefreshMinutes(int minutes)
                       throws javax.management.InvalidAttributeValueException
The number of minutes between database connection tests. After every RefreshMinutes interval, unused database connections are tested using TestTableName. Connections that do not pass the test will be closed and reopened to re-establish a valid physical database connection. If TestTableName is not set, the test will not be performed.

Default Value: 0
Legal Minimum Value: 0
Legal Maximum Value: 35791394

getTestTableName

public java.lang.String getTestTableName()
The name of the table used when testing a physical database connection. The default SQL code used to test a connection is

"select count(*) from TestTableName"

The TestTableName must exist and be accessible to the database user for the connection. Most database servers optimize this SQL to avoid a table scan, but it is still a good idea to set TestTableName to the name of a table that is known to have few rows, or even no rows.

If TestTableName begins with "SQL ", then the rest of the string following that leading token will be taken as a literal sql statement that will be used to test a connection.

Old Property: weblogic.jdbc.connectionPool.testTable

setTestTableName

public void setTestTableName(java.lang.String table)
                      throws javax.management.InvalidAttributeValueException
The name of the table used when testing a physical database connection. The default SQL code used to test a connection is

"select count(*) from TestTableName"

The TestTableName must exist and be accessible to the database user for the connection. Most database servers optimize this SQL to avoid a table scan, but it is still a good idea to set TestTableName to the name of a table that is known to have few rows, or even no rows.

If TestTableName begins with "SQL ", then the rest of the string following that leading token will be taken as a literal sql statement that will be used to test a connection.


getTestConnectionsOnReserve

public boolean getTestConnectionsOnReserve()


setTestConnectionsOnReserve

public void setTestConnectionsOnReserve(boolean enable)
                                 throws javax.management.InvalidAttributeValueException
When set to true, WebLogic Server tests a connection before giving it to the client. The test adds a small delay in serving the client's request for a connection from the pool, but ensures that the client receives a working connection (assuming that the DBMS is available and accessible).

Default Value: false
Old Property: weblogic.jdbc.connectionPool.testConnsOnReserve
Secure Value:  false

getTestConnectionsOnRelease

public boolean getTestConnectionsOnRelease()


setTestConnectionsOnRelease

public void setTestConnectionsOnRelease(boolean enable)
                                 throws javax.management.InvalidAttributeValueException
When set to true, WebLogic Server tests a connection before returning it to the connection pool. If all connections in the pool are already in use and a client is waiting for a connection, the client's wait will be slightly longer while the connection is tested.

Default Value: false
Old Property: weblogic.jdbc.connectionPool.testConnsOnRelease
Secure Value:  false

getPassword

public java.lang.String getPassword()
Returns the database password as set with setPassword() or as a key=value pair in setProperties().


setPassword

public void setPassword(java.lang.String password)
                 throws javax.management.InvalidAttributeValueException
Password attribute passed to the 2-tier JDBC driver when creating physical database connections. If set, this value overrides any password defined in Properties. The value is stored in an encrypted form in the config.xml file and when displayed on the administration console. Use this method to avoid storing passwords in clear text in config.xml.


getXAPassword

public java.lang.String getXAPassword()
If set, this value overrides the password in the open string. This password is used to create physical XA database connections. The value is stored in an encrypted form in the config.xml file. This value overrides any password value in the open string defined in Properties.


setXAPassword

public void setXAPassword(java.lang.String password)
                   throws javax.management.InvalidAttributeValueException
If set, this value overrides the password in the open string. This password is used to create physical XA database connections. The value is stored in an encrypted form in the config.xml file. This value overrides any password value in the open string defined in Properties.


getSupportsLocalTransaction

public boolean getSupportsLocalTransaction()
Set to true if the XA driver used to create physical database connections supports SQL without global transactions. Set to false (the default) if the XA driver does not support SQL without global transactions.

This property applies to connection pools that use an XA driver only, and is ignored for connection pools that use non-XA drivers.

Default Value: false
Returns:
true if XA driver supports SQL with no global transaction.

setSupportsLocalTransaction

public void setSupportsLocalTransaction(boolean support)
                                 throws javax.management.InvalidAttributeValueException
This property applies to XA connection pools only, and is ignored for non-XA drivers. Whether the XA driver supports SQL with no global transaction.


getXAPreparedStatementCacheSize

public int getXAPreparedStatementCacheSize()

Default Value: weblogic.management.configuration.JDBCLegalHelper.DEFAULT_CACHE_STATEMENTS_SIZE
Returns:
the maximum number of prepared statements cached by this particular XA connection pool. If the value is 0, caching is turned off.

Cached prepared statements are replaced according to a least recently used (LRU) algorithm.

This property applies to connection pools that use an XA JDBC driver only, and is ignored if a non-XA driver is used.

See Also:
setXAPreparedStatementCacheSize(int)

setXAPreparedStatementCacheSize

public void setXAPreparedStatementCacheSize(int size)
                                     throws javax.management.InvalidAttributeValueException
Sets the maximum number of prepared statements cached by this particular XA connection pool. If the value is 0, caching is turned off.

Cached prepared statements are replaced according to a least recently used (LRU) algorithm.

This property applies to connection pools that use an XA JDBC driver only, and is ignored if a non-XA driver is used. The maximum number of prepared statements cached by this XA connection pool. If the value is 0, caching is turned off.

Legal Value: (value >= weblogic.management.configuration.JDBCLegalHelper.MIN_CACHE_STATEMENTS_SIZE) && (value <= weblogic.management.configuration.JDBCLegalHelper.MAX_CACHE_STATEMENTS_SIZE)
See Also:
getXAPreparedStatementCacheSize()

getEnableResourceHealthMonitoring

public boolean getEnableResourceHealthMonitoring()
Returns true if JTA resource health monitoring is enabled for this XA connection pool.

This property applies to XA connection pools only, and is ignored for connection pools that use a non-XA driver.

Default Value: true

setEnableResourceHealthMonitoring

public void setEnableResourceHealthMonitoring(boolean enable)
                                       throws javax.management.InvalidAttributeValueException
This property applies to XA connection pools only, and is ignored for connection pools that use a non-XA driver.

Determines whether JTA resource health monitoring is enabled for this XA connection pool.


getXARetryDurationSeconds

public int getXARetryDurationSeconds()
Determines the duration in seconds for which the transaction manager will perform recover operations on the resource. A value of zero indicates that no retries will be performed.

Default Value: 0

setXARetryDurationSeconds

public void setXARetryDurationSeconds(int duration)
                               throws javax.management.InvalidAttributeValueException
Determines the duration in seconds for which the transaction manager will perform recover operations on the resource. A value of zero indicates that no retries will be performed.


getXARetryIntervalSeconds

public int getXARetryIntervalSeconds()
Determines the time in seconds between XA retry operations if the XARetryDurationSeconds attribute is set to a positive value.

Default Value: 60

setXARetryIntervalSeconds

public void setXARetryIntervalSeconds(int interval)
                               throws javax.management.InvalidAttributeValueException
Determines the time in seconds between XA retry operations if the XARetryDurationSeconds attribute is set to a positive value.


setPreparedStatementCacheSize

public void setPreparedStatementCacheSize(int cacheSize)
Sets size of the prepared statement cache. The size of the cache is a number of prepared statements created from particular connection and stored in the cache for further use. Setting the size of the prepared statement cache to 0 The number of prepared statements stored in the cache for further use. WebLogic Server can reuse prepared statements in the cache without reloading them, which can increase server performance. Setting the size of the prepared statement cache to 0 (the default) turns it off.

Legal Value: (value >= weblogic.management.configuration.JDBCLegalHelper.MIN_CACHE_STATEMENTS_SIZE) && (value <= weblogic.management.configuration.JDBCLegalHelper.MAX_CACHE_STATEMENTS_SIZE)
See Also:
getPreparedStatementCacheSize()

getPreparedStatementCacheSize

public int getPreparedStatementCacheSize()
Returns size of the prepared statement cache. The size of the cache is a number of prepared statements created from particular connection and stored in the cache for further use.

Default Value: weblogic.management.configuration.JDBCLegalHelper.DEFAULT_CACHE_STATEMENTS_SIZE
See Also:
setPreparedStatementCacheSize(int)

setCountOfRefreshFailuresTillDisable

public void setCountOfRefreshFailuresTillDisable(int newVal)
Set the number of consecutive failures to replace dead pool connections before we disable the pool. Zero means we will never disable the pool.

Parameters:
newVal - The new attribute value

getCountOfRefreshFailuresTillDisable

public int getCountOfRefreshFailuresTillDisable()
Set the number of consecutive failures to replace dead pool connections before we disable the pool. Zero means we will never disable the pool.

Default Value: 0

setCountOfTestFailuresTillFlush

public void setCountOfTestFailuresTillFlush(int newVal)
Set the number of consecutive failed pool connection tests before we close all the connections the pool. Zero means we will never close all the connections in the pool.

Parameters:
newVal - The new attribute value

getCountOfTestFailuresTillFlush

public int getCountOfTestFailuresTillFlush()
Get the number of consecutive failed pool connection tests before we close all the connections the pool. Zero means we will never close all the connections at once for that reason.

Default Value: 0

Documentation is available at
http://download.oracle.com/docs/cd/E13222_01/wls/docs70

Copyright © 2004 BEA Systems, Inc. All Rights Reserved.
WebLogic Server 7.0 API Reference