46 23 4 5 6 7 8 9 : ;< 2= >? @ A B CDE F GHIJ K L MN OP @ QR ST G@U OVWX ,Y &Q Z &[\ ] ^ _` abc de f g hijkl :Qm no np q ,r s 2tuvw F2 x \y Fz \{| \}~ N \          L \  :  \ L    F  \ N  N s2 u2 u x        M O u    2  OResult InnerClassesthreadPoolExecutor)Ljava/util/concurrent/ThreadPoolExecutor; minTimeoutForParallelConnectionsI ConstantValuesocketFinderlockLjava/lang/Object;parentThreadLockresult2Lcom/microsoft/sqlserver/jdbc/SocketFinder$Result;noOfSpawnedThreadsnoOfThreadsThatNotifiedselectedSocketLjava/net/Socket;selectedExceptionLjava/io/IOException;loggerLjava/util/logging/Logger;traceIDLjava/lang/String;ipAddressLimit@conn2Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;$assertionsDisabledZG(Ljava/lang/String;Lcom/microsoft/sqlserver/jdbc/SQLServerConnection;)VCodeLineNumberTableLocalVariableTablethis+Lcom/microsoft/sqlserver/jdbc/SocketFinder; callerTraceIDsqlServerConnection findSocket+(Ljava/lang/String;IIZZZI)Ljava/net/Socket;inetAddrLjava/net/InetAddress; loggingStringLjava/lang/StringBuilder;formLjava/text/MessageFormat;msgArgs[Ljava/lang/Object;errorStrmessage inetAddrs[Ljava/net/InetAddress;ex Ljava/lang/InterruptedException;hostName portNumbertimeoutInMilliSeconds useParalleluseTnirisTnirFirstAttempt#timeoutInMilliSecondsForFullTimeout StackMapTable ExceptionsfindSocketUsingJavaNIO([Ljava/net/InetAddress;II)VsChannel!Ljava/nio/channels/SocketChannel;opskey Ljava/nio/channels/SelectionKey;ch connected selectedKeysLjava/util/Set; keyIteratorLjava/util/Iterator; timeRemainingJ readyChannelstimerNow timerExpirenoOfOutstandingChannelssselectorLjava/nio/channels/Selector;socketChannelsLjava/util/LinkedList;selectedChannelLocalVariableTypeTable1Ljava/util/Set;6Ljava/util/Iterator;9Ljava/util/LinkedList;getDefaultSocket'(Ljava/lang/String;II)Ljava/net/Socket;addrLjava/net/InetSocketAddress;getConnectedSocket+(Ljava/net/InetAddress;II)Ljava/net/Socket;0(Ljava/net/InetSocketAddress;I)Ljava/net/Socket;findSocketUsingThreadinginetSocketAddresssocketConnector.Lcom/microsoft/sqlserver/jdbc/SocketConnector; inetAddressscsocketssocketConnectors)Ljava/util/LinkedList;FLjava/util/LinkedList; getResult4()Lcom/microsoft/sqlserver/jdbc/SocketFinder$Result;close(Ljava/nio/channels/Selector;)Ve(Ljava/net/Socket;)Vsocket$(Ljava/nio/channels/SocketChannel;)V socketChannel updateResult;(Ljava/net/Socket;Ljava/io/IOException;Ljava/lang/String;)V exceptionthreadIdupdateSelectedException*(Ljava/io/IOException;Ljava/lang/String;)VtraceIdupdatedExceptiontoString()Ljava/lang/String;()V SourceFile IOBuffer.java /java/lang/Object  java/lang/StringBuilder SocketFinder( ) ,- java/lang/AssertionError)The driver does not allow a time out of 0  )com/microsoft/sqlserver/jdbc/SocketFinder0com/microsoft/sqlserver/jdbc/SQLServerConnection       Total no of InetAddresses:  . They are: ; java/text/MessageFormat'R_ipAddressLimitWithMultiSubnetFailover  , /com/microsoft/sqlserver/jdbc/SQLServerException    Using Java NIO with timeout: Using Threading with timeout:   0 The parent thread updated the result to failureg There is no selectedException. The wait calls timed out before any connect call returned or timed out.R_connectionTimedOutjava/io/IOExceptionjava/lang/InterruptedException  /   1Bug in code. Selected Socket cannot be null here.The timeout cannot be zero;Number of inetAddresses should not be zero in this functionjava/util/LinkedList    java/nio/channels/SelectionKey java/net/InetSocketAddress  " initiated connection to address:  , portNumber:      no of channels ready:     java/nio/channels/SocketChannel processing the channel : finishConnect on channel: cannot be false selected the channel : the exception:  with message: -( occurred while processing the channel: () / / /  " !  timeout cannot be zero java/net/UnknownHostExceptionjava/net/Socket  ,com/microsoft/sqlserver/jdbc/SocketConnector ! "# TimeRemaining: $ ; Result:; Max. open thread count: %&; Current open thread count: '& () The parent thread wokeup.: Closing Selector *4: Ignored the following error while closing Selector +,: Closing TCP socket:2: Ignored the following error while closing socket: Closing TCP socket channel:7Ignored the following error while closing socketChannel;The following child thread is waiting for socketFinderLock:5The following child thread acquired socketFinderLock:3The socket of the following thread has been chosen:;The following child thread is waiting for parentThreadLock:5The following child thread acquired parentThreadLock: -/TThe following child thread released parentThreadLock and notified the parent thread:5The following child thread released socketFinderLock:java/net/SocketTimeoutExceptionBThe selected exception is updated to the following: ExceptionType:; ExceptionMessage:; by the following thread:. /'java/util/concurrent/ThreadPoolExecutorjava/lang/Integer0 12%java/util/concurrent/SynchronousQueue 33com.microsoft.sqlserver.jdbc.internals.SocketFinder 450com/microsoft/sqlserver/jdbc/SocketFinder$Resultjava/lang/Stringjava/lang/Throwablejava/nio/channels/Selector java/util/Setjava/util/IteratorUNKNOWNappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;(Ljava/lang/Object;)Vjava/net/InetAddress getAllByName+(Ljava/lang/String;)[Ljava/net/InetAddress;java/util/logging/LevelFINERLjava/util/logging/Level;java/util/logging/Logger isLoggable(Ljava/util/logging/Level;)Z(Ljava/lang/String;)V(I)Ljava/lang/StringBuilder;finer getErrString&(Ljava/lang/String;)Ljava/lang/String;(I)Ljava/lang/String;format&(Ljava/lang/Object;)Ljava/lang/String; terminate(ILjava/lang/String;)Vjava/lang/Mathmax(II)I!com/microsoft/sqlserver/jdbc/UtilisIBM()Zequals(Ljava/lang/Object;)ZFAILUREjava/lang/Thread currentThread()Ljava/lang/Thread; interrupt+ConvertConnectExceptionToSQLServerException](Ljava/lang/String;ILcom/microsoft/sqlserver/jdbc/SQLServerConnection;Ljava/lang/Exception;)VSUCCESSopen()Ljava/nio/channels/Selector;#()Ljava/nio/channels/SocketChannel;addconfigureBlocking((Z)Ljava/nio/channels/SelectableChannel;register?(Ljava/nio/channels/Selector;I)Ljava/nio/channels/SelectionKey;(Ljava/net/InetAddress;I)Vconnect(Ljava/net/SocketAddress;)Z-(Ljava/lang/Object;)Ljava/lang/StringBuilder;java/lang/SystemcurrentTimeMillis()Jselect(J)I()Ljava/util/Set;iterator()Ljava/util/Iterator;hasNextnext()Ljava/lang/Object;channel'()Ljava/nio/channels/SelectableChannel; finishConnectgetClass()Ljava/lang/Class; getMessagecancelremove()Ljava/net/Socket;(Ljava/lang/String;I)V isUnresolved(Ljava/net/SocketAddress;I)V\(Ljava/net/Socket;Ljava/net/InetSocketAddress;ILcom/microsoft/sqlserver/jdbc/SocketFinder;)Vexecute(Ljava/lang/Runnable;)V(J)Ljava/lang/StringBuilder;getLargestPoolSize()IgetActiveCountwait(J)VFINElogC(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V notifyAlljava/lang/ClassdesiredAssertionStatusjava/util/concurrent/TimeUnitSECONDSLjava/util/concurrent/TimeUnit;I(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;)V getLogger.(Ljava/lang/String;)Ljava/util/logging/Logger;0BBBW**Y*Y**** * * Y  +*,. !&+05QV WWW Y:+:@ 6>$ *+ *+d Y*:   W !W "W:  6 6     2:   #$W ߲ %@3&Y'(): Y@*S:   +: * -*2.ܸ/>0:# Y *1!%*27# Y *3!%*4*5U*Y: *52*6 Y *7% ç : *65K* ? Y *8%9(: *:Y ; * 6:=>** ?+*@:** ?+*@*A5 YB* YC* RG<S_G<`G<DG<Re:S_e:`e:De:?   ! ' 4 7 : ? I S X !` 'l (y ) * + - . - 1 4 5 6 7 8 ; > @ B C% D1 EQ G\ Ih J L S T U V W X [ b c d e+ h2 i? kD G nI pO rW sb e tg uo z    yT "  2 -IgS  =  # 79 +PE;B<]:,f YD+ YE:FYG::H:+:66  y 2: I:  JW KW6   M:  NY OPW- Y *Q RS!% T7a7 +6  e7   w U6$ Y *V!%4W:X:YZL:[\:$ Y *]R%6^6)$Y Y _R`:$ Y *aR%m:> Y *bcRdefR%**ghij T7t*kl:YZ\: *mݧF:*m:*kl:YZ\: *mKW*n *A:8d:8d&I  ) , 5 8 = V [ c j n y  & + 2 ; E Q [ g           % 8 ; E J O V Y \ a d j                   ![d nQ yF Vi VQ[2*;! h     ,58 2*;!5 F\v5 LL\50B:H: F\F\  "B:JF\ "F\:  iNY+o:*p  / 04   :iNY+O:*p  5 64   :< Yq+r sYt*uYv * +w*  : ; <# =. >7 ? <<  <:> YD+ YEFYG:FYG:*++:66D2: uYv:  JWNY O: xY  *y:  JW*Y:l:YZx:z{T7a7  e7 L Y *| }~*Rz!z!% L*5<*  Y *%T7Wç :  l:Y!Zu:* *?ۧ7:l:Y!Zu:* *?* *A;- D F) H2 I; NA OZ Pc Qk Sw U W O [ \ ] ^ ` a e g h i j) h, x@ yC {L }X ~t y |              c+ w  Z4   2;2;" FFG [0E $BFF $FF :</* b+_ Y *%+0M# Y *,-14:&   - 1 4 5 A a 5,bb-F:, f+c# Y *+R%+0M# Y *,158:&   1 5 8 9 E e 9,ff!1F:,"f+c# Y *+R%+h0M# Y *,158:&   1 5 8 9 E e 9,ff#1F:,$%*5 Y -%*Y:² Y -%*5I,;* 4*+ *A Y -%, *,-g*Y`***5 *6*5 Y -%*Y:² Y -%*ç : Y -%ç : Y -%DGGLG:wzzz~  2 : F _ l w |    ! : A O "[ #t ( * + /*!&'% 2,H (1,L$E$()c>* +* *+ >@4 Y +cR+e,%* B C E F! I% J1 KM L_ Kb O*ccc*a+ @,-/* W ./^ 3YYz* @01 @