Uploaded image for project: 'Percona Server for MySQL'
  1. Percona Server for MySQL
  2. PS-1343

LP #1159743: Port MDEV-156. Threadpool - add thd_wait_begin/thd_wait_end to the network IO functions

Details

    • Bug
    • Status: Done
    • High
    • Resolution: Fixed
    • None
    • None
    • None

    Description

      **Reported in Launchpad by Sergei Glushchenko last update 27-12-2013 08:24:50

      Port MDEV-156 from MariaDB (threadpool improvement)
      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.

      Attachments

        Activity

          People

            Unassigned Unassigned
            lpjirasync lpjirasync (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Smart Checklist