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

protocol: COM_MULTI command

    XMLWordPrintable

Details

    • Task
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 10.2.0
    • OTHER
    • None
    • 10.2.0-2, 10.2.0-3, 10.2.0-4, 10.2.0-5, 10.2.0-8, 10.1.13

    Description

      Implement COM_MULTI protocol command. Just as COM_QUERY support multiple queries in one packet, COM_MULTI will bundle many COM_xxx commands in one packet.

      May be the server should only support COM_MULTI if CLIENT_MULTI_RESULTS flag is set? Probably not

      Packets included in one COM_MULTI probably do not need packet number as well as separate compression, so only 3 bytes of length for each.

      For prepared statement to be able prepare / execute / deallocate the command in one COM_MULTI batch will be special prepared statement ID (0 or -1) which mean ID of previous command.

      Packet structure:

      • 4 or 7 bytes: of packet header (read by my_real_read())
      • 1 byte: COM_MULTI
        • 3 bytes: length of subcommand 1
        • N1 bytes: subcommand1
        • 3 bytes: length of subcommand 2
        • N2 bytes: subcommand 2
          ...
        • 3 bytes: length of subcommand m
        • Nm bytes: subcommand m

      COM_MULTI should be numbered from the "end" i.e. 255

      There should be capability flag for it.

      Attachments

        Issue Links

          Activity

            People

              sanja Oleksandr Byelkin
              serg Sergei Golubchik
              Votes:
              2 Vote for this issue
              Watchers:
              6 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.