I've tried to migrate an C++/ADO (not ADO.NET) project from MySQL to MariaDB. While it was easy to replace the MySQL server, I've found a problem with the MariaDB ODBC connector.
Access to the MariaDB is done by the OLEDB to ODBC bridge (MSDASQL). The ADO connection string is something like "Provider=MSDASQL;DSN=TestMariaOdbc". While querying tables with simple fields works as expected, I wasn't able to read values from LONGBLOB columns. The table in question has two columns: id (int), data (longblob). Selecting a row by the id with a data-value of about 2000 bytes leads to the following error:
While performing the query, the memory consumed by the process rapidly grows to more then 1 GB. The same worked with the latest MySQL ODBC driver (5.3.6). I guess that MariaDB ODBC Connector reports at some point the column size (4GB) instead of the actual data size (2KB) and the ODBC bridge tries to allocate an appropriate buffer...