| Bug #30664 | VARBINARY <> VAR_STRING + BINARY | ||
|---|---|---|---|
| Submitted: | 28 Aug 2007 7:41 | Modified: | 31 Aug 2007 14:21 | 
| Reporter: | Tonci Grgin | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | Connector / J | Severity: | S2 (Serious) | 
| Version: | 3.1, 5.0 SVN | OS: | Any | 
| Assigned to: | CPU Architecture: | Any | |
   [28 Aug 2007 7:42]
   Tonci Grgin        
  Test case
Attachment: TestIssue18970.java (text/x-java), 2.22 KiB.
   [28 Aug 2007 7:43]
   Tonci Grgin        
  Same problem in c/NET: Bug#25605, BINARY and VARBINARY is returned as a string
   [30 Aug 2007 15:22]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/33446
   [30 Aug 2007 15:33]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/33447
   [30 Aug 2007 15:52]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/33448
   [30 Aug 2007 17:04]
   Mark Matthews        
  Will be in 5.0.8 when it's released. Note that the fix only works with MySQL-5.0.25 or newer (see changelog entry for reason why).
   [30 Aug 2007 20:59]
   Mark Matthews        
  Fix will be available in 5.0.8.
   [31 Aug 2007 14:21]
   MC Brown        
  A note has been added to the 5.0.8 changelog: Collation on VARBINARY column types would be misidentified. A fix has been added, but this fix only works for MySQL server versions 5.0.25 and newer, since earlier versions didn't consistently return correct metadata for functions, and thus results from subqueries and functions were indistinguishable from each other, leading to type-related bugs.
   [6 Sep 2007 15:13]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/33832
   [7 Sep 2007 14:04]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/33909
   [3 Oct 2007 16:41]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/34839
   [3 Oct 2007 16:46]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/34840
   [3 Oct 2007 18:59]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/34855
   [5 Oct 2007 18:53]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/35011
   [11 Oct 2007 20:10]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/35407
   [11 Oct 2007 20:24]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/35410
   [11 Oct 2007 20:52]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/35414
   [19 Nov 2007 0:57]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/38019
   [19 Nov 2007 2:51]
   Bugs System        
  A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/38024

Description: c/J is not checking for binary collation when discovered type is (VAR)STRING. How to repeat: Test case is provided. drop table if exists i18970_1, i18970_2; create table i18970_1 (id int); create table i18970_2 (id int ,binaryvalue varbinary(10)); insert into i18970_1 value (1),(2),(3); insert into i18970_2 value (1,"‚ ‚¢‚¤"),(2,"‚ ‚¢‚¤"),(3,"‚ ‚¢‚¤"); select i18970_1.id, (select i18970_2.binaryvalue from i18970_2 where i18970_2.id=i18970_1.id) as value from i18970_1; Column 2 ("value") is returned as MySQL data type: 253(FIELD_TYPE_VAR_STRING) and translated to java.lang.String VARCHAR 10. Suggested fix: -