|
Replies:
5
-
Pages:
1
-
Last Post:
Nov 1, 2010 8:30 AM
by: Eriam
|
Threads:
[
Previous
|
Next
]
|
|
Posts:
1
Registered:
9/16/09
|
|
|
|
Toad for MySQL Error Message
Posted:
Sep 28, 2010 2:20 AM
|
|
|
Hello,
I'm playing with a MySQL proxy that traps SQL queries and rewrite them or modifies the response on the fly.
The proxy works fine with the command line client. But I run through an error message when I click on a table name in Toad MySQL client.
When I click on a table name the following message appears:
System. IndexOutOfRangeException Index was outside the bounds of the array. Stack Trace: at System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous) at System.Windows.Forms.Control.Invoke(Delegate method, Object[] args) at Quest.Toad.Util.Global.Invoke(Delegate handler, Object[] args) at Quest.Toad.Db.ToadDataAdapter.RaiseDone(Object sender, EventArgs args) at Quest.Toad.Db.ToadDataAdapter.InternalFillBackground()
The weird thing if that the result set seems fine because the result of the SHOW COLUMNS request is displayed.
Looking at the tcpdump of the proxy and comparing it with the tcpdump of the original mysql server the only difference I see is that my proxy returns two packets instead of one in the original mysql.
Any idea where to look at ?
Is there an option to disable the error message popup ( actually that would be ok for us) ?
Thanks for the great tool !
Eriam
-- Eriam Schaffter Service Comptabilité de Gestion, Etudes, Modélisation, Statistiques (SCGEMS) Direction de l?Analyse Médico-Economique Hôpitaux Universitaires de Genève Tél : 022.37.26431
|
|
|
Posts:
37
Registered:
5/29/06
|
|
|
|
Re: Toad for MySQL Error Message
Posted:
Oct 14, 2010 9:53 AM
in response to: eriam.schaffter...
|
|
|
Although some warning messages may be hidden, there isn't any way to disable the error dialog for an unhandled exception. I really have no idea what may be happening here with your proxy. When you say you "click on the table" what queries are being run? What part of the UI is being updated?
|
|
|
Posts:
4
Registered:
9/27/10
|
|
|
|
Re: Toad for MySQL Error Message
Posted:
Oct 20, 2010 1:45 AM
in response to: dchristian
|
|
|
|
|
Hello
Thanks for your response.
Here is how I have this bug:
1. Run toad and connect to the proxy 2. Deploy the table list with the + 3. Click on a table name.
And there goes the bug.
The query that triggers the bug is
SHOW COLUMNS FROM ACTION_INF_ib FROM dev_ers
I noticed that with my proxy Toad run a SHOW COLUMNS and not a SHOW FULL COLUMNS. Maybe that's the issue ?
Which make me ask the following question: what would trigger a SHOW COLUMNS rather then a SHOW FULL COLUMNS ? The server version in the handshake ?
Thanks
Eriam
|
|
|
Posts:
4
Registered:
9/27/10
|
|
|
|
Re: Toad for MySQL Error Message
Posted:
Oct 20, 2010 1:55 AM
in response to: Eriam
|
|
|
Hello again.
Problem solved !
The assumption in my previous post was right.
Toad uses the server_version of the Handshake Initialization Packet but I specified a custom server_version.
It seems then that it messes up Toad when it comes to various requests (in the previous example Toad expected the result from a SHOW FULL COLUMNS but ran a SHOW COLUMNS).
I solved the bug by setting the server_version to the same signature as the official mysql server but I can imagine Toad would have to handle other server_version aswell ?
Thanks anyway.
Eriam
|
|
|
Posts:
14
Registered:
6/11/10
|
|
|
|
Re: Toad for MySQL Error Message
Posted:
Nov 1, 2010 8:11 AM
in response to: Eriam
|
|
|
Would you mind posting some steps how to set the server version? I'm not sure where to look for it.
|
|
|
Posts:
4
Registered:
9/27/10
|
|
|
|
Re: Toad for MySQL Error Message
Posted:
Nov 1, 2010 8:28 AM
in response to: Mike The KID
|
|
|
Hey Mike
I was refering to the server_version in the Handshake Initialization Packet:
http://forge.mysql.com/wiki/MySQL_Internals_ClientServer_Protocol
This worked fine.
So if you want to get that you'll need a packet sniffer or a proxy of some sort.
Thanks
Eriam removed the target in the link
|
|
|
|
Legend
|
|
Guru: 2001
+
pts
|
|
Expert: 751
- 2000
pts
|
|
Enthusiast: 31
- 750
pts
|
|
Novice: 0
- 30
pts
|
|
Moderators
|
|
Helpful answer
(5 pts)
|
|
Answered
(10 pts)
|
|