Edit D:\app\Administrator\product\11.2.0\dbhome_1\ucp\lib\oracle\ucp\common\UniversalConnectionPoolImpl.class
?? 1? ?V ?WX Y ?Z [ \] ?^ _` ?a _b ?cd e ?f ?g hi jk ? lm ?n op ?q rs ?t uv wx ?y ?z { |} ~? ?? |?? ?? |? ?? ??? ??? l? |? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? |? g? ? g??? ? g? g? ?? ?? _? _? ??? E? ???? |? |?? ??? Ne? N? h? N? l? ?? ?? ? ? ? g? g? g? ?? ?? ?? ?? E? ?? ?? g? ????? ??? g? g? ?? ?? ?? ???? ???? te ????? ?? ?? g????????? ?? r?? l?? ?? l????????? ??????? ?? ?? ?? ? ? ? ? ? ?? ? j j UniversalConnectionPoolInternal InnerClasses logger Ljava/util/logging/Logger; m_ucpInternal OLoracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal; $assertionsDisabled Z <init> ((Loracle/ucp/ConnectionFactoryAdapter;)V Code LineNumberTable LocalVariableTable this /Loracle/ucp/common/UniversalConnectionPoolImpl; connectionFactoryAdapter %Loracle/ucp/ConnectionFactoryAdapter; Exceptions getInUseConnectionsArray )()[Loracle/ucp/UniversalPooledConnection; borrowConnection L(Loracle/ucp/ConnectionRetrievalInfo;)Loracle/ucp/UniversalPooledConnection; connectionRetrievalInfo $Loracle/ucp/ConnectionRetrievalInfo; 'borrowConnectionWithoutCountingRequests ucpe -Loracle/ucp/UniversalConnectionPoolException; e Ljava/lang/InterruptedException; begTime J toWait cri timeToWait allBorrowed pooledConnection &Loracle/ucp/UniversalPooledConnection; isAbleToCreateConnection startWait successWaitTime numInUseConnections I createOnePooledConnection (()Loracle/ucp/UniversalPooledConnection; exc upc roomToGrow ()I makeRoomInThePool ()V updateConnectionWaitCounters (J)V failWaitTime newConnectionWaitFailedException 0(I)Loracle/ucp/UniversalConnectionPoolException; errorNumber $removeAndCloseOneAvailableConnection )(Loracle/ucp/UniversalPooledConnection;)V returnConnection nconns max min status ,Loracle/ucp/UniversalPooledConnectionStatus; upci 1Loracle/ucp/common/UniversalPooledConnectionImpl; removedInUse Ljava/lang/Exception; upcToCreate physicalConnectionToClose Ljava/lang/Object; addNewConnection needToAbort replaceNonReusableConnections arr$ '[Loracle/ucp/UniversalPooledConnection; len$ i$ physConn cutoffTime Ljava/util/Iterator; connsToClose Ljava/util/List; LocalVariableTypeTable 8Ljava/util/List<Loracle/ucp/UniversalPooledConnection;>; growPool (I)V nConns (ILjava/util/List;)V nCurConns cpc listCri defaultCri nConnsCreated iCri 6Ljava/util/List<Loracle/ucp/ConnectionRetrievalInfo;>; Signature :(ILjava/util/List<Loracle/ucp/ConnectionRetrievalInfo;>;)V reducePool nCurrConns nConnsClosed addNewConnections ((Loracle/ucp/ConnectionRetrievalInfo;I)V ,Loracle/ucp/NoAvailableConnectionsException; i num closeConnection 'closeAvailableConnectionsAsynchronously (Ljava/util/List;)V conn ;(Ljava/util/List<Loracle/ucp/UniversalPooledConnection;>;)V purge refresh recycle processConnectionHarvesting setConnectionHarvestable *(Loracle/ucp/UniversalPooledConnection;Z)V isConnectionHarvestable abortConnection closePhysicalConnection (Ljava/lang/Object;)V physicalConnection addOneAvailableConnection getAvailableConnectionsCount getBorrowedConnectionsCount getTotalConnectionsCount getStatistics 0()Loracle/ucp/UniversalConnectionPoolStatistics; getAvailableConnections getAllBorrowedConnections discardUsedConnection getUsedConnection :(Ljava/lang/Object;)Loracle/ucp/UniversalPooledConnection; returnUsedPhysicalConnection (Ljava/lang/Object;)Z closeUsedPhysicalConnection !getCollectionAvailableConnections *()Loracle/ucp/common/AvailableConnections; !setCollectionAvailableConnections +(Loracle/ucp/common/AvailableConnections;)V availableConnections (Loracle/ucp/common/AvailableConnections; getValidAvailableConnection removeOneAvailableConnection getAvailablePhysicalConnections <(Loracle/ucp/ConnectionRetrievalInfo;)Ljava/util/Collection; createCollection ()Ljava/util/Collection; 'selectConnectionPerRuntimeLoadBalancing >(Ljava/util/Collection;)Loracle/ucp/UniversalPooledConnection; conns Ljava/util/Collection; >Ljava/util/Collection<Loracle/ucp/UniversalPooledConnection;>; f(Ljava/util/Collection<Loracle/ucp/UniversalPooledConnection;>;)Loracle/ucp/UniversalPooledConnection; 2selectConnectionPerRuntimeLoadBalancingAndAffinity getLabeledConnectionsCount access$900 ()Ljava/util/logging/Logger; <clinit> SourceFile UniversalConnectionPoolImpl.java ? ? ? ? Moracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal ? ? ? ? ? ? ?! ? ? ? java/lang/AssertionError ? ?"#$%&'()*+,-./ ?0123456789:;<=>?@ ?C ?ABCD ?EFGH ?I ?JKL ? ? ?M ?NOPQR java/lang/InterruptedExceptionSTU calling waitVWX ? ? ? ? ?YZ[ 2\Z]^_Z;26 ? ? ?` ?*Kabc<defgbh ?i ?1 ?j; ?6kZ /oracle/ucp/common/UniversalPooledConnectionImpll ?mn +oracle/ucp/UniversalConnectionPoolException 1createOnePooledConnection() throws exception: {0}o ?p ?q ?,- java/lang/StringBuilder closed available connectionrst+uvwZxZyz{|} ?~?? ??;?2? ???? ??Z?2?^?? $oracle/ucp/UniversalPooledConnection? ?? ?? ???? ?? ?? ?+ ? java/lang/Exception 2createOnePooledConnection loop in returnConnection?Z )about to replace non-reusable connections java/util/ArrayList5 ?q???;? ?6 ??2????K?< loop getAvailableConnections() .non-reusable connections successfully replaced ;K skip pool growingV? %about to grow pool to {0} connections???V?? ?;? "oracle/ucp/ConnectionRetrievalInfo no default CRI *createOnePooledConnection loop in growPool {0} new connection(s) created0 ? {0} connection(s) closed about to add {0} new connections *oracle/ucp/NoAvailableConnectionsException 3createOnePooledConnection loop in addNewConnections {0} new connection(s) added?| /oracle/ucp/common/UniversalConnectionPoolImpl$1 ???????????????|???? 7oracle/ucp/common/UniversalConnectionPoolStatisticsImpl ?????????????F???z?z????? ? -oracle/ucp/common/UniversalConnectionPoolImpl?K?+??? -oracle/ucp/common/UniversalConnectionPoolBase c(Loracle/ucp/common/UniversalConnectionPoolImpl;Loracle/ucp/common/UniversalConnectionPoolImpl$1;)V access$100 x(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;)[Loracle/ucp/UniversalPooledConnection; oracle/ucp/util/UCPErrorHandler #newUniversalConnectionPoolException m_pendingRequestsCount +Ljava/util/concurrent/atomic/AtomicInteger; )java/util/concurrent/atomic/AtomicInteger incrementAndGet decrementAndGet getLabels ()Ljava/util/Properties; getConnectionLabelingCallback )()Loracle/ucp/ConnectionLabelingCallback; java/lang/Object getClass ()Ljava/lang/Class; java/lang/Class getName ()Ljava/lang/String; java/util/logging/Logger throwing <(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V getConnectionWaitTimeout java/lang/System currentTimeMillis ()J m_skipPoolGrowing +Ljava/util/concurrent/atomic/AtomicBoolean; )java/util/concurrent/atomic/AtomicBoolean set (Z)V m_lifeCycleState -Ljava/util/concurrent/atomic/AtomicReference; +java/util/concurrent/atomic/AtomicReference get ()Ljava/lang/Object; 0oracle/ucp/UniversalConnectionPoolLifeCycleState LIFE_CYCLE_RUNNING 2Loracle/ucp/UniversalConnectionPoolLifeCycleState; validatePoolSizes access$200 y(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;)Loracle/ucp/common/ConnectionsContainer; &oracle/ucp/common/ConnectionsContainer m_allConnections access$300 y(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;)Loracle/ucp/common/AvailableConnections; &oracle/ucp/common/AvailableConnections getNumAvailableConnections getMaxPoolSize isThereRoomToGrowPool ()Z !getNumAvailableLabeledConnections addNewConnectionCreateRequest m_borrowRequestQueue &Loracle/ucp/common/BorrowRequestQueue; $oracle/ucp/common/BorrowRequestQueue waitAvailable ((Loracle/ucp/ConnectionRetrievalInfo;J)V java/util/logging/Level FINEST Ljava/util/logging/Level; log C(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V cancelConnectionCreateRequest )m_cumulativeSuccessfulConnectionWaitCount (Ljava/util/concurrent/atomic/AtomicLong; &java/util/concurrent/atomic/AtomicLong (m_cumulativeSuccessfulConnectionWaitTime addAndGet (J)J m_peakConnectionWaitTime updateConnectionCreatedInfo access$400 `(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;)Ljava/util/Map; getPhysicalConnection java/util/Map put 8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; access$500 setBorrowedStartTime heartbeat m_peakConnectionsCount #m_cumulativeConnectionBorrowedCount incrementConnectionReuseCounter getConnectionRetrievalInfo &()Loracle/ucp/ConnectionRetrievalInfo; getAllConnections getNumConnectionCreateRequests removeAvailableConnection append -(Ljava/lang/String;)Ljava/lang/StringBuilder; toString finest (Ljava/lang/String;)V %m_cumulativeFailedConnectionWaitCount $m_cumulativeFailedConnectionWaitTime access$600 ?(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;Loracle/ucp/ConnectionRetrievalInfo;)Loracle/ucp/UniversalPooledConnection; access$700 x(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;Loracle/ucp/UniversalPooledConnection;)V "removeConnectionHarvestingCallback getStatus .()Loracle/ucp/UniversalPooledConnectionStatus; *oracle/ucp/UniversalPooledConnectionStatus STATUS_CLOSED equals getMaxConnectionReuseTime getMaxConnectionReuseCount isReusable (JI)Z STATUS_REPLACE_ON_RETURN m_cumulativeConnectionUseTime getBorrowedStartTime getAndAdd remove &(Ljava/lang/Object;)Ljava/lang/Object; STATUS_NORMAL addAvailableConnection setAvailableStartTime setStatus /(Loracle/ucp/UniversalPooledConnectionStatus;)V STATUS_CLOSE_ON_RETURN getMinPoolSize STATUS_BAD #m_cumulativeReturnedConnectionCount )(Loracle/ucp/UniversalPooledConnection;)Z java/util/List add getAbandonedConnectionTimeout getLastAccessedTime iterator ()Ljava/util/Iterator; java/util/Iterator hasNext next .(Ljava/util/logging/Level;Ljava/lang/String;)V java/lang/Integer valueOf (I)Ljava/lang/Integer; @(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Object;)V size (I)Ljava/lang/Object; access$800 X(Loracle/ucp/common/UniversalConnectionPoolImpl;Loracle/ucp/UniversalPooledConnection;)V submitWTPTask 4(Loracle/ucp/util/Task;)Loracle/ucp/util/TaskHandle; access$1000 R(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;)V access$1100 access$1200 access$1300 access$1400 y(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;Loracle/ucp/UniversalPooledConnection;Z)V access$1500 access$1600 R(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;)I access$1700 2(Loracle/ucp/common/UniversalConnectionPoolBase;)V access$1800 access$1900 access$2000 d(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;Ljava/lang/Object;)V access$2100 ?(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;Ljava/lang/Object;)Loracle/ucp/UniversalPooledConnection; access$2200 d(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;Ljava/lang/Object;)Z access$2300 access$2400 access$2500 z(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;Loracle/ucp/common/AvailableConnections;)V access$2600 access$2700 access$2800 ?(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;Loracle/ucp/ConnectionRetrievalInfo;)Ljava/util/Collection; access$2900 g(Loracle/ucp/common/UniversalConnectionPoolImpl$UniversalConnectionPoolInternal;)Ljava/util/Collection; "getLabeledConnectionsCountInternal desiredAssertionStatus getCanonicalName (oracle/ucp/util/logging/UCPLoggerFactory createLogger .(Ljava/lang/String;)Ljava/util/logging/Logger; ! ? ? ? ? ? ? ? ? 0 ? ? ? O *+? *? Y*? ? ? ? S U V ? ? ? ? ? ? H ? ? ? 2 *? ? ? ? h ? ? ? ? ? ? ? .+? ? ?*? ? W*+? M*? ? W,?*? ? W-? # # $ # ? z { ~ ? ? ? . ? ? . ? ? ? H ? ? ? ? ? ? +? ? Y? ?+? ? "*? ? \? M? *? ? ,? ,?*? ??6:6? 7*? ? *? ? ? ? ? 7 *? 6*Y:?*+? :? ? ?*? ? ? *? ? ? ! d*? "? ? 6? ? ? 6? N*? ? ? #? 6? &*? ? ? ! *? ? ? $ d? *? %6? *? ? ? &? F? : ? ?? *? '+ ? (? :? ? *+? , ? ? ? eeA? *? ? ? ? @? *Y: ?*? ? ? - ? : ??<? : ? *? ? ? ?? L? G? *Y: ?*? ? ? - ? : ??*? .*@? /: ? *? ? ? ?*? 0? 1X? e7 *? 2 ? 3X*? 4Y:?*? 4? 5 ? *? 4 ? 6? :??? ?*+? 7:? %*Y:?*? ? ? 8? :?? m*Y:?*? ? ? -? :?? M:? %*Y:?*? ? ? 8? :?? *Y:?*? ? ? -? :???? A? :? *? ? ? ?? 9 ? /*Y:?*? ? :? ; ? < W? :?? ,*Y:?*? ? =? ; ? < W? :??? > ? ? *? @6*? AY:?*? A? B? *? A? C? :??*? D? 1X? ? ? E? ? Y? ?? E? F? x ? ? $-0 )kx{ {?{ ??? ??? '* */* IX[ [`[ kx{ {?{ 7>? ??? ??? ??? ??? ??? ! ,EH HMH l?? ??? ? ? g ? ? "