Merge lp:~akopytov/percona-server/tp-high-prio-mode-5.5 into lp:percona-server/5.5
Status: | Merged |
---|---|
Merge reported by: | Alexey Kopytov |
Merged at revision: | not available |
Proposed branch: | lp:~akopytov/percona-server/tp-high-prio-mode-5.5 |
Merge into: | lp:percona-server/5.5 |
Prerequisite: | lp:~akopytov/percona-server/tp-low-prio-queue-throttling-5.5 |
Diff against target: |
225 lines (+118/-4) 8 files modified
Percona-Server/mysql-test/r/percona_server_variables_debug.result (+1/-0) Percona-Server/mysql-test/r/percona_server_variables_release.result (+1/-0) Percona-Server/mysql-test/suite/sys_vars/r/thread_pool_high_prio_mode_basic.result (+34/-0) Percona-Server/mysql-test/suite/sys_vars/t/thread_pool_high_prio_mode_basic.test (+35/-0) Percona-Server/sql/sql_class.h (+2/-1) Percona-Server/sql/sys_vars.cc (+15/-0) Percona-Server/sql/threadpool.h (+9/-0) Percona-Server/sql/threadpool_unix.cc (+21/-3) |
To merge this branch: | bzr merge lp:~akopytov/percona-server/tp-high-prio-mode-5.5 |
Related bugs: | |
Related blueprints: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Alexey Kopytov (community) | Approve | ||
George Ormond Lorch III (community) | g2 | Approve | |
Review via email: mp+198746@code.launchpad.net |
Description of the change
Implementation of
https:/
Introduced a new Thread Pool option, thread_
accepts the following values:
- “transactions” (the default). In this mode only statements from
already started transactions may go into the high priority queue
depending on the number of high priority tickets currently available
in a connection (see thread_
- “statements”. In this mode all individual statements go into the high
priority queue, regardless of connection’s transactional state and the
number of available high priority tickets. This value can be used to
prioritize AUTOCOMMIT transactions or other kinds of statements such
as administrative ones for specific connections. Note that setting
this value globally essentially disables high priority scheduling,
since in this case all statements from all connections will use a
single queue
(the high priority one);
- “none”. This mode disables high priority queue for a connection. Some
connections (e.g. monitoring) may be insensitive to execution latency
and/or never allocate any server resources that would otherwise impact
performance in other connections and thus, do not really require high
priority scheduling. Note that setting thread_
“none” globally has essentially the same effect as setting it to
“statements” globally: all connections will always use a single queue
(the low priority one in this case).
http://
Spotted an inconsistency in naming (threadpool_ high_prio_ tickets vs. thread_ pool_high_ prio_mode) . Will fix in a separate revision and push.