Tuesday, March 3, 2015

SAS 9.4 crash with MySQL ODBC pass-through queries

SAS 9.4 (TS1M2) on X64_DS08R2 (Windows Server 2008 64-bit) always crashes with certain pass-through queries using MySQL Connector/ODBC 5.3.4. When it crashes, the SAS log shows some red messages, but SAS closes immediately.

The crash is not reproducible with other ODBC drivers, on SAS 9.3 64-bit, or SAS 9.4 32-bit.

Workarounds include: using an ODBC DSN instead of the connection string, not using pass-through queries, or using SAS 9.3.

SAS agreed to fix the bug.

This shows how to procedure it


/* Trace log */
options sastrace=',,d,d' sastraceloc=file 'c:\temp\mytracefile.log';

/* This does not crash */
libname ensembl odbc
    required="Driver={MySQL ODBC 5.3 Unicode Driver};Server=ensembldb.ensembl.org;Database=aedes_aegypti_core_48_1b;Uid=anonymous;interactive=1;";

/* This does not crash */
proc sql;
 create table x as 
    select *
 from ensembl.analysis;
quit;

/* This crashes */
proc sql;
 connect using ensembl;
 create table x as 
    select *
 from connection to ensembl (
            show databases;
        );
quit;

This bug was present in SAS 9.4M2, and it was fixed in SAS 9.4M3.

No comments:

Post a Comment