Split an LRU manager thread out of the page cleaner thread,
implementing
https://blueprints.launchpad.net/percona-server/+spec/lru-manager-thread.

Declare new thread entry point buf_lru_manager_thread().  Move LRU
flushing-related code from buf_flush_page_cleaner_thread().  Spawn
this thread from innobase_start_or_create_for_mysql().

Revert the change that was needed by
https://blueprints.launchpad.net/percona-server/+spec/xtradb-empty-free-list-backoff
in buf_flush_ready_for_flush() and allow flush list flushing of
latched pages again.

Introduce a new flag buf_lru_manager_is_active that is used instead of
buf_page_cleaner_is_active by buf_LRU_get_free_block().

Adjust innodb_sched_priority_cleaner_update() to set the priority for
both cleaner and LRU manager threads.

Define a PFS key for the new thread.  Re-record
perfschema.threads_innodb testcase.
Automerge prerequisite branch
Fix bug 1238039 (Spurious innodb_io_capacity-sized flush list flushes
on a loaded server).

The fix is to maintain the timestamp of the last last_activity update
in the main page cleaner thread loop.  Then, perform busy server tasks
not only if the server activity has advanced, but also if it has not
advanced for less than 1 second.
Add TokuDB compression format ROW_TYPE support, implementing
https://blueprints.launchpad.net/percona-server/+spec/support-tokudb-compression-algorithms.

Add new lexer symbols TOKUDB_UNCOMPRESSED, TOKUDB_ZLIB,
TOKUDB_QUICKLZ, TOKUDB_LZMA, TOKUDB_FAST, TOKUDB_SMALL, accept them as
valid ROW_TYPE option values in the parser, add corresponding values
to enum row_type.

Add support for them to get_schema_tables_record() so that
INFORMATION_SCHEMA.TABLES can return them, as well as bump
ROW_FORMAT field length for I_S.TABLES and I_S.FILES tables to
accomodate longer strings.

In InnoDB, handle the new option values as unsupported in
get_row_format_name(), create_options_are_invalid(),
innobase_table_flags().  Other SEs do not require this.

Add a testcase tokudb_zip_grammar to test the grammar changes and
InnoDB/MyISAM/Memory handling of compression formats as unsupported
create options.  Re-record information_schema, mysqldump, show_check,
funcs_1.is_tables, and funcs_1.is_columns_is for the changed
I_S.*.ROW_FORMAT width.
References lp:1261634 - bumped wsrep patch version to 25.2
- release notes for Percona-Server-5.1.73-14.11
- upstream bugs fixed list update
- Bug fixed: Bug #125464
Fix bug 1255549 (Crash on startup when XA support functions activated
by a second engine) / http://bugs.mysql.com/bug.php?id=47134.

The fix is a combination of:

- disabling of code in ha_recover() that asserts if more than one XA
  SE is installed;

- MariaDB revisions 2502.102.122, 2502.102.167 (minus PBXT testcase),
  2502.565.20, 2502.102.215 (minus PBXT testcase and a bit that was
  later reverted as MDEV-3850) in lp:maria/5.5.  They address:

  - TC_LOG_MMAP::open() performed incorrect pointer arithmetics to set
    the end pointer for each page by adding tc_log_page_size
    (byte-sized) number of XIDs (ulonglong-sized).
  - TC_LOG_MMAP::PAGE::ptr field was never initialized.
  - TC_LOG_MMAP::pool reads and writes in
    TC_LOG_MMAP::get_active_from_pool() failed to be protected by
    TC_LOG_MMAP::LOCK_pool if !syncing.
  - If TC_LOG_MMAP::get_active_from_pool() sees that the first page in
    the pool has no waiters, it returns it as an active page, and
    fails to check whether there is any free space on it.
  - active->free and active->size were accessed without active->lock
    protection in TC_LOG_MMAP::get_active_from_pool().
  - tc_log_cur_pages_used was not protected from race conditions in
    bumping it.
  - The TC_LOG_MMAP::log_xid() return value check was inverted in
    TC_LOG_MMAP::commit().
  - active == NULL in TC_LOG_MMAP::log_xid() would result in the new
    active page lock locked twice.
  - LOCK_active was released too early in TC_LOG_MMAP::log_xid(),
    resulting in TC_LOG_MMAP::active access race conditions.
  - There was a lock order violation between LOCK_sync and page locks
    in TC_LOG_MMAP::log_xid().
  - LOCK_active was held needlessly, and page field accesses were not
    protected by a page lock in TC_LOG_MMAP::log_xid() if
    TC_LOG_MMAP::syncing != NULL.
  - TC_LOG_MMAP::sync() requested to sync only 1 byte from the page
    being synced.
  - TC_LOG_MMAP::sync() broadcasted syncing->cond too early.
  - TC_LOG_MMAP::sync() could dereference NULL active.
  - TC_LOG_MMAP::unlog() performed page writes without the page lock
    locked.
  - Do not assert but return error in the case the opened log was
    shorter than three pages long in TC_LOG_MMAP::open().
  - If TC_LOG_MMAP::get_active_from_pool() chooses the last pool page
    to be made active, it was not unlinked from the pool.

- backport of the tc_log_mmap unit test from MySQL 5.7.2 with a
  supporting TC_LOG_MMAP::size() method.
Fix bug 1255551 (Tc_log_page_size should be unflushable or server
crashes if 2 XA SEs installed) / upstream
http://bugs.mysql.com/bug.php?id=70854.

The issue is FLUSH STATUS resetting tc_log_page_size to zero and a
later TC_LOG_MMAP::unlog() attempt to divide by it.

Fixed by making it unflushable.
Automerge lp:~laurynas-biveinis/percona-server/tokudb-compression
- release notes for Percona-Server-5.5.35-33.0
- documented threadpool changes
- new extended_mysqlbinlog docs 
- upstream bugs fixed update
- bug fixed: Bug #1254647
- release notes for Percona-Server-5.6.15-63.0
- documented threadpool changes
- new extended_mysqlbinlog docs
- upstream bugs fixed update
- bug fixed: Bug #1254647
Merge lp:~hrvojem/percona-server/rn-5.1.73-14.11-5.6
http://jenkins.percona.com/job/merge-PS-5.6-docs-kickoff/37/
Automerge Ubuntu 13.10 fixes for 5.1
Null-merge Ubuntu 13.10 5.1 fixes
Fix bug 1262500 (ibd files contain bogus trailing zeros and non-page
size file sizes): in the case pwrite() was interrupted, the retried
write would not advance the buffer pointer, resulting in data
corruption.  Also, the case of a partial write writing 0 bytes was not
handled.

Fix by applying a patch by Andrew Gaul, and extending to handle
pread() as well, except that a read would not be restarted if pread()
returned 0 bytes read, as that indicates an EOF instead of a partial
read.
Automerge bug 1262500 fix from 5.1
Automerge bug 1262500 fix from 5.5
Automerge lp:~laurynas-biveinis/percona-server/lru-manager
Automerge lp:~laurynas-biveinis/percona-server/bug1238039
Automerge lp:~laurynas-biveinis/percona-server/bug1262500-5.6