#At file:///C:/Users/Reggie/work/connector-net/trunk/ based on revid:reggie.burnett@stripped
940 Reggie Burnett 2010-11-03 [merge]
merged
modified:
CHANGES
MySql.Data/Provider/Source/ISSchemaProvider.cs
MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs
=== modified file 'CHANGES'
=== modified file 'CHANGES'
--- a/CHANGES 2010-10-22 19:01:14 +0000
+++ b/CHANGES 2010-11-03 21:04:38 +0000
@@ -1,6 +1,8 @@
Version 6.3.6
- Fixed TracingDriver so that it normalizes long queries before truncation so we don't get exceptions when quoted
tokens land on the 300th character (bug #57641)
+- added code that will attempt to enumerate procs via mysql.proc the first time. If we get an 1142 error then we
+ mark that we don't have access to that table and use IS from then on. (bug #36694)
Version 6.3.5
- Fix installer bug related to .NET FW 4.0 (bug #56580)
=== modified file 'MySql.Data/Provider/Source/ISSchemaProvider.cs'
--- a/MySql.Data/Provider/Source/ISSchemaProvider.cs 2010-11-03 20:35:00 +0000
+++ b/MySql.Data/Provider/Source/ISSchemaProvider.cs 2010-11-03 21:04:38 +0000
@@ -188,8 +188,18 @@
/// <returns></returns>
public override DataTable GetProcedures(string[] restrictions)
{
- if (connection.Settings.UseProcedureBodies)
- return base.GetProcedures(restrictions);
+ try
+ {
+ if (connection.Settings.HasRootAccess)
+ return base.GetProcedures(restrictions);
+ }
+ catch (MySqlException ex)
+ {
+ if (ex.Number == (int)MySqlErrorCode.TableAccessDenied)
+ connection.Settings.HasRootAccess = false;
+ else
+ throw;
+ }
string[] keys = new string[4];
keys[0] = "ROUTINE_CATALOG";
=== modified file 'MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs'
--- a/MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs 2010-08-18 19:52:04 +0000
+++ b/MySql.Data/Provider/Source/MySqlConnectionStringBuilder.cs 2010-11-03 21:04:38 +0000
@@ -41,6 +41,7 @@
new Dictionary<string, PropertyDefaultValue>(StringComparer.OrdinalIgnoreCase);
private Dictionary<string, object> values =
new Dictionary<string, object>(StringComparer.OrdinalIgnoreCase);
+ private bool hasRootAccess = true;
static MySqlConnectionStringBuilder()
{
@@ -744,6 +745,12 @@
#endregion
+ internal bool HasRootAccess
+ {
+ get { return hasRootAccess; }
+ set { hasRootAccess = value; }
+ }
+
internal Regex GetBlobAsUTF8IncludeRegex()
{
if (String.IsNullOrEmpty(BlobAsUTF8IncludePattern)) return null;
Attachment: [text/bzr-bundle] bzr/reggie.burnett@oracle.com-20101103210522-qe9j23p6ntam6xg8.bundle
| Thread |
|---|
| • bzr commit into connector-net-trunk branch (reggie.burnett:940) | Reggie Burnett | 3 Nov |