MyDAC fails fetching data correctly on MySQL 5.0.51a!

Discussion of open issues, suggestions and bugs regarding MyDAC (Data Access Components for MySQL) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
upscene
Posts: 306
Joined: Thu 19 Oct 2006 08:13

MyDAC fails fetching data correctly on MySQL 5.0.51a!

Post by upscene » Thu 10 Apr 2008 07:40

Hi,

On MySQL 5.0.51a (community edition) and MyDAC 5.20.0.12 the command SHOW ENGINES fails fetching the data correctly, this is the output:

# | Engine| Support| Comment
--+-------+--------+---------------------------
1| MyI | YES | Default engine as of MySQL
2| MEM | YES | Hash based, stored in memo
3| Inn | DEF | Supports transactions, row
--+-------+--------+---------------------------
4| Ber | NO | Supports transactions and
5| BLA | YES | /dev/null storage engine (
6| EXA | YES | Example storage engine
--+-------+--------+---------------------------
7| ARC | YES | Archive storage engine
8| CSV | NO | CSV storage engine
9| ndb | NO | Clustered, fault-tolerant,
--+-------+--------+---------------------------
10| FED | YES | Federated MySQL storage en
11| MRG | YES | Collection of identical My
12| ISA | NO | Obsolete storage engine


As you can see, the data is being cut off!

A simple sample application with a TMyConnection, TMyQuery, TDataSource and TDBGrid can show this behaviour. I'm using the "direct" connection.

My database developer application fails because of this.

Please send me a hotfix!

With regards,

Martijn Tonies
Upscene Productions

Dimon
Devart Team
Posts: 2910
Joined: Mon 05 Mar 2007 16:32

Post by Dimon » Thu 10 Apr 2008 13:29

We could not reproduce the problem. Please, try to download the last MyDAC build and check if this problem exists there, too.

upscene
Posts: 306
Joined: Thu 19 Oct 2006 08:13

Post by upscene » Thu 10 Apr 2008 14:22

The about box says 5.20.1.15 now (Delphi 7), but I still got the same problem.

Are you using the Direct connection mode as well?

upscene
Posts: 306
Joined: Thu 19 Oct 2006 08:13

Post by upscene » Thu 10 Apr 2008 16:03

I got this from the MySQL "internals" list:
sounds like you are using the wrong value for the length of a utf8
field, where the number of characters is being divided by the max
character length. (10 / 3 = 3, 80 / 3 = 26)

or it could be the server returning the wrong length. use "mysql
--column-type-info" to see what it is returning.
Would that help any?

--
Martijn Tonies
Upscene Productions

chihebbs
Posts: 46
Joined: Tue 05 Jun 2007 20:06

Post by chihebbs » Thu 10 Apr 2008 18:10

Same problem confirmed on Mysql 5.0.51a community and 5.0.54 enterprise on windows. Will check on linux and post the result tomorrow
On Mysql 5.0.45 community working without problem.

chihebbs
Posts: 46
Joined: Tue 05 Jun 2007 20:06

Post by chihebbs » Fri 11 Apr 2008 05:37

Same problem confirmed with version 5.0.54 on linux.

Dimon
Devart Team
Posts: 2910
Joined: Mon 05 Mar 2007 16:32

Post by Dimon » Fri 11 Apr 2008 14:24

Thank you for information. We have reproduced this problem and fixed it. This fix will be included in the next MyDAC build.

upscene
Posts: 306
Joined: Thu 19 Oct 2006 08:13

Post by upscene » Fri 11 Apr 2008 19:09

What was the error? Can you post the fix?

--
Martijn Tonies
Upscene Productions

Dimon
Devart Team
Posts: 2910
Joined: Mon 05 Mar 2007 16:32

Post by Dimon » Mon 14 Apr 2008 07:28

The problem appears because MySQL 5.0.51a calculates fileds length incorrectly.
We have send you the fix by e-mail.

chihebbs
Posts: 46
Joined: Tue 05 Jun 2007 20:06

Post by chihebbs » Mon 14 Apr 2008 08:34

How come when sending the same request "Show Engines"to Mysql browser GUI, we get the expected result not truncated ?

upscene
Posts: 306
Joined: Thu 19 Oct 2006 08:13

Post by upscene » Mon 14 Apr 2008 08:51

Thanks for the fix.

Any idea why it worked in previous versions?

How about MySQL 5.1 or 6.0?
--
Martijn Tonies
Upscene Productions

swierzbicki
Posts: 451
Joined: Wed 19 Jan 2005 09:59

Post by swierzbicki » Mon 14 Apr 2008 09:28

Dimon,

Could you send me the fix too ?

Dimon
Devart Team
Posts: 2910
Joined: Mon 05 Mar 2007 16:32

Post by Dimon » Tue 15 Apr 2008 07:02

The problem is connected with the some of the MySQL versions incorrect behaviour.
In MySQL 5.1 and 6.0 this problem was not discovered.

Post Reply