List:Commits« Previous MessageNext Message »
From:Reggie Burnett Date:June 29 2011 8:23pm
Subject:bzr commit into connector-net-6.1 branch (reggie.burnett:905)
View as plain text  
#At file:///C:/Users/Reggie/work/connector-net/6.1/ based on revid:reggie.burnett@strippedvfe0cwumjd

  905 Reggie Burnett	2011-06-29
      updated a few tests, back ported a few fixes, update changelog and version #

    modified:
      CHANGES
      MySql.Data.Entity/Tests/Properties/SQLSyntax.Designer.cs
      MySql.Data.Entity/Tests/Properties/SQLSyntax.resx
      MySql.Data/Provider/Properties/VersionInfo.cs
      MySql.Data/Provider/Source/ISSchemaProvider.cs
      MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs
      MySql.Data/Provider/Source/StoredProcedure.cs
      MySql.Data/Provider/Source/datareader.cs
      MySql.Data/Tests/Source/ConnectionTests.cs
      MySql.Data/Tests/Source/PoolingTests.cs
      MySql.Web/Tests/SchemaTests.cs
=== modified file 'CHANGES'
=== modified file 'CHANGES'
--- a/CHANGES	2011-06-27 20:33:00 +0000
+++ b/CHANGES	2011-06-29 20:23:15 +0000
@@ -1,3 +1,4 @@
+Version 6.1.6
 - Added MySqlHelper.ExecuteReader that takes an external connection and array of paramters (bug #56755)
 - Handle MySqlCommand.CommandTimeout = 0 properly (Bug #57265)
 - Do not call AcceptChanged on tables in MySqlDataAdapter.Update(),

=== modified file 'MySql.Data.Entity/Tests/Properties/SQLSyntax.Designer.cs'
--- a/MySql.Data.Entity/Tests/Properties/SQLSyntax.Designer.cs	2011-06-09 13:24:33 +0000
+++ b/MySql.Data.Entity/Tests/Properties/SQLSyntax.Designer.cs	2011-06-29 20:23:15 +0000
@@ -1,7 +1,7 @@
 //------------------------------------------------------------------------------
 // <auto-generated>
 //     This code was generated by a tool.
-//     Runtime Version:2.0.50727.5444
+//     Runtime Version:2.0.50727.5446
 //
 //     Changes to this file may cause incorrect behavior and will be lost if
 //     the code is regenerated.
@@ -94,7 +94,8 @@
         ///   Looks up a localized string similar to SELECT
         ///GroupBy1.A1 AS C1
         ///FROM (SELECT
-        ///Avg(Extent1.Freight) AS A1
+        ///Extent2.Id AS K1, 
+        ///AVG(Extent1.Freight) AS A1
         ///FROM Orders AS Extent1 LEFT OUTER JOIN Stores AS Extent2 ON Extent1.StoreId = Extent2.Id
         /// GROUP BY 
         ///Extent2.Id) AS GroupBy1.
@@ -368,7 +369,8 @@
         ///   Looks up a localized string similar to SELECT
         ///GroupBy1.A1 AS C1
         ///FROM (SELECT
-        ///Max(Extent1.Freight) AS A1
+        ///Extent2.Id AS K1, 
+        ///MAX(Extent1.Freight) AS A1
         ///FROM Orders AS Extent1 LEFT OUTER JOIN Stores AS Extent2 ON Extent1.StoreId = Extent2.Id
         /// GROUP BY 
         ///Extent2.Id) AS GroupBy1.
@@ -411,7 +413,8 @@
         ///   Looks up a localized string similar to SELECT
         ///GroupBy1.A1 AS C1
         ///FROM (SELECT
-        ///Min(Extent1.Freight) AS A1
+        ///Extent2.Id AS K1, 
+        ///MIN(Extent1.Freight) AS A1
         ///FROM Orders AS Extent1 LEFT OUTER JOIN Stores AS Extent2 ON Extent1.StoreId = Extent2.Id
         /// GROUP BY 
         ///Extent2.Id) AS GroupBy1.
@@ -708,6 +711,7 @@
         ///   Looks up a localized string similar to SELECT
         ///GroupBy1.A1 AS C1
         ///FROM (SELECT
+        ///Extent2.Id AS K1, 
         ///SUM(Extent1.Freight) AS A1
         ///FROM Orders AS Extent1 LEFT OUTER JOIN Stores AS Extent2 ON Extent1.StoreId = Extent2.Id
         /// GROUP BY 

=== modified file 'MySql.Data.Entity/Tests/Properties/SQLSyntax.resx'
--- a/MySql.Data.Entity/Tests/Properties/SQLSyntax.resx	2011-06-09 13:24:33 +0000
+++ b/MySql.Data.Entity/Tests/Properties/SQLSyntax.resx	2011-06-29 20:23:15 +0000
@@ -139,7 +139,8 @@
     <value>SELECT
 GroupBy1.A1 AS C1
 FROM (SELECT
-Avg(Extent1.Freight) AS A1
+Extent2.Id AS K1, 
+AVG(Extent1.Freight) AS A1
 FROM Orders AS Extent1 LEFT OUTER JOIN Stores AS Extent2 ON Extent1.StoreId = Extent2.Id
  GROUP BY 
 Extent2.Id) AS GroupBy1</value>
@@ -331,7 +332,8 @@
     <value>SELECT
 GroupBy1.A1 AS C1
 FROM (SELECT
-Max(Extent1.Freight) AS A1
+Extent2.Id AS K1, 
+MAX(Extent1.Freight) AS A1
 FROM Orders AS Extent1 LEFT OUTER JOIN Stores AS Extent2 ON Extent1.StoreId = Extent2.Id
  GROUP BY 
 Extent2.Id) AS GroupBy1</value>
@@ -356,7 +358,8 @@
     <value>SELECT
 GroupBy1.A1 AS C1
 FROM (SELECT
-Min(Extent1.Freight) AS A1
+Extent2.Id AS K1, 
+MIN(Extent1.Freight) AS A1
 FROM Orders AS Extent1 LEFT OUTER JOIN Stores AS Extent2 ON Extent1.StoreId = Extent2.Id
  GROUP BY 
 Extent2.Id) AS GroupBy1</value>
@@ -563,6 +566,7 @@
     <value>SELECT
 GroupBy1.A1 AS C1
 FROM (SELECT
+Extent2.Id AS K1, 
 SUM(Extent1.Freight) AS A1
 FROM Orders AS Extent1 LEFT OUTER JOIN Stores AS Extent2 ON Extent1.StoreId = Extent2.Id
  GROUP BY 

=== modified file 'MySql.Data/Provider/Properties/VersionInfo.cs'
--- a/MySql.Data/Provider/Properties/VersionInfo.cs	2010-08-26 19:00:05 +0000
+++ b/MySql.Data/Provider/Properties/VersionInfo.cs	2011-06-29 20:23:15 +0000
@@ -37,5 +37,5 @@
 // You can specify all the values or you can default the Revision and Build Numbers 
 // by using the '*' as shown below:
 
-[assembly: AssemblyVersion("6.1.5")]
+[assembly: AssemblyVersion("6.1.6")]
 

=== modified file 'MySql.Data/Provider/Source/ISSchemaProvider.cs'
--- a/MySql.Data/Provider/Source/ISSchemaProvider.cs	2011-05-10 23:12:53 +0000
+++ b/MySql.Data/Provider/Source/ISSchemaProvider.cs	2011-06-29 20:23:15 +0000
@@ -190,9 +190,19 @@
         /// <returns></returns>
         public override DataTable GetProcedures(string[] restrictions)
         {
-            if (connection.Settings.UseProcedureBodies)
-                return base.GetProcedures(restrictions); 
-            
+            try
+            {
+                if (connection.Settings.HasProcAccess)
+                    return base.GetProcedures(restrictions);
+            }
+            catch (MySqlException ex)
+            {
+                if (ex.Number == (int)MySqlErrorCode.TableAccessDenied)
+                    connection.Settings.HasProcAccess = false;
+                else
+                    throw;
+            }
+
             string[] keys = new string[4];
             keys[0] = "ROUTINE_CATALOG";
             keys[1] = "ROUTINE_SCHEMA";

=== modified file 'MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs'
--- a/MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs	2011-03-03 17:57:57 +0000
+++ b/MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs	2011-06-29 20:23:15 +0000
@@ -62,6 +62,7 @@
         bool useAffectedRows;
         bool oldGuids;
         uint keepalive;
+        bool hasProcAccess = true;
 
         static MySqlConnectionStringBuilder()
         {
@@ -1072,6 +1073,12 @@
 
         #region Internal Properties
 
+        internal bool HasProcAccess
+        {
+            get { return hasProcAccess; }
+            set { hasProcAccess = value; }
+        }
+
         internal Regex BlobAsUTF8IncludeRegex
         {
             get

=== modified file 'MySql.Data/Provider/Source/StoredProcedure.cs'
--- a/MySql.Data/Provider/Source/StoredProcedure.cs	2010-10-06 20:39:21 +0000
+++ b/MySql.Data/Provider/Source/StoredProcedure.cs	2011-06-29 20:23:15 +0000
@@ -271,7 +271,7 @@
             if (outSelect.Length == 0) return null;
 
             MySqlCommand cmd = new MySqlCommand("SELECT " + outSelect, Connection);
-
+            cmd.InternallyCreated = true;
             MySqlDataReader reader = cmd.ExecuteReader();
             // since MySQL likes to return user variables as strings
             // we reset the types of the readers internal value objects

=== modified file 'MySql.Data/Provider/Source/datareader.cs'
--- a/MySql.Data/Provider/Source/datareader.cs	2011-04-04 19:56:04 +0000
+++ b/MySql.Data/Provider/Source/datareader.cs	2011-06-29 20:23:15 +0000
@@ -942,7 +942,15 @@
             string dummyStatement = "SELECT * FROM bogus_table LIMIT 0"; /* dummy query used to clear kill flag */
             MySqlCommand dummyCommand = new MySqlCommand(dummyStatement, connection);
             dummyCommand.InternallyCreated = true;
-            IDataReader reader = dummyCommand.ExecuteReader(); // ExecuteReader catches the exception and returns null, which is expected.
+            try
+            {
+                IDataReader reader = dummyCommand.ExecuteReader(); // ExecuteReader catches the exception and returns null, which is expected.
+            }
+            catch (MySqlException ex)
+            {
+                if (ex.Number != (int)MySqlErrorCode.NoSuchTable) throw;
+            }
+
         }
 
 		#region IEnumerator

=== modified file 'MySql.Data/Tests/Source/ConnectionTests.cs'
--- a/MySql.Data/Tests/Source/ConnectionTests.cs	2011-06-01 20:14:44 +0000
+++ b/MySql.Data/Tests/Source/ConnectionTests.cs	2011-06-29 20:23:15 +0000
@@ -459,7 +459,7 @@
         [Test]
         public void PingWhileReading()
         {
-            MySqlCommand command = new MySqlCommand("USE mysql; SELECT * FROM help_topic", conn);
+            MySqlCommand command = new MySqlCommand("SELECT 1", conn);
 
             using (MySqlDataReader reader = command.ExecuteReader())
             {

=== modified file 'MySql.Data/Tests/Source/PoolingTests.cs'
Binary files a/MySql.Data/Tests/Source/PoolingTests.cs	2010-08-18 19:03:33 +0000 and b/MySql.Data/Tests/Source/PoolingTests.cs	2011-06-29 20:23:15 +0000 differ
=== modified file 'MySql.Web/Tests/SchemaTests.cs'
--- a/MySql.Web/Tests/SchemaTests.cs	2011-05-10 23:36:53 +0000
+++ b/MySql.Web/Tests/SchemaTests.cs	2011-06-29 20:23:15 +0000
@@ -305,16 +305,26 @@
         public void InitializeInvalidConnStringThrowsArgumentException()
         {
             Configuration configFile = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
-            string fakeConnectionString = configFile.ConnectionStrings.ConnectionStrings["LocalMySqlServer"].ConnectionString.Replace("database", "fooKey");
-            configFile.ConnectionStrings.ConnectionStrings["LocalMySqlServer"].ConnectionString = fakeConnectionString;
-            configFile.Save();
-            ConfigurationManager.RefreshSection("connectionStrings");
-
-            MySQLMembershipProvider provider = new MySQLMembershipProvider();
-            NameValueCollection config = new NameValueCollection();
-            config.Add("connectionStringName", "LocalMySqlServer");
-
-            provider.Initialize(null, config);
+            string connStr = configFile.ConnectionStrings.ConnectionStrings["LocalMySqlServer"].ConnectionString;
+            string fakeConnectionString = connStr.Replace("database", "fooKey");
+            try
+            {
+                configFile.ConnectionStrings.ConnectionStrings["LocalMySqlServer"].ConnectionString = fakeConnectionString;
+                configFile.Save();
+                ConfigurationManager.RefreshSection("connectionStrings");
+
+                MySQLMembershipProvider provider = new MySQLMembershipProvider();
+                NameValueCollection config = new NameValueCollection();
+                config.Add("connectionStringName", "LocalMySqlServer");
+
+                provider.Initialize(null, config);
+            }
+            finally
+            {
+                configFile.ConnectionStrings.ConnectionStrings["LocalMySqlServer"].ConnectionString = connStr;
+                configFile.Save();
+                ConfigurationManager.RefreshSection("connectionStrings");
+            }
         }
     }
 }

Attachment: [text/bzr-bundle] bzr/reggie.burnett@oracle.com-20110629202315-hoc1oykarphp88vf.bundle
Thread
bzr commit into connector-net-6.1 branch (reggie.burnett:905) Reggie Burnett29 Jun