Remove some Valgrind check requests that were broken by the following:

Bug#16249481 INNODB DOES NOT SCALE WELL ON 12 CORE SYSTEM FOR
SPECIFIC ALL IN MEMORY SELECT

     This fix increased sizeof(buf_page_t) from 64 bytes even on
     32-bit systems.

WL#5522 Fix the IMPORT tablespace performance.

     This fix made sizeof(page_zip_des_t) something else than a power
     of two.

The removed UNIV_MEM_ASSERT_RW() checks were only enabled on 32-bit
systems. Since the above changes, they would emit bogus warnings about
unused "pad" bytes being uninitialized.
Raise version number after cloning 5.5.38
Raise version number after cloning 5.5.38 and upmerge the 5.5 build
Backport from trunk:
Bug #18593044 COMPILE FLAGS NOT PASSED TO DTRACE, BREAKS CROSS BUILD
Backport from trunk:
Bug #18593044 COMPILE FLAGS NOT PASSED TO DTRACE, BREAKS CROSS BUILD
Bug#17638477 UNINSTALL AND INSTALL SEMI-SYNC PLUGIN CAUSES SLAVES TO BREAK

Problem: Uninstallation of semi sync plugin causes replication to
break.

Analysis: A semisync enabled replication is mutual agreement between
Master and Slave when the connection (I/O thread) is established.
Once I/O thread is started and if semisync is enabled on both
master and slave, master appends special magic header to events
using semisync plugin functions and sends it to slave. And slave
expects that each event will have that special magic header format
and reads those bytes using semisync plugin functions.

When semi sync replication is in use if users execute
uninstallation of the plugin on master, slave gets confused while
interpreting that event's content because it expects special 
magic header at the beginning of the event. Slave SQL thread will
be stopped with "Missing magic number in the header" error.

Similar problem will happen if uninstallation of the plugin happens
on slave when semi sync replication is in in use. Master sends
the events with magic header and slave does not know about the
added magic header and thinks that it received a corrupted event.
Hence slave SQL thread stops with "Found  corrupted event" error.

Fix: Uninstallation of semisync plugin will be blocked when semisync
replication is in use and will throw 'ER_UNKNOWN_ERROR' error.
To detect that semisync replication is in use, this patch uses
semisync status variable values.
 > On Master, it checks for 'Rpl_semi_sync_master_status' to be OFF
    before allowing the uninstallation of rpl_semi_sync_master plugin.
    >> Rpl_semi_sync_master_status is OFF when
        >>> there is no dump thread running
        >>> there are no semisync slaves
 > On Slave, it checks for 'Rpl_semi_sync_slave_status' to be OFF
    before allowing the uninstallation of rpl_semi_sync_slave plugin.
    >> Rpl_semi_sync_slave_status is OFF when
       >>> there is no I/O thread running
       >>> replication is asynchronous replication.
Bug#17638477 UNINSTALL AND INSTALL SEMI-SYNC PLUGIN CAUSES SLAVES TO BREAK

Merging fix from mysql-5.5
Bug#17638477 UNINSTALL AND INSTALL SEMI-SYNC PLUGIN CAUSES SLAVES TO BREAK

Fixing post push failure
Bug#17638477 UNINSTALL AND INSTALL SEMI-SYNC PLUGIN CAUSES SLAVES TO BREAK

Null merge from mysql-5.5
Bug#17909699: WRONG RESULTS WITH PARTITION BY LIST COLUMNS()

Typo leading to not including the last list values (partition).

Also improved pruning to skip last partition if not used.

rb#4762 approved by Aditya and Marko.
Merge of bug#17909699 into mysql-5.6
Bug#17588419: INSERT ON DUPLICATE KEY UPDATE FAILING AFTER
MYSQL 5.6 UPGRADE.

Problem:
========
After upgrading a MySQL 5.5.23 slave to 5.6.14 (the master
still runs 5.5.23) on executing INSERT ON DUPLICATE KEY
following error is reported in SBR.

[ERROR] Slave SQL: Error 'Auto-increment value in UPDATE
conflicts with internally generated values' on query.

Analysis:
========
On master when user specifies an autoincrement value in
multi insert statement the user given value is compared with
current auto increment value and current + number of rows
affected value. Whenever the user specified value falls
within the given range ER_AUTO_INCREMENT_CONFLICT error is
generated.


On the slave the range is set to the value ULONGULONG_MAX
by default. Whenever user specifies any value it will
always fall within the above range and error gets generated.

On slave each DML operation will result in n number of rows
being manipulated. When number of manipulated rows is known
the value range can be reset to currect value to current+n.

Fix:
===
On slave identify the number of rows being manipulated.
Reset the value ranage from currnet value to current
value + number of maninupated rows. If the number is not
known go ahead with default values.
Bug#17638477 UNINSTALL AND INSTALL SEMI-SYNC PLUGIN CAUSES SLAVES TO BREAK

Fixing post push failure
Bug#17638477 UNINSTALL AND INSTALL SEMI-SYNC PLUGIN CAUSES SLAVES TO BREAK

Null merge from mysql-5.5
Bug#17909656  - WRONG RESULTS FOR A SIMPLE QUERY WITH GROUP BY

Problem:
If there is a predicate on a column referenced by MIN/MAX and
that predicate is not present in all the disjunctions on
keyparts earlier in the compound index, Loose Index Scan will
not return correct result.

Analysis:
When loose index scan is chosen, range optimizer currently
groups all the predicates that contain group parts separately
and minmax parts separately. It therefore applies all the
conditions on the group parts first to the fetched row.
Then in the call to next_max, it processes the conditions
which have min/max keypart.

For ex in the following query:
Select f1, max(f2) from t1 where (f1 = 10 and f2 = 13) or
(f1 = 3) group by f1;
Condition (f2 = 13) would be applied even for rows that
satisfy (f1 = 3) thereby giving wrong results.

Solution:
Do not choose loose_index_scan for such cases. So a new rule
WA2 is introduced to take care of the same.

WA2: "If there are predicates on C, these predicates must
be in conjuction to all predicates on all earlier keyparts
in I."

Todo the same, fix reuses the function get_constant_key_infix().
Since this funciton will fail for all multi-range conditions, it
is re-written to recognize that if the sub-conditions are
equivalent across the disjuncts: it will now succeed.
And to achieve this a new helper function is introduced called
all_same().

The fix also moves the test of NGA3 up to the former only
caller, get_constant_key_infix().
Merge from 5.5 to 5.6
Fixing compilation error. Post push fix for Bug#17909656
Merge from 5.5 to 5.6
BUG#17798076 - BUG#16418661 CLEANUP: REMOVE UNNECESSARY BUF_FLUSH_LIST()
               DURING RECOVERY

Why and when the extra buf_flush_list() was added?
--------------------------------------------------
The extra buf_flush_list() was added as part of rb#2293.
The testcase for rb#2293 failed randomly reporting inconsistent number
of undo tablespaces. MTR didn't provide a way to use custom
innodb_data_file_path, innodb_undo_tablespaces. See Bug#17059436 So
the workaround is to use "--exec $MYSQLD --args my.cnf" on a empty data
directory. This will create  necessary files and aborts after that.

The extra flush made sure that correct the number of undo tablespaces
reported. This is not correct because the changes are already covered by redo.

So the the ideal solution would be have been to run "--exec $MYSQLD on
the datadir" again to apply redo or allow the bootstrapping to finish
properly and exit.

Fix:
----
Remove uncessary flush. Fix the inconsistent number of undo tablespaces
issue by passing '--skip-grant-tables --innodb-unkown-parameter' to $MYSQLD.
This would allow the bootstrapping to finish and properly exit.

Approved by Marko, Kevin. rb#5234, rb#5320
Backport from trunk:
Bug#18187290 ISSUE WITH BUILDING MYSQL USING CMAKE 2.8.12

We want to upgrade to VS2013 on Windows.
In order to do this, we need to upgrade to cmake 2.8.12
This has introduced some incompatibilities for .pdb files,
and "make install" no longer works.

To reproduce:
  cmake --build . --target package --config debug

The fix:
Rather than installing .pdb files for static libraries, we use the /Z7 flag
to store symbolic debugging information in the .obj files.