Merge lp:~hrvojem/percona-server/rn-5.5.28-29.1 into lp:percona-server/5.5

Proposed by Hrvoje Matijakovic
Status: Merged
Approved by: Stewart Smith
Approved revision: no longer in the source branch.
Merged at revision: 333
Proposed branch: lp:~hrvojem/percona-server/rn-5.5.28-29.1
Merge into: lp:percona-server/5.5
Diff against target: 178 lines (+121/-3)
6 files modified
doc/source/conf.py (+3/-3)
doc/source/glossary.rst (+2/-0)
doc/source/index.rst (+1/-0)
doc/source/performance/innodb_numa_support.rst (+66/-0)
doc/source/release-notes/Percona-Server-5.5.15-21.0.rst (+22/-0)
doc/source/release-notes/Percona-Server-5.5.28-29.1.rst (+27/-0)
To merge this branch: bzr merge lp:~hrvojem/percona-server/rn-5.5.28-29.1
Reviewer Review Type Date Requested Status
Laurynas Biveinis (community) Needs Fixing
Stewart Smith (community) Approve
Review via email: mp+131250@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Stewart Smith (stewart) :
review: Approve
Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

Bug 1060136 is also upstream 67052.
Bug 1053342 mentioned twice, the second mention is incorrect, also for the second bug it would be good to mention (if it's easy to find out) which version was that regression introduced in.

review: Needs Fixing

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'doc/source/conf.py'
--- doc/source/conf.py 2012-10-19 10:46:01 +0000
+++ doc/source/conf.py 2012-10-24 18:16:20 +0000
@@ -54,7 +54,7 @@
54# The short X.Y version.54# The short X.Y version.
55version = '5.5'55version = '5.5'
56# The full version, including alpha/beta/rc tags.56# The full version, including alpha/beta/rc tags.
57release = '5.5.27-29.0'57release = '5.5.28-29.1'
5858
59# The language for content autogenerated by Sphinx. Refer to documentation59# The language for content autogenerated by Sphinx. Refer to documentation
60# for a list of supported languages.60# for a list of supported languages.
@@ -130,8 +130,8 @@
130#modindex_common_prefix = []130#modindex_common_prefix = []
131131
132extlinks = {'bug': ('https://bugs.launchpad.net/percona-server/+bug/%s',132extlinks = {'bug': ('https://bugs.launchpad.net/percona-server/+bug/%s',
133 '#')}133 '#'), 'upbug': ('http://bugs.mysql.com/bug.php?id=%s',
134134 '#') }
135135
136# -- Options for HTML output ---------------------------------------------------136# -- Options for HTML output ---------------------------------------------------
137137
138138
=== modified file 'doc/source/glossary.rst'
--- doc/source/glossary.rst 2012-08-21 05:55:28 +0000
+++ doc/source/glossary.rst 2012-10-24 18:16:20 +0000
@@ -89,6 +89,8 @@
89 the Oracle distribution of MySQL as distinct from the drop-in89 the Oracle distribution of MySQL as distinct from the drop-in
90 replacements such as :term:`MariaDB` and :term:`Percona Server`.90 replacements such as :term:`MariaDB` and :term:`Percona Server`.
9191
92 NUMA
93 Non-Uniform Memory Access (`NUMA <http://en.wikipedia.org/wiki/Non-Uniform_Memory_Access>`_) is a computer memory design used in multiprocessing, where the memory access time depends on the memory location relative to a processor. Under NUMA, a processor can access its own local memory faster than non-local memory, that is, memory local to another processor or memory shared between processors. The whole system may still operate as one unit, and all memory is basically accessible from everywhere, but at a potentially higher latency and lower performance.
9294
93 Percona Server95 Percona Server
94 Percona's branch of :term:`MySQL` with performance and management improvements.96 Percona's branch of :term:`MySQL` with performance and management improvements.
9597
=== modified file 'doc/source/index.rst'
--- doc/source/index.rst 2012-10-19 10:46:01 +0000
+++ doc/source/index.rst 2012-10-24 18:16:20 +0000
@@ -75,6 +75,7 @@
75 performance/remove_fcntl_excessive_calls75 performance/remove_fcntl_excessive_calls
76 performance/innodb_opt_lru_count76 performance/innodb_opt_lru_count
77 performance/innodb_thread_concurrency_timer_based77 performance/innodb_thread_concurrency_timer_based
78 performance/innodb_numa_support
78 performance/handlersocket79 performance/handlersocket
7980
80Flexibility Improvements81Flexibility Improvements
8182
=== added file 'doc/source/performance/innodb_numa_support.rst'
--- doc/source/performance/innodb_numa_support.rst 1970-01-01 00:00:00 +0000
+++ doc/source/performance/innodb_numa_support.rst 2012-10-24 18:16:20 +0000
@@ -0,0 +1,66 @@
1.. _innodb_numa_support:
2
3===========================
4 Improved ``NUMA`` support
5===========================
6
7In cases where the buffer pool memory allocation was bigger than size of the node, system would start swapping already allocated memory even if there is available memory on other node. This is would happen if the default :term:`NUMA` memory allocation policy was selected. In that case system would favor one node more than other which caused the node to run out of memory. Changing the allocation policy to interleaving, memory will be allocated in round-robing fashion over the available node. This can be done by using the mysqld_safe :variable:`numa_interleave` option.
8
9Another improvement implemented is preallocating the pages in the buffer pool on startup with :variable:`innodb_buffer_pool_populate` variable. This forces ``NUMA`` allocation decisions to be made immediately while the buffer cache is clean.
10
11It is generally recommended to enable all of the options together to maximize the performance effects on the ``NUMA`` architecture.
12
13Version Specific Information
14============================
15
16 * :rn:`5.5.28-29.1`
17 Improved ``NUMA`` support implemented. This feature was ported from Twitter's |MySQL| patches.
18
19System Variables
20================
21
22.. variable:: innodb_buffer_pool_populate
23
24 :cli: Yes
25 :conf: No
26 :location: mysqld
27 :scope: Global
28 :dyn: No
29 :vartype: Boolean
30 :default: OFF
31 :range: ON/OFF
32
33When this variable is enabled, |InnoDB| preallocates pages in the buffer pool on startup to force ``NUMA`` allocation decisions to be made immediately while the buffer cache is clean.
34
35Command-line Options
36=====================
37
38.. variable:: flush_caches
39
40 :cli: No
41 :conf: No
42 :location: mysqld_safe
43 :dyn: No
44 :vartype: Boolean
45 :default: OFF
46 :range: ON/OFF
47
48When enabled this will flush and purge buffers/caches before starting the server to help ensure ``NUMA`` allocation fairness across nodes. This option is useful for establishing a consistent and predictable behavior for normal usage and/or benchmarking.
49
50.. variable:: numa_interleave
51
52 :cli: No
53 :conf: No
54 :location: mysqld_safe
55 :dyn: No
56 :vartype: Boolean
57 :default: OFF
58 :range: ON/OFF
59
60When this option is enabled, mysqld will run with its memory interleaved on all ``NUMA`` nodes by starting it with ``numactl --interleave=all``. In case there is just 1 CPU/node, allocations will be "interleaved" between that node.
61
62Other Reading
63=============
64
65 * `The MySQL "swap insanity" problem and the effects of the NUMA architecture <http://blog.jcole.us/2010/09/28/mysql-swap-insanity-and-the-numa-architecture/>`_
66 * `A brief update on NUMA and MySQL <http://blog.jcole.us/2012/04/16/a-brief-update-on-numa-and-mysql/>`_
067
=== added file 'doc/source/release-notes/Percona-Server-5.5.15-21.0.rst'
--- doc/source/release-notes/Percona-Server-5.5.15-21.0.rst 1970-01-01 00:00:00 +0000
+++ doc/source/release-notes/Percona-Server-5.5.15-21.0.rst 2012-10-24 18:16:20 +0000
@@ -0,0 +1,22 @@
1.. rn:: 5.5.15-21.0
2
3============================
4|Percona Server| 5.5.15-21.0
5============================
6
7Percona is glad to announce the release of |Percona Server| 5.5.15-21.0 on August 31, 2011 (Downloads are available `here <http://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-5.5.15-21.0/>`_ and from the `Percona Software Repositories <http://http://www.percona.com/doc/percona-server/5.5/installation.html>`_).
8
9Based on |MySQL| 5.5.15, including all the bug fixes in it, |Percona Server| 5.5.15-21.0 is now the current stable release in the 5.5 series. All of Percona's software is open-source and free, all the details of the release can be found in the `5.5.15-21.0 milestone at Launchpad <https://launchpad.net/percona-server/+milestone/5.5.15-21.0>`_.
10
11
12New features
13=============
14
15As of MySQL 5.5.15, a *Fixed Row Format* (FRF) is still being used in the ``MEMORY`` storage engine. The fixed row format imposes restrictions on the type of columns as it assigns on advance a limited amount of memory per row. This renders a ``VARCHAR`` field in a ``CHAR`` field in practice, making impossible to have a TEXT or BLOB field with that engine implementation.
16
17To overcome this limitation, the :ref:`improved_memory_engine` is introduced in this release for supporting true ``VARCHAR``, ``VARBINARY``, ``TEXT`` and ``BLOB`` fields in ``MEMORY`` tables.
18This implementation is based on the *Dynamic Row Format* (DFR) introduced by the mysql-heap-dynamic-rows patch.
19DFR is used to store column values in a variable-length form, thus helping to decrease memory footprint of those columns and making possible BLOB and TEXT fields and real `VARCHAR` and `VARBINARY`.
20
21For performance reasons, a mixed solution is implemented: the fixed format is used at the beginning of the row, while the dynamic one is used for the rest of it. All values for columns used in indexes are stored in fixed format at the first block of the row, then the following columns are handled with DRF.
22
023
=== added file 'doc/source/release-notes/Percona-Server-5.5.28-29.1.rst'
--- doc/source/release-notes/Percona-Server-5.5.28-29.1.rst 1970-01-01 00:00:00 +0000
+++ doc/source/release-notes/Percona-Server-5.5.28-29.1.rst 2012-10-24 18:16:20 +0000
@@ -0,0 +1,27 @@
1.. rn:: 5.5.28-29.1
2
3===============================
4 |Percona Server| 5.5.28-29.1
5===============================
6
7Percona is glad to announce the release of |Percona Server| 5.5.28-29.1 on October 26th, 2012 (Downloads are available `here <http://www.percona.com/downloads/Percona-Server-5.5/Percona-Server-5.5.28-29.1/>`_ and from the `Percona Software Repositories <http://www.percona.com/docs/wiki/repositories:start>`_).
8
9Based on `MySQL 5.5.28 <http://dev.mysql.com/doc/refman/5.5/en/news-5.5.28.html>`_, including all the bug fixes in it, |Percona Server| 5.5.28-29.1 is now the current stable release in the 5.5 series. All of |Percona|'s software is open-source and free, all the details of the release can be found in the `5.5.28-29.1 milestone at Launchpad <https://launchpad.net/percona-server/+milestone/5.5.28-29.1>`_.
10
11New Features
12============
13
14 |Percona Server| has ported Twitter's |MySQL| ``NUMA`` patch. This patch implements :ref:`innodb_numa_support` as it prevents imbalanced memory allocation across NUMA nodes.
15
16Bug Fixes
17=========
18
19 |Percona Server| would disconnect clients if ``gdb`` was attached and detached. This was caused by wrong signal handling. Bugs fixed :bug:`805805` and :bug:`1060136` (*Laurynas Biveinis*).
20
21 Fixed the upstream |MySQL| :upbug:`62856`, where slave server would crash after update statement. Bug fixed :bug:`1053342` (*George Ormond Lorch III*).
22
23 Reads from tablespaces being deleted would result in buffer pool locking error. Bug fixed :bug:`1053342` (*Stewart Smith*).
24
25 Resolved the *Ubuntu* |Percona Server| package conflicts with upstream packages. Bug fixed :bug:`907499` (*Ignacio Nin*).
26
27 Crash-resistant replication would break with binlog XA transaction recovery. If a crash would happened between XA PREPARE and COMMIT stages, the prepared |InnoDB| transaction would not have the slave position recorded and thus would fail to update it once it is replayed during binlog crash recovery. Bug fixed :bug:`1012715` (*Laurynas Biveinis*).

Subscribers

People subscribed via source and target branches