All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.zaxxer.hikari.pool.HikariPool.class Maven / Gradle / Ivy

There is a newer version: 1.0.0-beta2
Show newest version
????4?!com/zaxxer/hikari/pool/HikariPoolcom/zaxxer/hikari/pool/PoolBase"com/zaxxer/hikari/HikariPoolMXBean6com/zaxxer/hikari/util/ConcurrentBag$IBagStateListenerHikariPool.java=com/zaxxer/hikari/pool/HikariPool$PoolInitializationException
PoolInitializationException/com/zaxxer/hikari/pool/HikariPool$KeepaliveTask

KeepaliveTask1com/zaxxer/hikari/pool/HikariPool$MaxLifetimeTaskMaxLifetimeTask-com/zaxxer/hikari/pool/HikariPool$HouseKeeperHouseKeeper2com/zaxxer/hikari/pool/HikariPool$PoolEntryCreatorPoolEntryCreator#com/zaxxer/hikari/pool/HikariPool$18com/zaxxer/hikari/pool/PoolBase$ConnectionSetupExceptionConnectionSetupException8com/zaxxer/hikari/util/ConcurrentBag$IConcurrentBagEntry$com/zaxxer/hikari/util/ConcurrentBag IConcurrentBagEntry;java/util/concurrent/ThreadPoolExecutor$DiscardOldestPolicy#'java/util/concurrent/ThreadPoolExecutor%DiscardOldestPolicy8java/util/concurrent/ThreadPoolExecutor$CallerRunsPolicy(CallerRunsPolicy6com/zaxxer/hikari/pool/PoolBase$MetricsTrackerDelegate+MetricsTrackerDelegate9com/zaxxer/hikari/pool/PoolBase$NopMetricsTrackerDelegate.NopMetricsTrackerDelegate5java/util/concurrent/ThreadPoolExecutor$DiscardPolicy1
DiscardPolicy6com/zaxxer/hikari/util/UtilityElf$DefaultThreadFactory4!com/zaxxer/hikari/util/UtilityElf6DefaultThreadFactoryIBagStateListener7com/zaxxer/hikari/pool/PoolBase$IMetricsTrackerDelegate:IMetricsTrackerDelegate%java/lang/invoke/MethodHandles$Lookup=java/lang/invoke/MethodHandles?LookuploggerLorg/slf4j/Logger;POOL_NORMALIPOOL_SUSPENDED
POOL_SHUTDOWN	poolStatealiveBypassWindowMsJhousekeepingPeriodMsEVICTED_CONNECTION_MESSAGELjava/lang/String;(connection was evicted)QDEAD_CONNECTION_MESSAGE(connection is dead)TpoolEntryCreator4Lcom/zaxxer/hikari/pool/HikariPool$PoolEntryCreator;postFillPoolEntryCreatoraddConnectionQueueReadOnlyViewLjava/util/Collection;,Ljava/util/Collection;addConnectionExecutor)Ljava/util/concurrent/ThreadPoolExecutor;closeConnectionExecutor
connectionBag&Lcom/zaxxer/hikari/util/ConcurrentBag;JLcom/zaxxer/hikari/util/ConcurrentBag;leakTaskFactory-Lcom/zaxxer/hikari/pool/ProxyLeakTaskFactory;suspendResumeLock*Lcom/zaxxer/hikari/util/SuspendResumeLock;houseKeepingExecutorService/Ljava/util/concurrent/ScheduledExecutorService;houseKeeperTask&Ljava/util/concurrent/ScheduledFuture;)Ljava/util/concurrent/ScheduledFuture<*>;#(Lcom/zaxxer/hikari/HikariConfig;)Vkl
morg/slf4j/LoggerFactoryo	getLogger%(Ljava/lang/Class;)Lorg/slf4j/Logger;qr
psBC	u%com.zaxxer.hikari.aliveBypassWindowMswjava/util/concurrent/TimeUnityMILLISECONDSLjava/util/concurrent/TimeUnit;{|	z}?toMillis(J)J??
z?java/lang/Long?getLong%(Ljava/lang/String;J)Ljava/lang/Long;??
??	longValue()J??
??LM	?'com.zaxxer.hikari.housekeeping.periodMs?SECONDS?|	z?NM	?8(Lcom/zaxxer/hikari/pool/HikariPool;Ljava/lang/String;)Vk?
?VW	?
After adding ?XW	?;(Lcom/zaxxer/hikari/util/ConcurrentBag$IBagStateListener;)Vk?
!?_`	?com/zaxxer/hikari/HikariConfig?isAllowPoolSuspension()Z??
??(com/zaxxer/hikari/util/SuspendResumeLock?()Vk?
??	FAUX_LOCK?e	??de	?%initializeHouseKeepingExecutorService1()Ljava/util/concurrent/ScheduledExecutorService;??
?fg	?
checkFailFast??
?getMetricsTrackerFactory3()Lcom/zaxxer/hikari/metrics/MetricsTrackerFactory;??
??setMetricsTrackerFactory4(Lcom/zaxxer/hikari/metrics/MetricsTrackerFactory;)V??
?getMetricRegistry()Ljava/lang/Object;??
??setMetricRegistry(Ljava/lang/Object;)V??
?getHealthCheckRegistry??
??setHealthCheckRegistry??
?handleMBeans'(Lcom/zaxxer/hikari/pool/HikariPool;Z)V??
?getThreadFactory&()Ljava/util/concurrent/ThreadFactory;??
??getMaximumPoolSize()I??
??(java/util/concurrent/LinkedBlockingQueue?(I)Vk?
??java/util/Collections?unmodifiableCollection.(Ljava/util/Collection;)Ljava/util/Collection;??
??YZ	?java/lang/StringBuilder?
??poolName?P	?append-(Ljava/lang/String;)Ljava/lang/StringBuilder;??
?? connection adder?toString()Ljava/lang/String;??
??
$?createThreadPoolExecutor?(Ljava/util/concurrent/BlockingQueue;Ljava/lang/String;Ljava/util/concurrent/ThreadFactory;Ljava/util/concurrent/RejectedExecutionHandler;)Ljava/util/concurrent/ThreadPoolExecutor;
7\]	 connection closer
)??(ILjava/lang/String;Ljava/util/concurrent/ThreadFactory;Ljava/util/concurrent/RejectedExecutionHandler;)Ljava/util/concurrent/ThreadPoolExecutor;

7^]	
+com/zaxxer/hikari/pool/ProxyLeakTaskFactorygetLeakDetectionThreshold?
?3(JLjava/util/concurrent/ScheduledExecutorService;)Vk
bc	K(Lcom/zaxxer/hikari/pool/HikariPool;Lcom/zaxxer/hikari/pool/HikariPool$1;)Vk
d-java/util/concurrent/ScheduledExecutorServicescheduleWithFixedDelay](Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture; !"hi	$"com.zaxxer.hikari.blockUntilFilled&java/lang/Boolean(
getBoolean(Ljava/lang/String;)Z*+
),getInitializationFailTimeout.?
?/java/lang/Runtime1
getRuntime()Ljava/lang/Runtime;34
25availableProcessors7?
28java/lang/Math:min(II)I<=
;>setMaximumPoolSize@?
&AsetCorePoolSizeC?
&D"com/zaxxer/hikari/util/ClockSourceFcurrentTimeH?GI"java/util/concurrent/ThreadFactoryK
elapsedMillisM?GNgetTotalConnectionsP?
QgetMinimumIdleS?
?TquietlySleep(J)VVW
7X	startTimethis#Lcom/zaxxer/hikari/pool/HikariPool;config Lcom/zaxxer/hikari/HikariConfig;
threadFactory$Ljava/util/concurrent/ThreadFactory;maxPoolSizeaddConnectionQueue@Ljava/util/concurrent/LinkedBlockingQueue;*Ljava/util/concurrent/LinkedBlockingQueue;
getConnection()Ljava/sql/Connection;java/sql/SQLExceptiongconnectionTimeoutiM	j(J)Ljava/sql/Connection;el
mjava/lang/InterruptedExceptionoacquireq?
?rborrow\(JLjava/util/concurrent/TimeUnit;)Lcom/zaxxer/hikari/util/ConcurrentBag$IConcurrentBagEntry;tu
!v com/zaxxer/hikari/pool/PoolEntryxisMarkedEvictedz?
y{lastAccessed}M	y~(JJ)JM?G?
connectionLjava/sql/Connection;??	y?isConnectionAlive(Ljava/sql/Connection;)Z??
?java/lang/String?closeConnection7(Lcom/zaxxer/hikari/pool/PoolEntry;Ljava/lang/String;)V??
?metricsTracker9Lcom/zaxxer/hikari/pool/PoolBase$IMetricsTrackerDelegate;??	?recordBorrowStats&(Lcom/zaxxer/hikari/pool/PoolEntry;J)V??;?scheduleJ(Lcom/zaxxer/hikari/pool/PoolEntry;)Lcom/zaxxer/hikari/pool/ProxyLeakTask;??
?createProxyConnection>(Lcom/zaxxer/hikari/pool/ProxyLeakTask;J)Ljava/sql/Connection;??
y?release??
??recordBorrowTimeoutStats?W;?createTimeoutException(J)Ljava/sql/SQLException;??
?java/lang/Thread?
currentThread()Ljava/lang/Thread;??
??	interrupt??
??, - Interrupted during connection acquisition?*(Ljava/lang/String;Ljava/lang/Throwable;)Vk?
h?java/lang/Throwable?	poolEntry"Lcom/zaxxer/hikari/pool/PoolEntry;nowtimeoute Ljava/lang/InterruptedException;hardTimeoutshutdownKE	?After shutdown ?logPoolState([Ljava/lang/String;)V??
?close??;?Before shutdown ?$java/util/concurrent/ScheduledFuture?cancel(Z)Z????softEvictConnections??
???
&?getLoginTimeout??
?awaitTermination#(JLjava/util/concurrent/TimeUnit;)Z??
&?"destroyHouseKeepingExecutorService??
?
!?]^	? connection assassinator?$java/util/concurrent/ExecutorService?abortActiveConnections)(Ljava/util/concurrent/ExecutorService;)V??
?
????shutdownNetworkTimeoutExecutor??
?startassassinExecutor&Ljava/util/concurrent/ExecutorService;evictConnection(Ljava/sql/Connection;)V&com/zaxxer/hikari/pool/ProxyConnection?cancelLeakTask??
??getPoolEntry$()Lcom/zaxxer/hikari/pool/PoolEntry;
?(connection evicted by user)java/sql/ConnectionisClosed	?
softEvictConnection8(Lcom/zaxxer/hikari/pool/PoolEntry;Ljava/lang/String;Z)Z
proxyConnection(Lcom/zaxxer/hikari/pool/ProxyConnection;#com.codahale.metrics.MetricRegistrysafeIsAssignableFrom'(Ljava/lang/Object;Ljava/lang/String;)Z
7Bcom/zaxxer/hikari/metrics/dropwizard/CodahaleMetricsTrackerFactory#com/codahale/metrics/MetricRegistry((Lcom/codahale/metrics/MetricRegistry;)Vk
+io.micrometer.core.instrument.MeterRegistryDcom/zaxxer/hikari/metrics/micrometer/MicrometerMetricsTrackerFactory!+io/micrometer/core/instrument/MeterRegistry#0(Lio/micrometer/core/instrument/MeterRegistry;)Vk%
"&metricRegistryLjava/lang/Object;getPoolName*?
?+getPoolStats'()Lcom/zaxxer/hikari/metrics/PoolStats;-.
//com/zaxxer/hikari/metrics/MetricsTrackerFactory1created(Ljava/lang/String;Lcom/zaxxer/hikari/metrics/PoolStats;)Lcom/zaxxer/hikari/metrics/IMetricsTracker;3425.(Lcom/zaxxer/hikari/metrics/IMetricsTracker;)Vk7
,8
/?metricsTrackerFactory1Lcom/zaxxer/hikari/metrics/MetricsTrackerFactory;/com/codahale/metrics/health/HealthCheckRegistry=:com/zaxxer/hikari/metrics/dropwizard/CodahaleHealthChecker?registerHealthChecksw(Lcom/zaxxer/hikari/pool/HikariPool;Lcom/zaxxer/hikari/HikariConfig;Lcom/codahale/metrics/health/HealthCheckRegistry;)VAB
@ChealthCheckRegistry
addBagItemjava/util/CollectionGsizeI?HJsubmit>(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future;LM
&N0{} - Add connection elided, waiting {}, queue {}Pjava/lang/ObjectRjava/lang/IntegerTvalueOf(I)Ljava/lang/Integer;VW
UXorg/slf4j/LoggerZdebug((Ljava/lang/String;[Ljava/lang/Object;)V\][^waiting	shouldAddZgetActiveConnectionsgetCount(I)Ide
!fgetIdleConnections
!JgetThreadsAwaitingConnectiongetWaitingThreadCountk?
!lvalues()Ljava/util/List;no
!p?lambda$softEvictConnections$0%(Lcom/zaxxer/hikari/pool/PoolEntry;)Vst
uvt"java/lang/invoke/LambdaMetafactoryymetafactory?(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;{|
z}~acceptB(Lcom/zaxxer/hikari/pool/HikariPool;)Ljava/util/function/Consumer;???java/util/List?forEach (Ljava/util/function/Consumer;)V????suspendPooljava/lang/IllegalStateException? - is not suspendable?(Ljava/lang/String;)Vk?
??suspend??
??
resumePoolfillPool??
?resume??
??isDebugEnabled??[?7{} - {}stats (total={}, active={}, idle={}, waiting={})?[Ljava/lang/String;?[Ljava/lang/Object;??c?
?h?
?j?
?prefixrecyclerecordConnectionUsage?t;?requite=(Lcom/zaxxer/hikari/util/ConcurrentBag$IConcurrentBagEntry;)V??
!?remove=(Lcom/zaxxer/hikari/util/ConcurrentBag$IConcurrentBagEntry;)Z??
!??f
y??lambda$closeConnection$1*(Ljava/sql/Connection;Ljava/lang/String;)V??
??run`(Lcom/zaxxer/hikari/pool/HikariPool;Ljava/sql/Connection;Ljava/lang/String;)Ljava/lang/Runnable;???execute(Ljava/lang/Runnable;)V??
&?
closureReasongetPoolStateCounts()[IgetStateCounts??
!?createPoolEntryjava/lang/Exception?newPoolEntry?
?getMaxLifetime??
??'&java/util/concurrent/ThreadLocalRandom?current*()Ljava/util/concurrent/ThreadLocalRandom;??
??(nextLong??
??H(Lcom/zaxxer/hikari/pool/HikariPool;Lcom/zaxxer/hikari/pool/PoolEntry;)Vk?
?\(Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;???setFutureEol)(Ljava/util/concurrent/ScheduledFuture;)V??
y?getKeepaliveTime??
??
?setKeepalive??
y?={} - Error thrown while acquiring connection from data source?getCause()Ljava/lang/Throwable;??
?error9(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V??[?lastConnectionFailure-Ljava/util/concurrent/atomic/AtomicReference;	+java/util/concurrent/atomic/AtomicReferenceset?
/{} - Cannot acquire connection from data source
\?[variancelifetime
heartbeatTimemaxLifetime
keepaliveTime:Lcom/zaxxer/hikari/pool/PoolBase$ConnectionSetupException;Ljava/lang/Exception;4{} - Fill pool skipped, pool is at sufficient level.'(Ljava/lang/String;Ljava/lang/Object;)V\[java/util/concurrent/CallableiconnectionsToAdd(I)Ljava/util/List;n
!iterator()Ljava/util/Iterator;!"?#java/util/Iterator%hasNext'?&(next*?&+abort"(Ljava/util/concurrent/Executor;)V-./$(connection aborted during shutdown)1quietlyCloseConnection3?
4Ljava/lang/Throwable;?
7add9?
!:{} - Added connection {}<7(initialization check complete and minimumIdle is zero)>getLastConnectionFailure()Ljava/lang/Exception;@A
B
?? throwPoolInitializationException(Ljava/lang/Throwable;)VEF
GinitializationTimeout*{} - Exception during pool initialization.JkF
LtmarkEvictedO?
yPreserveR?
!SreasonownergetScheduledExecutorW?
?Xjava/util/OptionalZ
ofNullable((Ljava/lang/Object;)Ljava/util/Optional;\]
[^?.lambda$initializeHouseKeepingExecutorService$2a?
bc?getB(Lcom/zaxxer/hikari/pool/HikariPool;)Ljava/util/function/Supplier;fgh	orElseGet1(Ljava/util/function/Supplier;)Ljava/lang/Object;jk
[l0java/util/concurrent/ScheduledThreadPoolExecutorn
2?W(ILjava/util/concurrent/ThreadFactory;Ljava/util/concurrent/RejectedExecutionHandler;)Vkq
or1setExecuteExistingDelayedTasksAfterShutdownPolicy(Z)Vtu
ovsetRemoveOnCancelPolicyxu
oyexecutor2Ljava/util/concurrent/ScheduledThreadPoolExecutor;shutdownNow}o~'(Lcom/zaxxer/hikari/pool/HikariPool;J)Vk?
?Timeout failure ?recordConnectionTimeout??;?getSQLState??
h?(java/sql/SQLTransientConnectionException?8 - Connection is not available, request timed out after ?(J)Ljava/lang/StringBuilder;??
??ms.?<(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)Vk?
??setNextException(Ljava/sql/SQLException;)V??
h?sqlStateoriginalExceptionconnectionExceptionLjava/sql/SQLException;getUnwrappedDataSource()Ljavax/sql/DataSource;??
?
? housekeeper?(Ljava/lang/String;Z)Vk?
5?(connection evicted)?
access$100G(Lcom/zaxxer/hikari/pool/HikariPool;)Lcom/zaxxer/hikari/pool/PoolEntry;x0
access$200K(Lcom/zaxxer/hikari/pool/HikariPool;)Lcom/zaxxer/hikari/util/ConcurrentBag;
access$3007(Lcom/zaxxer/hikari/pool/HikariPool;)Lorg/slf4j/Logger;
access$400&(Lcom/zaxxer/hikari/pool/HikariPool;)J
access$500R(Lcom/zaxxer/hikari/pool/HikariPool;)Lcom/zaxxer/hikari/pool/ProxyLeakTaskFactory;
access$600&(Lcom/zaxxer/hikari/pool/HikariPool;)V
access$700[(Lcom/zaxxer/hikari/pool/HikariPool;Lcom/zaxxer/hikari/pool/PoolEntry;Ljava/lang/String;Z)Zx1x2x3
ConstantValue	SignatureCode
StackMapTableLineNumberTableLocalVariableTableLocalVariableTypeTable
ExceptionsInnerClasses
SourceFileBootstrapMethods1BCDE?FGE?HIE?JAKELMNMOP?RSP?UVWXWYZ?[\]^]_`?abcdefghi?j*kl???*+?n*?t?v*x?~????????*????????????*?Y*????*?Y*?????*?!Y*????*+???
??Y???????**????*??+???*+?Ķȧ*+?̶?*+?Ӷ?**??+??M+??>??Y??:*????*??Y??*?????????,?$Y???*??Y??*????????,?)Y?	??*?Y+?*????**???Y*?*???~?#?%'?-?l+?0
??c*??6?9???B*??6?9???E?J7?O+?0??*?R+?U??~???Y???*??E*??B??@?q???? ???L?&??? lIQ#R8WEXSn_owqs?u?v?y?|?~?????????????)?I?[?m?????????????>?7ZM?[\?]^?_`?aE??bd???bcef?3	**?k?n????	[\?hel? ?*???s?JB7*???~?w?y:??}?J7?|?!???*????/*?????#*?|?R?U??!?Oe7?+*??!??*?????:
*????
?	???p*??!??*!???:?????hY??Y??*????????????:*???????p???p??????Z
??y?*?yy?yy?
?'?ph??Z?????$?'?,?R?g?r?~??????????????????????H{??,n?M??M?'???[\??M?ZM?h!???|S*??*??!*??Y?S??**??*?????*??Y?S??*?%?*?%??W*?%*??*???*?*?ݲ???W*??*????*????Y??*????????*??޻)Y?	?L?JA*+??*??*?R? ?O????????+??+????W?:+??+????W?*??*???*?????W*??Y?S??**??*?????%:*??Y?S??**??*????????????0*0020?!*$?X?? U??8?!??(?? )?*?8???J?O?S?Z?i?m?t??????????????????????????????$-0@FOR? ?!?M?l??S[\?p????(+??M,?*,?+????W?N?	#&h?:??y???y?Fh?	#&'? ([\(??#????F+?+??*?Y+???ȧ(+?+ ??*?"Y+?$?'?ȧ*?ȱ? ?"# %.&@)E+?F[\F()???y/+?"*?,Y+*??,*?0?6?9???*?/Y?:????#
?45#8.:?/[\/;<???V+?**??+?>?D???DEG?[\E)F???U*??Kd??=?*?*???OW?0*?vQ?SY*??SY?YSY*??K?YS?_??
@?,?QRS'VTX? U[\U`EAabc??3	*???g??b?	[\h??3	*???g??i?	[\P??2*???i??p?[\j??2*???m??w?[\???A*???q*??????
~?[\!????>*?????"??Y??Y??*????????????*???*????*?ı?)??
?)?1?8?=??>[\!???\*???*??*??*?????????
????[\?????^*?v???T*?v??SY*??SY+??	+2??SY*?R?YSY*???YSY*???YSY*???YS?_??:?,?[?????[???S-???!?3?X?]??^[\^???t?O*??+??*??+?????
???[\?????} *??+???+??N*?*-,???ɱ???????*?? [\ ?? ?P???2*???ϰ???[\???
?*??L*???A 	??= ٔ??? ?m??	7 e7+*???Y*+???~????*???7	??5???m??7e7+*???Y*+???~?#??+?L*?Ě*?v?*??+???*?+?	?L*?Ě*?v*??+?
???????#?)y@"?A?#B??V??
??,?2?M?V?]?k?r??????????????????????f
,!M2Mk$MrM???
?MV;M?#????[\"????b*???*?Rd*??U*??d??*??Kd<?*?v*???=?#*?d?
*???*???OW???ޱ?#?:?V&?&?	?&:A	[a? <%Eb[\&<E???7d*??? ?$M,?)?O,?,?yN-??:+?0*??-??W?(:*2?5*??-??W?:*??-??W?????'/;?'/R;FRRTR?+?&?,?&y?V??
??6
!'/8;=FOR]`c ?4=	?6'9??!???d[\d?????5?*??0@	????JB*?8:?;*??U?$*???;*?v=*?????
?*????5?*?C??**?C?D?H??
???Y!?O????	??**?C?H?????5y? ?J*+,/123(415I8U;V>`?kBuC~E?F?H?*\???[\?IMzZMEF?Z*?vK*??+?*??Y+?M??RST?[\N6
?+?Q?*??+?T?*+,??????fghil?*[\??UPVb????F*??Y?7*??޸_*?i?m?LL?oY+?2Y?p?sM,?w,?z,?*??Y??>?x
y!z2{7|<}>?? !_`2{|F[\???P*??Y?
*???W????
???[\-.?:?Y*??
????????[\???u*??Y?S??*????N*?C:?h??h??N??Y??Y??*????????O???????-??:?h?
?h?????0???Ah?*
?????'?0?`?h?r??4u[\uZM\?PV?6`??A???/*????G?[\A???/*????G?[\a??J ?5Y??Y??*?????????????y? [\???e*+,?5*?Ě*???????
??? [\???Pst??*+??W??~?[\?????/*?8??G??\???/*????G??\???/*?v??G??\???/*????G??\???/*???G??\???/*????G??\???P*+,???G?*?\???P?b??	!"	$&'	)&*	,-/02&3	578!9	;<>@A?	? rwx???`de




© 2015 - 2024 Weber Informatics LLC | Privacy Policy