Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use MySQL 8 ODBC drivers for MariaDB #223

Closed
korydraughn opened this issue Jul 17, 2024 · 5 comments
Closed

Use MySQL 8 ODBC drivers for MariaDB #223

korydraughn opened this issue Jul 17, 2024 · 5 comments
Assignees
Labels
enhancement New feature or request

Comments

@korydraughn
Copy link
Contributor

Using a modified build of the testing environment, I was able to watch all unit tests and core tests pass for an iRODS server with MariaDB 11.4.

The key to this was:

  • Using the MySQL 8.0.33 ODBC driver
    • I modified odbc_setup.py to download the MySQL 8 ODBC driver when launching MariaDB 11.4
    • The MariaDB ODBC driver appears to have a bug related to the use of SQLRowCount
  • Passing the following command line options to MariaDB (in the docker-compose.yml file)
    • --transaction_isolation=READ-COMMITTED
    • --character_set_server=utf8mb4
    • --collation_server=utf8mb4_bin

The testing environment needs to be updated to use the MySQL 8 ODBC drivers until we find a suitable MariaDB ODBC driver.

@korydraughn
Copy link
Contributor Author

I only tried this with the MySQL 8.0.33 ODBC driver, but I believe the outcome would be the same if some other version of the MySQL 8 ODBC driver were used (e.g. v8.4.x).

@alanking
Copy link
Contributor

alanking commented Jul 17, 2024

Related to #208 (possibly)

@SwooshyCueb
Copy link
Member

I'll take care of this today

@SwooshyCueb
Copy link
Member

The MariaDB ODBC driver appears to have a bug related to the use of SQLRowCount

Their issue tracker is here if you want to open an issue about it (if there isn't one already).

@korydraughn
Copy link
Contributor Author

Will take a look.

SwooshyCueb added a commit to SwooshyCueb/irods_testing_environment that referenced this issue Jul 18, 2024
Since iRODS works just fine with MariaDB when the MySQL ODBC driver is used,
let's switch over.

I've left a boolean at the top of `odbc_setup.py` that can be used to switch
back to the MariaDB ODBC driver, to allow for easier testing when working on
irods/irods#7323.

Once irods/irods#7323 is fixed, this commit should be reverted, unless it has
already been superseded by irods#208.
alanking pushed a commit that referenced this issue Jul 18, 2024
Since iRODS works just fine with MariaDB when the MySQL ODBC driver is used,
let's switch over.

I've left a boolean at the top of `odbc_setup.py` that can be used to switch
back to the MariaDB ODBC driver, to allow for easier testing when working on
irods/irods#7323.

Once irods/irods#7323 is fixed, this commit should be reverted, unless it has
already been superseded by #208.
@trel trel added the enhancement New feature or request label Jul 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Development

No branches or pull requests

4 participants