Edit D:\app\Administrator\product\11.2.0\dbhome_1\ucp\lib\oracle\ucp\admin\UniversalConnectionPoolManagerBase.class
?? 1? G ? ? ? ? ? ? ? ? ? ? ? !" #$ ?%&'( ) *+ G, -.? #/ 0 1 ?2? 3? 4? 5? ?678 #9 ?: ;<=>?&@A?BC ?DE 7 ?FG *HI .&J?KL @M @N&O?PQ #R&S&TUVW?X?Y? T W ?Z ?[ ?\ ?]^?_ '` abc ^d ^e ^Nfg h i ajklmno ?pqr ?stuqvwxqyz{q|}~q??q???q???q???q????q? ????q???q???q???q???q???q???q???q???q???q???q????? ???? ???? ???? ??? #? ?? ????f? \?? ?s ?? ?? ??? -? a?? a???????? \? ? 1 @ ?? a??? ???? ??? ??? ??????? ?? ?? O ??? ???? ????? -? -? ??? ?? ? ? ? ? ? ? ? ? ? UCPMetric InnerClasses logger Ljava/util/logging/Logger; DEFAULT_IS_JMX_ENABLED Z ConstantValue DEFAULT_LOCAL_METRIC_CONSOLE DEFAULT_METRIC_UPDATE_INTERVAL I < m_jmxFlag m_localMetricConsole m_metricInterval UCP_METRIC_NAME Ljava/lang/String; MGR_PREFIX m_metricConsole Loracle/dms/console/DMSConsole; m_updateMetricTimer Loracle/ucp/util/TimerHandle; m_metricsPostingThread m_connPool Ljava/util/Map; Signature GLjava/util/Map<Ljava/lang/String;Loracle/ucp/UniversalConnectionPool;>; m_mappedPoolNames 5Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>; m_ucpMetrics bLjava/util/Map<Loracle/ucp/admin/UniversalConnectionPoolManagerBase$UCPMetric;Ljava/lang/String;>; m_parentNouns Ljava/util/Hashtable; ILjava/util/Hashtable<Ljava/lang/String;Loracle/dms/instrument/NounIntf;>; m_metricPools Ljava/util/ArrayList; )Ljava/util/ArrayList<Ljava/lang/String;>; TOTAL_CONN_NAME TOTAL_CONN_UNITS TOTAL_CONN_DESC AVAILABLE_CONN_NAME AVAILABLE_CONN_UNITS AVAILABLE_CONN_DESC BORROWED_CONN_NAME BORROWED_CONN_UNITS BORROWED_CONN_DESC AVERAGE_BORROWED_CONN_NAME AVERAGE_BORROWED_CONN_UNITS AVERAGE_BORROWED_CONN_DESC PEAK_CONN_NAME PEAK_CONN_UNITS PEAK_CONN_DESC REMAINING_CONN_NAME REMAINING_CONN_UNITS REMAINING_CONN_DESC LABELED_CONN_NAME LABELED_CONN_UNITS LABELED_CONN_DESC CREATED_CONN_NAME CREATED_CONN_UNITS CREATED_CONN_DESC CLOSED_CONN_NAME CLOSED_CONN_UNITS CLOSED_CONN_DESC AVG_CONN_WAIT_NAME AVG_CONN_WAIT_UNITS AVG_CONN_WAIT_DESC PEAK_CONN_WAIT_NAME PEAK_CONN_WAIT_UNITS PEAK_CONN_WAIT_DESC ABANDONED_CONN_NAME ABANDONED_CONN_UNITS ABANDONED_CONN_DESC PENDING_REQUEST_NAME PENDING_REQUEST_UNITS PENDING_REQUEST_DESC CUMULATIVE_CONN_WAIT_NAME CUMULATIVE_CONN_WAIT_UNITS CUMULATIVE_CONN_WAIT_DESC CUMULATIVE_CONN_BORROWED_NAME CUMULATIVE_CONN_BORROWED_UNITS CUMULATIVE_CONN_BORROWED_DESC CUMULATIVE_CONN_USE_NAME CUMULATIVE_CONN_USE_UNITS CUMULATIVE_CONN_USE_DESC CUMULATIVE_CONN_RETURNED_NAME CUMULATIVE_CONN_RETURNED_UNITS CUMULATIVE_CONN_RETURNED_DESC !CUMULATIVE_SUCCESS_CONN_WAIT_NAME "CUMULATIVE_SUCCESS_CONN_WAIT_UNITS !CUMULATIVE_SUCCESS_CONN_WAIT_DESC 'CUMULATIVE_SUCCESS_CONN_WAIT_COUNT_NAME (CUMULATIVE_SUCCESS_CONN_WAIT_COUNT_UNITS 'CUMULATIVE_SUCCESS_CONN_WAIT_COUNT_DESC CUMULATIVE_FAILED_CONN_WAIT_NAME !CUMULATIVE_FAILED_CONN_WAIT_UNITS CUMULATIVE_FAILED_CONN_WAIT_DESC &CUMULATIVE_FAILED_CONN_WAIT_COUNT_NAME 'CUMULATIVE_FAILED_CONN_WAIT_COUNT_UNITS &CUMULATIVE_FAILED_CONN_WAIT_COUNT_DESC *SUCCESSFUL_AFFINITYBASED_BORROW_COUNT_NAME +SUCCESSFUL_AFFINITYBASED_BORROW_COUNT_UNITS *SUCCESSFUL_AFFINITYBASED_BORROW_COUNT_DESC &FAILED_AFFINITYBASED_BORROW_COUNT_NAME 'FAILED_AFFINITYBASED_BORROW_COUNT_UNITS &FAILED_AFFINITYBASED_BORROW_COUNT_DESC &SUCCESSFUL_RCLBBASED_BORROW_COUNT_NAME 'SUCCESSFUL_RCLBBASED_BORROW_COUNT_UNITS &SUCCESSFUL_RCLBBASED_BORROW_COUNT_DESC "FAILED_RCLBBASED_BORROW_COUNT_NAME #FAILED_RCLBBASED_BORROW_COUNT_UNITS "FAILED_RCLBBASED_BORROW_COUNT_DESC m_timerManager Loracle/ucp/util/TimerManager; m_taskManager Loracle/ucp/util/TaskManager; $assertionsDisabled <init> ()V Code LineNumberTable LocalVariableTable this 5Loracle/ucp/admin/UniversalConnectionPoolManagerBase; startConnectionPool (Ljava/lang/String;)V ucpe -Loracle/ucp/UniversalConnectionPoolException; poolName uniquePoolID pool $Loracle/ucp/UniversalConnectionPool; Exceptions stopConnectionPool refreshConnectionPool recycleConnectionPool purgeConnectionPool destroyConnectionPool umb 6Loracle/ucp/admin/UniversalConnectionPoolManagerMBean; createConnectionPool .(Loracle/ucp/UniversalConnectionPoolAdapter;)V exc Ljava/lang/Exception; ucpAdapter +Loracle/ucp/UniversalConnectionPoolAdapter; setConnectionPool '(Loracle/ucp/UniversalConnectionPool;)V connectionPool getConnectionPool 8(Ljava/lang/String;)Loracle/ucp/UniversalConnectionPool; getConnectionPoolNames ()[Ljava/lang/String; sArray [Ljava/lang/String; setManagerPoolID '(Ljava/lang/String;Ljava/lang/String;)V newPoolName getManagerPoolID &(Ljava/lang/String;)Ljava/lang/String; getMetricPoolNames startMetricsCollection ce createMetricSensors oracleStats ;Loracle/ucp/jdbc/oracle/OracleJDBCConnectionPoolStatistics; "successfulAffinityBasedBorrowCount !Loracle/dms/instrument/StateIntf; failedAffinityBasedBorrowCount successfulRCLBBasedBorrowCount failedRCLBBasedBorrowCount metricParentNoun Loracle/dms/instrument/NounIntf; stats .Loracle/ucp/UniversalConnectionPoolStatistics; totalConnectionsCount availableConnectionsCount borrowedConnectionsCount averageBorrowedConnectionsCount peakConnectionsCount remainingPoolCapacityCount labeledConnectionsCount connectionsCreatedCount connectionsClosedCount averageConnectionWaitTime peakConnectionWaitTime abandonedConnectionsCount pendingRequestsCount cumulativeConnectionWaitTime !cumulativeConnectionBorrowedCount cumulativeConnectionUseTime !cumulativeConnectionReturnedCount &cumulativeSuccessfulConnectionWaitTime 'cumulativeSuccessfulConnectionWaitCount "cumulativeFailedConnectionWaitTime #cumulativeFailedConnectionWaitCount updateMetricSensors i uniquePoolIDs e isMetricConsoleAvailable ()Z clsLoader Ljava/lang/ClassLoader; cnf "Ljava/lang/ClassNotFoundException; Ljava/lang/SecurityException; re Ljava/lang/RuntimeException; metricConsoleExists stopMetricsCollection setMetricUpdateInterval (I)V metricInterval getMetricUpdateInterval ()I setJmxEnabled (Z)V jmxFlag isJmxEnabled initupdateMetricTimer disableupdateMetricTimer setLogLevel (Ljava/util/logging/Level;)V newLogLevel Ljava/util/logging/Level; getLogLevel ()Ljava/util/logging/Level; setMetricConsole "(Loracle/dms/console/DMSConsole;)V metricConsole setMetricParentNoun 5(Ljava/lang/String;Loracle/dms/instrument/NounIntf;)V getStateMetric t(Ljava/lang/String;Loracle/ucp/admin/UniversalConnectionPoolManagerBase$UCPMetric;)Loracle/dms/instrument/StateIntf; ucpMetric ?Loracle/ucp/admin/UniversalConnectionPoolManagerBase$UCPMetric; stateMetric getTimerManager ()Loracle/ucp/util/TimerManager; setTimerManager !(Loracle/ucp/util/TimerManager;)Z timerManager oldTm getTaskManager ()Loracle/ucp/util/TaskManager; setTaskManager (Loracle/ucp/util/TaskManager;)Z taskManager <clinit> SourceFile 'UniversalConnectionPoolManagerBase.java?? !%&'() java/util/HashMap*+.+ java/util/Hashtable23 java/util/ArrayList56? poolName: {0}?? "oracle/ucp/UniversalConnectionPool? !"#$%&'()?*+??,?-?.??? +oracle/ucp/UniversalConnectionPoolException called stopConnectionPool: /??01234? -called unregisterUniversalConnectionPoolMBean5 parameter ucpAdapter: {0}678? java/lang/AssertionError?? java/lang/Exception 9 connectionPool: {0}:+ oracle/ucp/util/UniqueIdentifier UniversalConnectionPoolManager-??;&<= $getConnectionPool(): {0} returns {1} java/lang/Object>?@A? java/lang/StringBCD returns {0} {0} returns {1}???????? 0Exception occurred while creating Metric Sensors ,about to create metric sensors for pool: {0} oracle/dms/instrument/NounIntfEFG java/lang/StringBuilder /UCP_METRIC/HIJKLM+NOPQ TotalConnectionsCount ConnectionsCount 'Total number of connections in the poolRKST?UV?W? AvailableConnectionsCount 1Total number of available connections in the poolX? BorrowedConnectionsCount 0Total number of borrowed connections in the poolY? AverageBorrowedConnectionsCount 2Average count for borrowed connections in the poolZ? PeakConnectionsCount "Peak connections count in the pool[? RemainingPoolCapacityCount *Remaining pool capacity count for the pool\? LabeledConnectionsCount /Total number of labeled connections in the pool]? ConnectionsCreatedCount /Total number of connections created in the pool^? ConnectionsClosedCount .Total number of closed connections in the pool_? AverageConnectionWaitTime Seconds (Average connection wait time in the pool`aWb PeakConnectionWaitTime %Peak Connection wait time in the poolca AbandonedConnectionsCount 1Total number of abandoned connections in the poold? PendingRequestsCount 2Total number of pending requests count in the poole? CumulativeConnectionWaitTime ,Cumulative connection wait time for the poolfa !CumulativeConnectionBorrowedCount 1Cumulative connection borrowed count for the poolga CumulativeConnectionUseTime +Cumulative connection use time for the poolha !CumulativeConnectionReturnedCount 0Cumulative connection returned count in the poolia &CumulativeSuccessfulConnectionWaitTime 7Cumulative successful connection wait time for the poolja 'CumulativeSuccessfulConnectionWaitCount 8Cumulative successful connection wait count for the poolka "CumulativeFailedConnectionWaitTime 3Cumulative failed connection wait time for the poolla #CumulativeFailedConnectionWaitCount 4Cumulative failed connection wait count for the poolma /oracle/ucp/jdbc/oracle/OracleJDBCConnectionPool 9oracle/ucp/jdbc/oracle/OracleJDBCConnectionPoolStatistics "SuccessfulAffinityBasedBorrowCount DNumber of borrow requests succeeded with matching affinity contexts.na FailedAffinityBasedBorrowCount WNumber of borrow requests that returned connections not matching the affinity contexts.oa SuccessfulRCLBBasedBorrowCount ^Number of borrow requests succeeded using Runtime Connection Load-Balancing (RCLB) algorithms.pa FailedRCLBBasedBorrowCount [Number of borrow requests failed using Runtime Connection Load-Balancing (RCLB) algorithms.qa about to update metric sensorsr????? -update metric sensors for connectionPool: {0}Lst oracle/dms/instrument/Stateuvwxy oracle.dms.instrument.DMSConsolez{|} /UCP_METRIC~? java/lang/ClassNotFoundException !DMSConsole class cannot be found. java/lang/SecurityException security java/lang/RuntimeException @Runtime Exception occurred while initializing the metric console 8Exception occurred while initializing the metric console?5+???? setMetricUpdateInterval: {0}??? JmxEnabled: {0}??? entering 'oracle/ucp/admin/MetricsUpdateTimerTask?????? setLogLevel: {0}?????0+ oracle/dms/instrument/StateIntf??????? 3oracle/ucp/admin/UniversalConnectionPoolManagerBase???&?? #oracle/ucp/util/UCPTimerManagerImpl "oracle/ucp/util/UCPTaskManagerImpl?????????????????????????????????????????????????? /oracle/ucp/admin/UniversalConnectionPoolManager =oracle/ucp/admin/UniversalConnectionPoolManagerBase$UCPMetric java/util/Collections synchronizedMap (Ljava/util/Map;)Ljava/util/Map; java/util/logging/Level FINEST java/util/logging/Logger log @(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Object;)V java/util/Map get &(Ljava/lang/Object;)Ljava/lang/Object; start oracle/ucp/util/UCPErrorHandler #newUniversalConnectionPoolException 0(I)Loracle/ucp/UniversalConnectionPoolException; getClass ()Ljava/lang/Class; java/lang/Class getName ()Ljava/lang/String; throwing <(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V stop contains (Ljava/lang/Object;)Z refresh recycle purge C(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V 8oracle/ucp/admin/UniversalConnectionPoolManagerMBeanImpl &getUniversalConnectionPoolManagerMBean 8()Loracle/ucp/admin/UniversalConnectionPoolManagerMBean; 4oracle/ucp/admin/UniversalConnectionPoolManagerMBean &unregisterUniversalConnectionPoolMBean remove )oracle/ucp/UniversalConnectionPoolAdapter createUniversalConnectionPool &()Loracle/ucp/UniversalConnectionPool; E(ILjava/lang/Throwable;)Loracle/ucp/UniversalConnectionPoolException; containsKey toString put 8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; A(Ljava/util/logging/Level;Ljava/lang/String;[Ljava/lang/Object;)V keySet ()Ljava/util/Set; size java/util/Set toArray (([Ljava/lang/Object;)[Ljava/lang/Object; oracle/dms/console/DMSConsole getNounFactory &()Loracle/dms/console/NounFactoryIntf; append -(Ljava/lang/String;)Ljava/lang/StringBuilder; "oracle/dms/console/NounFactoryIntf create 4(Ljava/lang/String;)Loracle/dms/instrument/NounIntf; add getStatistics 0()Loracle/ucp/UniversalConnectionPoolStatistics; getStateFactory '()Loracle/dms/console/StateFactoryIntf; #oracle/dms/console/StateFactoryIntf z(Loracle/dms/instrument/NounIntf;Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)Loracle/dms/instrument/StateIntf; deriveMetric ,oracle/ucp/UniversalConnectionPoolStatistics getTotalConnectionsCount update getAvailableConnectionsCount getBorrowedConnectionsCount "getAverageBorrowedConnectionsCount getPeakConnectionsCount getRemainingPoolCapacityCount getLabeledConnectionsCount getConnectionsCreatedCount getConnectionsClosedCount getAverageConnectionWaitTime ()J (J)V getPeakConnectionWaitTime getAbandonedConnectionsCount getPendingRequestsCount getCumulativeConnectionWaitTime $getCumulativeConnectionBorrowedCount getCumulativeConnectionUseTime $getCumulativeConnectionReturnedCount )getCumulativeSuccessfulConnectionWaitTime *getCumulativeSuccessfulConnectionWaitCount %getCumulativeFailedConnectionWaitTime &getCumulativeFailedConnectionWaitCount %getSuccessfulAffinityBasedBorrowCount !getFailedAffinityBasedBorrowCount !getSuccessfulRCLBBasedBorrowCount getFailedRCLBBasedBorrowCount finest getSensor 2(Ljava/lang/String;)Loracle/dms/instrument/Sensor; java/lang/Thread currentThread ()Ljava/lang/Thread; getContextClassLoader ()Ljava/lang/ClassLoader; forName =(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class; getConsole !()Loracle/dms/console/DMSConsole; init destroy exit java/lang/Integer valueOf (I)Ljava/lang/Integer; java/lang/Boolean (Z)Ljava/lang/Boolean; oracle/ucp/util/TimerManager schedule <(Loracle/ucp/util/TimerTask;JJ)Loracle/ucp/util/TimerHandle; oracle/ucp/util/TimerHandle cancel (oracle/ucp/util/logging/UCPLoggerFactory isRunning oracle/ucp/util/TaskManager desiredAssertionStatus getCanonicalName createLogger .(Ljava/lang/String;)Ljava/util/logging/Logger; TOTALCONNECTIONSCOUNT AVAILABLECONNECTIONSCOUNT BORROWEDCONNECTIONSCOUNT AVERAGEBORROWEDCONNECTIONSCOUNT PEAKCONNECTIONSCOUNT REMAININGPOOLCAPACITYCOUNT LABELEDCONNECTIONSCOUNT CONNECTIONSCREATEDCOUNT CONNECTIONSCLOSEDCOUNT AVERAGECONNECTIONWAITTIME PEAKCONNECTIONWAITTIME ABANDONEDCONNECTIONSCOUNT PENDINGREQUESTSCOUNT CUMULATIVECONNECTIONWAITTIME !CUMULATIVECONNECTIONBORROWEDCOUNT CUMULATIVECONNECTIONUSETIME !CUMULATIVECONNECTIONRETURNEDCOUNT &CUMULATIVESUCCESSFULCONNECTIONWAITTIME 'CUMULATIVESUCCESSFULCONNECTIONWAITCOUNT "CUMULATIVEFAILEDCONNECTIONWAITTIME #CUMULATIVEFAILEDCONNECTIONWAITCOUNT "SUCCESSFULAFFINITYBASEDBORROWCOUNT FAILEDAFFINITYBASEDBORROWCOUNT SUCCESSFULRCLBBASEDBORROWCOUNT FAILEDRCLBBASEDBORROWCOUNT! ? G _ ! "# ? $# A %&