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

Slow tee branch target also slows down the main client

    XMLWordPrintable

Details

    • Bug
    • Status: In Review (View Workflow)
    • Major
    • Resolution: Unresolved
    • 23.02.19, 23.08.15, 24.02.11, 25.01.8, 25.10.4
    • 27.10
    • tee
    • None
    • MXS-SPRINT-282

    Description

      If the tee filter's branch target ends up being so slow that network data is buffered on it, the backend connection puts backpressure on the client connection that blocks reads until the network buffers have been flushed. This results in the tee filter blocking the client even when sync=false is used.

      The solution would be to allow the behavior to be changed so that the branch target has a few modes:

      • wait: wait until the network buffers are flushed (current behavior)
      • error: generate an error if a query would fill up the network buffer, effectively dropping it
      • kill: kill the branch connection as soon as the network buffer fills up

      It would also be beneficial to have a configurable delay after which the action is taken. This way, a short burst of data is still allowed to pass but a longer, sustained slowdown would be handled gracefully.

      Attachments

        Issue Links

          Activity

            People

              markus makela markus makela
              markus makela markus makela
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:

                Time Tracking

                  Estimated:
                  Original Estimate - 1d Original Estimate - 1d
                  1d
                  Remaining:
                  Remaining Estimate - 0d
                  0d
                  Logged:
                  Time Spent - 1.25d
                  1.25d

                  Git Integration

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