Bug #30547 | MyODBC 3 / ADO - Returning double the field size for blob types - regression | ||
---|---|---|---|
Submitted: | 21 Aug 2007 21:26 | Modified: | 13 Sep 2007 11:34 |
Reporter: | Erica Moss | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | Connector / ODBC | Severity: | S2 (Serious) |
Version: | 3.51.19 | OS: | Windows (XP sp2) |
Assigned to: | Jim Winstead | CPU Architecture: | Any |
Tags: | ADO definedSize blob |
[21 Aug 2007 21:26]
Erica Moss
[25 Aug 2007 23:19]
Kent Boortz
This seems to be caused by a change for bug#27862. If the character set is "binary" the size returned is doubled. The call to SQLDescribeCol() in "result.c" calls get_column_size() in "utility.c" that contains case MYSQL_TYPE_TINY_BLOB: case MYSQL_TYPE_MEDIUM_BLOB: case MYSQL_TYPE_LONG_BLOB: case MYSQL_TYPE_BLOB: case MYSQL_TYPE_GEOMETRY: if (field->charsetnr == 63) return length * 2; else return length / mbmaxlen; }
[4 Sep 2007 19:49]
Jim Winstead
Fix reported value of column size for binary fields
Attachment: bug30547.patch (text/plain), 4.22 KiB.
[5 Sep 2007 18:45]
Jim Winstead
The fix for this bug has been committed to the repository, and will be included in the next release (3.51.20).
[13 Sep 2007 11:34]
MC Brown
A note has been added to the .3.51.20 changelog: The wrong column size was returned for binary data.