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

MaxScale does not contemplate client multiple statements (CLIENT_MULTI_STATEMENTS)

    XMLWordPrintable

    Details

      Description

      Tested with Visual Studio, .NET connector, C#, MaxScale 1.21, MariaDB Galera 10.0

      When enabling CLIENT_MULTI_STATEMENTS (AllowBatch=true in .NET connector) MaxScale can't manage properly multiple statements execution and status control since it considers it just like one single statement.

      Two main issues:

      1) The whole semicolons separated commands string is forwarded to one single server, in case of R/W split module that means that a command starting with SELECT... but having INSERT and updates will go to a R(ead) node. for example (apparently the decision on the type of command(R/W) is done on the first match).

      2) The status returned from the command is not properly parsed, so that some commands may fail without MaxScale detecting it, indeed with CLIENT_MULTI_STATEMENTS (and CLIENT_MULTI_RESULTS) the parsing should loop on the array of the executed commands, not just read one of them.

      Claudio

        Attachments

          Activity

            People

            Assignee:
            markus makela markus makela
            Reporter:
            claudio.nanni Claudio Nanni
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: