Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-29490

rename internally used client API to avoid name conflicts with C/C

Details

    Description

      MariaDB server has remnants of libmysqlclient used internally (for replicaiton, CONNECT, Federated, Spider, etc).

      Connector/C has many symbols with exactly same names, so if a server would load libmariadb.so, directly or indirectly, one can get symbols mixed up, causing problems.

      A possible scenario — server loads CONNECT engine (ha_connect.so), the latter uses ODBC to connect to another MariaDB server. ODBC library loads MariaDB Connector/ODBC driver, and that driver is dynamically linked with libmariadb.so. A possible outcome — ODBC could use mysql_connect from libmariadb.so to connect, but mysql_close from the server to disconnect. Or vice versa.

      To avoid these problems the internal server implementation of the client API should be renamed.

      Attachments

        Issue Links

          Activity

            serg Sergei Golubchik created issue -
            serg Sergei Golubchik made changes -
            Field Original Value New Value
            Lawrin Lawrin Novitsky made changes -
            Lawrin Lawrin Novitsky made changes -
            Fix Version/s 10.3 [ 22126 ]
            ralf.gebhardt Ralf Gebhardt made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            serg Sergei Golubchik made changes -

            julien.fritsch The fix has been pushed and is being tested. As result of testing additional changes are made. So far it's like disabling certain irrelevant tests.

            Lawrin Lawrin Novitsky added a comment - julien.fritsch The fix has been pushed and is being tested. As result of testing additional changes are made. So far it's like disabling certain irrelevant tests.

            Seemingly all is fine by now. One issue, that was found, has been fixed by Sergey, so it's waiting for other things to be finished.

            Lawrin Lawrin Novitsky added a comment - Seemingly all is fine by now. One issue, that was found, has been fixed by Sergey, so it's waiting for other things to be finished.
            serg Sergei Golubchik made changes -

            Please review the code for this MDEV

            Lawrin Lawrin Novitsky added a comment - Please review the code for this MDEV
            Lawrin Lawrin Novitsky made changes -
            Assignee Lawrin Novitsky [ lawrin ] Sergei Golubchik [ serg ]
            Status In Progress [ 3 ] In Review [ 10002 ]

            Looks good. Please, squash commits b3dc4ae9075, 67dc9e712b1, cb0bb395b80 into one and push.

            serg Sergei Golubchik added a comment - Looks good. Please, squash commits b3dc4ae9075, 67dc9e712b1, cb0bb395b80 into one and push.
            serg Sergei Golubchik made changes -
            Assignee Sergei Golubchik [ serg ] Lawrin Novitsky [ lawrin ]
            Status In Review [ 10002 ] Stalled [ 10000 ]
            serg Sergei Golubchik made changes -
            Fix Version/s 10.3.37 [ 28404 ]
            Fix Version/s 10.4.27 [ 28405 ]
            Fix Version/s 10.5.18 [ 28421 ]
            Fix Version/s 10.6.11 [ 28441 ]
            Fix Version/s 10.7.7 [ 28442 ]
            Fix Version/s 10.8.6 [ 28443 ]
            Fix Version/s 10.9.4 [ 28444 ]
            Fix Version/s 10.10.2 [ 28410 ]
            Fix Version/s 10.3 [ 22126 ]
            Fix Version/s 10.4 [ 22408 ]
            Fix Version/s 10.5 [ 23123 ]
            Fix Version/s 10.6 [ 24028 ]
            Fix Version/s 10.7 [ 24805 ]
            Fix Version/s 10.8 [ 26121 ]
            Fix Version/s 10.9 [ 26905 ]
            Resolution Fixed [ 1 ]
            Status Stalled [ 10000 ] Closed [ 6 ]

            In versions, where sql service is present, i.e. from 10.6, the code from this MDEV depends on the code in linked MDEV-29514

            Lawrin Lawrin Novitsky added a comment - In versions, where sql service is present, i.e. from 10.6, the code from this MDEV depends on the code in linked MDEV-29514
            danblack Daniel Black made changes -
            mariadb-jira-automation Jira Automation (IT) made changes -
            Zendesk Related Tickets 109137

            People

              Lawrin Lawrin Novitsky
              serg Sergei Golubchik
              Votes:
              1 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.