Bug #26583 Query Browser will not connect to High Port Numbers on Linux -higher than 16-bit
Submitted: 22 Feb 2007 23:58 Modified: 26 Feb 2007 14:13
Reporter: Chris Calender Email Updates:
Status: Not a Bug Impact on me:
Category:MySQL Query Browser Severity:S3 (Non-critical)
Version:1.2.9 OS:Linux (Linux)
Assigned to: CPU Architecture:Any
Tags: high port number, port, ports, QB, query browser

[22 Feb 2007 23:58] Chris Calender
Query Browser (QB) will not connect to High Port Numbers on Linux -higher than 16-bit

This works fine on Windows.  Also, MySQL Administrator (MA) seems to work fine for Linux, so it seems to be something small with QB.

Please consider adding in the functionality to allow QB to connect using these high port numbers like Windows does.

How to repeat:
Create an instance of MySQL running on port 111001 on a Linux server.

Open QB and try to connect to port 111001 and you will get an error.  The connect fails and the port number field is over-written with 65535.

If you do the same thing on Windows, it connects just fine.

Now, I do realize that this is because port numbers are in the 16-bit range, and that these are getting converted.

For instance, the first ports would get transformed to the second column of numbers (16-bit):

111001 -> 45465
111002 -> 45466
111003 -> 45467

You can see this by running netstat after you've started your mysql instance on port 111001.

So, as a work-around for QB on Linux, you could enter in "45465" for the port number and it will connect fine.

However, since this does work on Windows, without having to do this, I think it is a reasonable feature request to have QB on Linux behave the same way as QB for Windows.  Not to mention that MySQL Administrator on Linux does not have this problem either.

[26 Feb 2007 14:13] Alfredo Kojima
This is not a "feature" in Windows, it's more like a bug. Pretending to be connecting to a non-existant port number is not right and will only
perpetuate confusion.
Instead, the user should be advised to change his configuration to
correct values.