@@ -66,34 +66,35 @@ public void CreateDatabaseWhileTryingToConnect(string cnnString, SqlRetryLogicBa
6666            using  ( var  cnn1  =  new  SqlConnection ( new  SqlConnectionStringBuilder ( cnnString )  {  ConnectTimeout  =  60 ,  Pooling  =  false  } . ConnectionString ) ) 
6767            { 
6868                cnn1 . Open ( ) ; 
69-                 Task  createDBTask  =  null ; 
70-                 try 
69+                 using  ( var  cmd  =  cnn1 . CreateCommand ( ) ) 
7170                { 
72-                     provider . Retrying  +=  ( s ,  e )  => 
71+                     Task  createDBTask  =  null ; 
72+                     try 
7373                    { 
74-                         currentRetries  =  e . RetryCount ; 
75-                         using  ( var  cmd  =  cnn1 . CreateCommand ( ) ) 
74+                         provider . Retrying  +=  ( s ,  e )  => 
7675                        { 
76+                             currentRetries  =  e . RetryCount ; 
7777                            // Try to create database just after first faliure. 
7878                            if  ( createDBTask  ==  null  ||  createDBTask . Status  ==  TaskStatus . Faulted ) 
7979                            { 
80+                                 Console . WriteLine ( $ "createDBTask.Status:{ createDBTask ? . Status } ") ; 
8081                                cmd . CommandText  =  $ "IF (NOT EXISTS(SELECT 1 FROM sys.databases WHERE name = '{ database } ')) CREATE DATABASE [{ database } ];"; 
8182                                createDBTask  =  cmd . ExecuteNonQueryAsync ( ) ; 
8283                            } 
83-                         } 
84-                     } ; 
84+                         } ; 
8585
86-                     using  ( var  cnn2  =  new  SqlConnection ( builder . ConnectionString ) ) 
86+                         using  ( var  cnn2  =  new  SqlConnection ( builder . ConnectionString ) ) 
87+                         { 
88+                             cnn2 . RetryLogicProvider  =  provider ; 
89+                             cnn2 . Open ( ) ; 
90+                         } 
91+                     } 
92+                     finally 
8793                    { 
88-                         cnn2 . RetryLogicProvider   =   provider ; 
89-                         cnn2 . Open ( ) ; 
94+                         createDBTask ? . Wait ( ) ; 
95+                         DataTestUtility . DropDatabase ( cnn1 ,   database ) ; 
9096                    } 
9197                } 
92-                 finally 
93-                 { 
94-                     createDBTask ? . Wait ( ) ; 
95-                     DataTestUtility . DropDatabase ( cnn1 ,  database ) ; 
96-                 } 
9798            } 
9899            Assert . True ( currentRetries  >  0 ) ; 
99100        } 
0 commit comments