Uploaded image for project: 'MariaDB MaxScale'
  1. MariaDB MaxScale
  2. MXS-959

KILL command on wrong connection ID

    XMLWordPrintable

    Details

    • Sprint:
      2017-30, 2017-31, 2017-32, 2017-33

      Description

      in Greating packet, maxscale does give a connection Id that isn't a real connection ID, but a fake connection id.

      problem is this connection id is used in connectors.
      In java connector (MariaDB and MySQL) it's used for mostly 2 things : Statement.cancel(), and Statement.setQueryTimeout()

      When a query must be canceled or if timeout is reached, driver will create a new connection, and execute a "KILL QUERY XXX" (XXX the fake connection id).

      This doesn't work when using maxscale :

      • server will throw a "Unknown thread id: XXX"
      • or if on server there is a connection that has the bad luck of having a corresponding connection id, it will killed .

      Maxscale,as a proxy, must intercept query like "KILL [HARD | SOFT] [CONNECTION | QUERY ] thread_id"
      and execute the kill command on the good server with real thread id.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              esa.korhonen Esa Korhonen
              Reporter:
              diego dupin Diego Dupin
              Votes:
              0 Vote for this issue
              Watchers:
              2 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.