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

OLTP RO 2% performance degradation in 10.0.15

    XMLWordPrintable

    Details

      Description

      I can see 2% performance drop in 10.0.15 compared to 10.0.14. This seem to be caused mainly by this revision:

          revno: 4500.1.26 [merge]
          committer: Sergei Golubchik <sergii@pisem.net>
          branch nick: 10.0
          timestamp: Thu 2014-11-20 17:05:13 +0100
          message:
            XtraDB 5.6.21-70.0

      At least reverting it helps.

      Tracking it further down I can see that this regression comes from upstream revision:

      revno: 6119
      revision-id: bin.x.su@oracle.com-20140819071006-qq5nsq3nkqytml4w
      parent: sujatha.sivakumar@oracle.com-20140819042708-rx1r6q8ng1pgf9dq
      committer: bin.x.su@oracle.com
      branch nick: mysql-5.6
      timestamp: Tue 2014-08-19 15:10:06 +0800
      message:
        Bug#18477009 - INACCURATE HANDLING OF SRV_ACTIVITY_COUNT
       
        We call srv_active_wake_master_thread() directly and one of the places is
        innobase_commit (and prepare as well). This call not only wakes up the
        master thread but also increments the srv_activity_count which tells
        the page_cleaner that server is not idle. That's no what we expect.
       
        We should call srv_active_wake_master_thread() only after the commitment
        of a write trx, but not read-only trx, or after a rollback. This patch also
        changes some call of srv_active_wake_master_thread() to
        ib_wake_master_thread().
       
        Original patch is provided by Inaam.
       
        rb#5909, approved by Jimmy.

      Specifically think hunk:

      === modified file 'storage/innobase/handler/ha_innodb.cc'
      --- storage/innobase/handler/ha_innodb.cc       2014-08-02 07:51:08 +0000
      +++ storage/innobase/handler/ha_innodb.cc       2014-08-19 07:10:06 +0000
      @@ -3584,10 +3584,6 @@ innobase_commit(
       
              innobase_srv_conc_force_exit_innodb(trx);
       
      -       /* Tell the InnoDB server that there might be work for utility
      -       threads: */
      -       srv_active_wake_master_thread();
      -
              DBUG_RETURN(0);
       }

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              svoj Sergey Vojtovich
              Reporter:
              svoj Sergey Vojtovich
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Git Integration