IBM Support

DataStage ODBC error: [DataStage][SQL Client][ODBC][DataDirect][ODBC lib]Unicode converter buffer overflow

Troubleshooting


Problem

Metadata import from DataStage designer client for datasource accessed via 3rd party ODBC driver resuls in error: [DataStage][SQL Client][ODBC][DataDirect][ODBC lib]Unicode converter buffer overflow. Other operations against this data source may also result in the above error.

Resolving The Problem

DataStage ships with the DataDirect ODBC driver manager and drivers to support many common databases. When the need arises to use a 3rd party ODBC driver with DataStage, it will by default use the DataDirect ODBC driver manager which may not be fully compatible and is not a tested configuration.

The "Unicode converter buffer overflow" is an indication of an incompatibility between the ODBC driver and the driver manager. In this specific case it means that the ODBC driver manager may be using 4 bytes for unicode data (such as UTF16) while the driver uses 2 bytes (i.e. UTF8) or vice versa. In this situation, you have a few options:

  1. The DataDirect ODBC driver manager looks for a property that you can add to the Data Source Name (DSN) entry for the 3rd party driver in the .odbc.ini file to indicate if the driver is using 2 or 4 bytes for unicode.

    Add the following property after the "driver=" line for the failing DSN in the .odbc.ini file:
    DriverUnicodeType=1

    then test the failing scenario. If the error still occurs, then change the line to:
    DriverUnicodeType=2

    The problem report which resulted in the creation of this technical document was resolved by adding DriverUnicodeType=1 to the failing DSN properties.
  2. Use the ODBC driver manager shipped with the 3rd party driver, or alternatively the OS driver manager (such as unixODBC on Linux). Information on this option can be found in the following topic in the online Information Server manual:
    Configuring other ODBC drivers

    Although this link is for the 8.1 documentation, the steps are generic and applicable to all releases.
  3. The 3rd party driver may also provide its own custom properties to setup unicode handling. Consult the documentation provided with the failing driver to determine what options it supports for Unicode data.

[{"Product":{"code":"SSVSEF","label":"IBM InfoSphere DataStage"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"--","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"}],"Version":"8.0.1;8.1;8.5;7.5.3;7.5.2;7.5.1;8.0;8.7","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
16 June 2018

UID

swg21580747