• Narayanan V's avatar
    Bug#45197 cp1250 character set with IBMDB2I generates 2027 error · 094ddf22
    Narayanan V authored
    Running a SELECT query over an IBMDB2I table with a cp1250 character set
    was producing an error 2027 (ibmdb2i error 2027: Error converting single-byte
    sort sequence to UCS-2).
    
    The QMY_DESCRIBE_RANGE API was returning error 2027 to the storage engine
    because the CCSID used for a cp1250 column (870) does not match the CCSID
    used by the DB2 sort sequences associated with cp1250_* collations (1153).
    This was because the storage engine relies on a set of system APIs to
    determine which CCSID value most closely matches a particular MySQL
    character set. However, in the case of cp1250, the system is returning
    CCSID 870, which does not have a codepoint for the euro symbol, making it
    an incorrect match.
    
    This patch overrides the selection of a compatible CCSID to always return
    1153 for cp1250.
    
    storage/ibmdb2i/db2i_charsetSupport.cc:
      Bug#45197 cp1250 character set with IBMDB2I generates 2027 error
      
      override the selection of a compatible CCSID to
      always return 1153 for cp1250.
    094ddf22
db2i_charsetSupport.cc 22.8 KB