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

Threadpool - add thd_wait_begin/thd_wait_end to the network IO functions

    Details

    • Type: Task
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Fix Version/s: 10.0.2
    • Component/s: None
    • Labels:
      None

      Description

      Certain types of workloads (large result sets, blobs, slow clients) can have longer waits on network io (socket reads and writes). Whenever server waits, this should be communicated to the threadpool, so it can start new query by either waking a waiting thread or sometimes creating a new one. IF threadpool does not know about blocking state of a thread, the performance will degrade.

      In MySQL prior to 5.6 it is not possible to know whether socket read or write would wait. In 5.6, socket handling on Unixes was changed in VIO. Sockets IO is always non-blocking and reads or writes that would block wait with poll() for operation to finish.

      The task is to add thd_wait_begin/thd_wait_end around these poll() calls.

        Gliffy Diagrams

          Activity

          Hide
          ratzpo Rasmus Johansson added a comment -

          This was assigned to me, which happens by default if no Assignee is given.

          Show
          ratzpo Rasmus Johansson added a comment - This was assigned to me, which happens by default if no Assignee is given.
          Hide
          wlad Vladislav Vaintroub added a comment -

          Davi's patch http://lists.mysql.com/commits/138456 is prerequisite for the task, need to check if it made into 10.0 yet

          Show
          wlad Vladislav Vaintroub added a comment - Davi's patch http://lists.mysql.com/commits/138456 is prerequisite for the task, need to check if it made into 10.0 yet
          Hide
          ratzpo Rasmus Johansson added a comment -

          Was it in 10.0?

          Show
          ratzpo Rasmus Johansson added a comment - Was it in 10.0?
          Hide
          wlad Vladislav Vaintroub added a comment -

          Yes, it is in 10.0 now. I have patch for the MDEV-156 , too somewhere, it is just not pushed anywhere yet, hopefully after 10.0.1 then

          Show
          wlad Vladislav Vaintroub added a comment - Yes, it is in 10.0 now. I have patch for the MDEV-156 , too somewhere, it is just not pushed anywhere yet, hopefully after 10.0.1 then

            People

            • Assignee:
              wlad Vladislav Vaintroub
              Reporter:
              wlad Vladislav Vaintroub
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 3 hours
                3h