MariaDB server crashes with CONNECT engine ODBC and MySQL driver

Description

MariaDB server crashes when I select from a CONNECT table of type ODBC that uses the MySQL 5.3 ODBC connector. Note that I CAN select from a CONNECT table that uses ODBC and FreeTDS driver, and that both the FreeTDS driver and MySQL driver work fine in isql. For example, the following works without any problem:

1 isql -v MySQL root mypass

This is with a clean install of CentOS 7 Google Compute Engine, as follows:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 sudo yum install unixODBC # MariaDB 10.1 CentOS repository sudo tee /etc/yum.repos.d/MariaDB.repo > /dev/null <<EOF [mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.1/centos7-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 EOF # install MariaDB sudo yum install MariaDB-server MariaDB-client sudo yum install MariaDB-connect-engine # configure SELinux to allow outgoing connection form mysqld to allow CONNECT to work sudo setsebool -P mysql_connect_any 1 # start mysql or reboot sudo service mysql start mysql --user=root --execute="INSTALL SONAME 'ha_connect';" # install MySQL ODBC 5.3 - do NOT use 5.2 (default of CentOS7) because 5.2 gives segmentation fault! sudo yum install https://dev.mysql.com/get/Downloads/Connector-ODBC/5.3/mysql-connector-odbc-5.3.4-1.el6.x86_64.rpm # create /etc/odbc.ini sudo tee /etc/odbc.ini > /dev/null <<EOF [MySQL] driver = MySQL ODBC 5.3 Unicode Driver server = 173.194.251.85 port = 3306 database = test uid = pwd = EOF # test MySQL ODBC connection ***NO ISSUES HERE, seems to work great*** isql -v MySQL root mypass # try to get list of tables - this command completes no problem CREATE OR REPLACE TABLE my_tables ENGINE=CONNECT TABLE_TYPE=ODBC CATFUNC=TABLES CONNECTION='dsn=MySQL;uid=root;pwd=mypass;'; # try to query it and it HANGS (never returns) select * from my_tables; # take a look (upload file) cat /var/log/messages | grep mysql > ~/log.txt # DISABLE selinux and reboot sudo nano /etc/sysconfig/selinux # check it as follows after reboot (shows as disabled) sestatus # this made no difference

Please let me know what else you need!

Environment

CentOS7 (standard Google Compute Engine image)

Status

Assignee

Olivier Bertrand

Reporter

Robert Dyas

Labels

External issue ID

None

External issue ID

None

Components

Affects versions

10.1.10

Priority

Critical