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

Change Replication and other sql/* to use Connector/C

    XMLWordPrintable

Details

    • Q4/2025 Server Development

    Description

      it is 10 year old story. Of course, the idea was not to keep 2 libmariadbs, but get rid of the one inside the server. The reason is incompatibility of MYSQL structure, and direct use of its members inside the server's slave code. mysql->net can't be used, mysql->net.vio can't be used. read_pos or whatever, it is all not using MYSQL* as opaque thing, and it is not using only official APIs to access it.
      wlad, https://mariadb.zulipchat.com/#narrow/channel/118759-general/topic/.60sql-common.60.20vs.2E.20.60libmariadb.60/near/532951021

      November 2025 update

      I will reduce the scope of this task to only client-like components.
      It will not solve the 2-libmariadb issue in full, but will allow Replication’s MDEV-19248 to move forward without compromising on a tangent.

      The server-side components make extensive use of mysql->net and mysql->net.vio.
      For them, either

      • They must refactor to avoid overlapping with client connection code, or
      • The C Connector must first officially export a reusable networking API.

      My August comment has the details.

      Attachments

        Issue Links

          Activity

            People

              ParadoxV5 Jimmy Hú
              ParadoxV5 Jimmy Hú
              Jimmy Hú Jimmy Hú
              Sergei Golubchik Sergei Golubchik
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

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