BEA Systems, Inc.

WebLogic Server 8.1 API Reference

weblogic.management.runtime
Interface JDBCConnectionPoolRuntimeMBean


public interface JDBCConnectionPoolRuntimeMBean
extends weblogic.management.runtime.RuntimeMBean

This class is used for monitoring a WebLogic JDBC component

Author:
Copyright © 2004 BEA Systems, Inc. All Rights Reserved.

Field Summary
static long CACHING_STUB_SVUID
           
 
Method Summary
 void clearStatementCache()
          Clears the cache of Prepared and Callable Statements maintained for each connection in the connection pool.
 void destroy()
          Deprecated.  
 void disableDroppingUsers()
          Deprecated.  
 void disableFreezingUsers()
          Deprecated.  
 void dumpPool()
          Prints out the data structure of the connection pool in the following lists: alvList - lists details about database connections in the connection pool that are not currently in use by a client. unavlList - lists details about database connections that WebLogic Server failed to create on server startup or failed to recreate after a failed database connection test. resvList - lists details about database connections in teh connection pool that are currently in use by a client.
 void enable()
          Deprecated.  
 void forceDestroy()
          Deprecated.  
 void forceShutdown()
          Forcibly shuts down the connection pool.
 void forceSuspend()
          Forcibly disables the pool, suspending all operations on pool connections until the pool is re-enabled.
 int getActiveConnectionsAverageCount()
           
 int getActiveConnectionsCurrentCount()
           
 int getActiveConnectionsHighCount()
           
 int getConnectionDelayTime()
           
 int getConnectionLeakProfileCount()
          Connection leak is a situation when connection from the pool was not closed explicitely by calling close() and was garbage collected.
 JDBCConnectionLeakProfile[] getConnectionLeakProfiles(int index, int count)
          Connection leak profiling stores stack trace at the time when connection was created in case of connection leak.
 int getConnectionsTotalCount()
          Returns the total number of JDBC connections in this JDBCConnectionPoolRuntimeMBean since the pool is instantiated.
 int getCurrCapacity()
          Returns the current capacity of this connection pool.
 int getFailuresToReconnectCount()
           
 int getHighestNumAvailable()
          Returns the highest number of available connections in this pool
 int getHighestNumUnavailable()
          Returns the highest number of unavailable connections in this pool
 int getLeakedConnectionCount()
           
 int getMaxCapacity()
          Returns the maximum capacity of this connection pool.
 int getNumAvailable()
          Returns the number of available connections in this pool
 int getNumUnavailable()
          Returns the number of unavailable connections in this pool
 boolean getPoolState()
          Deprecated.  
 java.util.Properties getProperties()
          Returns the properties for a pool.
 java.lang.String getState()
          Returns the current state of the connection pool:
Running if the pool is enabled (deployed and not SUSPENDED).
 java.lang.String getVersionJDBCDriver()
           
 int getWaitingForConnectionCurrentCount()
           
 int getWaitingForConnectionHighCount()
           
 int getWaitSecondsHighCount()
           
 boolean isEnabled()
           
 boolean poolExists(java.lang.String poolName)
          Does a pool with the given name exist?
 void reset()
          Resets the connection pool by shutting down and reestablishing all the pool connections.
 void resetConnectionLeakProfile()
          Resets connection leak profile.
 void resetStatementProfile()
          Resets SQL statement profile.
 void resume()
          Restores all access to and operations on a connection pool that has been suspended (marked as disabled).
 void shrink()
          Shrinks the named database ConnectionPool to the max of the currently reserved connections or the initial size.
 void shutdown()
          Shuts down the pool.
 void shutdownHard()
          Deprecated.  
 void shutdownSoft()
          Deprecated.  
 void suspend()
          Disables the connection pool, suspending all operations on pool connections until the pool is re-enabled.
 java.lang.String testPool()
          Test the pool by reserving and releasing a connection from it.
 
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, preRegister
 
Methods inherited from interface javax.management.NotificationBroadcaster
addNotificationListener, getNotificationInfo, removeNotificationListener
 

Field Detail

CACHING_STUB_SVUID

public static final long CACHING_STUB_SVUID
Method Detail

getConnectionLeakProfileCount

public int getConnectionLeakProfileCount()
Connection leak is a situation when connection from the pool was not closed explicitely by calling close() and was garbage collected.

This method should be used first before requesting connection leak profiles from the profile storage.

Returns:
Number of the connection leak profiles in profile storage.

getConnectionLeakProfiles

public JDBCConnectionLeakProfile[] getConnectionLeakProfiles(int index,
                                                             int count)
Connection leak profiling stores stack trace at the time when connection was created in case of connection leak. This enables you to identify where the leak occurred.

Connection leak is a situation when connection from the pool was not closed explicitely by calling close() and was garbage collected.

Returns:
Connection leak profiles starting from this index. Number of returned profiles depends on factual number of profiles in the profile storage.
See Also:
JDBCConnectionLeakProfile

testPool

public java.lang.String testPool()
Test the pool by reserving and releasing a connection from it. If the pool configuration attribute TestConnectionsOnReserve or TestConnectionsOnRelease is enabled, the acquired connection is also tested as part of the reserve and release operation.

Returns:
returns null upon success, else returns stacktrace
See Also:
JDBCConnectionPoolMBean

getLeakedConnectionCount

public int getLeakedConnectionCount()

Returns:
Number of leaked connections. Leaked connection is a connection that was checked out from the connection pool but was not returned to the pool by calling close ().

getPoolState

public boolean getPoolState()
Deprecated.  

Returns:
Current state of the connection pool. true if the pool enabled. false if the pool disabled

isEnabled

public boolean isEnabled()

Returns:
Boolean indicating pool is enabled or disabled. true if the pool is enabled. false if the pool is disabled.

getState

public java.lang.String getState()
Returns the current state of the connection pool:
Running if the pool is enabled (deployed and not SUSPENDED). This is the normal state of the connection pool.
Suspended if the pool disabled. Shutdown if the pool is shutdown and all database connections have been closed.
Unknown if the pool state is unknown.
Unhealthy if all connections are unavailable (not because they are in use). This state occurs if the database server is unavailable when the connection pool is created (creation retry must be enabled) or if all connections have failed connection tests (on creation, on reserve, on release, or periodic testing).

Returns:
Current state of the connection pool.

getFailuresToReconnectCount

public int getFailuresToReconnectCount()

Returns:
Number of cases when a connection pool attempted to refresh a connection to a database and failed. Failure may happen because of database unavailablity or broken connection to the database.

getConnectionDelayTime

public int getConnectionDelayTime()

Returns:
Averaged time necessary to get a connection from the database. This is how long it takes to get physical connection from database. It is calculated as summary time to connect divided by summary number of connections. Return value is milliseconds.

getActiveConnectionsCurrentCount

public int getActiveConnectionsCurrentCount()

Returns:
Current total number of active connections.

getWaitingForConnectionCurrentCount

public int getWaitingForConnectionCurrentCount()

Returns:
Current total number waiting for a connection.

getVersionJDBCDriver

public java.lang.String getVersionJDBCDriver()

Returns:
Version of the JDBC driver, in the format of concatenating the Driver class name with 'major: XX, minor: YY'.

getActiveConnectionsHighCount

public int getActiveConnectionsHighCount()

Returns:
The high water mark of active connections in this JDBCConnectionPoolRuntimeMBean. The count starts at zero each time the JDBCConnectionPoolRuntimeMBean is instantiated.

Note that this is an optimization method for a highly useful statistic that could be implemented less efficiently using change notification.


getActiveConnectionsAverageCount

public int getActiveConnectionsAverageCount()

Returns:
The running average of active connections in this JDBCConnectionPoolRuntimeMBean. The count starts at zero each time the JDBCConnectionPoolRuntimeMBean is instantiated.

getWaitingForConnectionHighCount

public int getWaitingForConnectionHighCount()

Returns:
The high water mark of waiters for a connection in this JDBCConnectionPoolRuntimeMBean. The count starts at zero each time the JDBCConnectionPoolRuntimeMBean is instantiated.

Note that this is an optimization method for a highly useful statistic that could be implemented less efficiently using change notification.


getWaitSecondsHighCount

public int getWaitSecondsHighCount()

Returns:
The number of seconds the longest waiter for a connection waited.

getConnectionsTotalCount

public int getConnectionsTotalCount()
Returns the total number of JDBC connections in this JDBCConnectionPoolRuntimeMBean since the pool is instantiated.


getMaxCapacity

public int getMaxCapacity()
Returns the maximum capacity of this connection pool.


getCurrCapacity

public int getCurrCapacity()
Returns the current capacity of this connection pool.


getNumAvailable

public int getNumAvailable()
Returns the number of available connections in this pool


getHighestNumAvailable

public int getHighestNumAvailable()
Returns the highest number of available connections in this pool


getNumUnavailable

public int getNumUnavailable()
Returns the number of unavailable connections in this pool


getHighestNumUnavailable

public int getHighestNumUnavailable()
Returns the highest number of unavailable connections in this pool


resetConnectionLeakProfile

public void resetConnectionLeakProfile()
Resets connection leak profile.


resetStatementProfile

public void resetStatementProfile()
Resets SQL statement profile.


shrink

public void shrink()
            throws java.lang.Exception
Shrinks the named database ConnectionPool to the max of the currently reserved connections or the initial size.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error

reset

public void reset()
           throws java.lang.Exception
Resets the connection pool by shutting down and reestablishing all the pool connections. This method should be used when the connection pool is in a bad state and needs to be reinitialized.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error

suspend

public void suspend()
             throws java.lang.Exception
Disables the connection pool, suspending all operations on pool connections until the pool is re-enabled.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error

forceSuspend

public void forceSuspend()
                  throws java.lang.Exception
Forcibly disables the pool, suspending all operations on pool connections until the pool is re-enabled. All current users of the pool are forcibly disconnected. All connections currently in use are closed and recreated.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error

shutdown

public void shutdown()
              throws java.lang.Exception
Shuts down the pool. If any connections from the pool are currently in use, the operation will fail.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error

forceShutdown

public void forceShutdown()
                   throws java.lang.Exception
Forcibly shuts down the connection pool. All current users of the pool are forcibly disconnected.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error

destroy

public void destroy()
             throws java.lang.Exception
Deprecated.  
Destroys the connection pool. If any connections from the pool are currently in use, the operation will fail.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error

forceDestroy

public void forceDestroy()
                  throws java.lang.Exception
Deprecated.  
Forcibly destroys the connection pool. All current users of the pool are forcibly disconnected.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error

resume

public void resume()
            throws java.lang.Exception
Restores all access to and operations on a connection pool that has been suspended (marked as disabled).

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error

shutdownSoft

public void shutdownSoft()
                  throws java.lang.Exception
Deprecated.  
Destroys the pool. If any connections from the pool are currently in use, the operation will fail.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error
See Also:
destroy()

shutdownHard

public void shutdownHard()
                  throws java.lang.Exception
Deprecated.  
Destroys the pool. All current users of the pool are forcibly disconnected.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error
See Also:
forceDestroy()

disableDroppingUsers

public void disableDroppingUsers()
                          throws java.lang.Exception
Deprecated.  
Disable the pool, immediately disconnecting all users.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error
See Also:
forceSuspend()

disableFreezingUsers

public void disableFreezingUsers()
                          throws java.lang.Exception
Deprecated.  
Disable the pool, suspending all operations on pool connections until the pool is re-enabled.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error
See Also:
suspend()

enable

public void enable()
            throws java.lang.Exception
Deprecated.  
Restore all access to and operations on the pool.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error
See Also:
resume()

getProperties

public java.util.Properties getProperties()
                                   throws java.lang.Exception
Returns the properties for a pool.

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Throws:
java.lang.Exception - if there is an error

poolExists

public boolean poolExists(java.lang.String poolName)
                   throws java.lang.Exception
Does a pool with the given name exist?

This is a privileged method, and can only be invoked on a client that has specified an authorized Principal.

Parameters:
name - Name of the pool being looked for
Throws:
java.lang.Exception - if there is an error

clearStatementCache

public void clearStatementCache()
                         throws java.lang.Exception
Clears the cache of Prepared and Callable Statements maintained for each connection in the connection pool.

Throws:
java.lang.Exception - if there is an error

dumpPool

public void dumpPool()
              throws java.lang.Exception

Prints out the data structure of the connection pool in the following lists:


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