Bug#14547952: DEBUG BUILD FAILS ASSERTION IN RECORDS_IN_RANGE()

ha_innobase::records_in_range(): Remove a debug assertion
that prohibits an open range (full table).
This assertion catches unnecessary calls to this method, 
but such calls are not harming correctness.
Bug#14547952: DEBUG BUILD FAILS ASSERTION IN RECORDS_IN_RANGE()

ha_innodb::records_in_range(): Remove a debug assertion
that prohibits an open range (full table).

The patch by Jorgen Loland only removed the assertion from the
built-in InnoDB, not from the InnoDB Plugin.
Bug#14554000 CRASH IN PAGE_REC_GET_NTH_CONST(NTH=0) DURING COMPRESSED
PAGE SPLIT

page_rec_get_nth_const(): Map nth==0 to the page infimum.

btr_compress(adjust=TRUE): Add a debug assertion for nth>0. The cursor
should never be positioned on the page infimum.

btr_index_page_validate(): Add test instrumentation for checking the
return values of page_rec_get_nth_const() during CHECK TABLE, and for
checking that the page directory slot 0 always contains only one
record, the predefined page infimum record.

page_cur_delete_rec(), page_delete_rec_list_end(): Add debug
assertions guarding against accessing the page slot 0.

page_copy_rec_list_start(): Clarify a comment about ret_pos==0.

rb:1248 approved by Jimmy Yang
Bug #13453036 ERROR CODE 1118: ROW SIZE TOO LARGE - EVEN 
THOUGH IT IS NOT.

The following error message is misleading because it claims 
that the BLOB space is not counted.  

"ERROR 1118 (42000): Row size too large. The maximum row size for 
the used table type, not counting BLOBs, is 8126. You have to 
change some columns to TEXT or BLOBs"

When the ROW_FORMAT=compact or ROW_FORMAT=REDUNDANT is used,
the BLOB prefix is stored inline along with the row.  So 
the above error message is changed as follows depending on
the row format used:

For ROW_FORMAT=COMPRESSED or ROW_FORMAT=DYNAMIC, the error
message is as follows:

"ERROR 42000: Row size too large (> 8126). Changing some
columns to TEXT or BLOB may help. In current row format, 
BLOB prefix of 0 bytes is stored inline."

For ROW_FORMAT=COMPACT or ROW_FORMAT=REDUNDANT, the error
message is as follows:

"ERROR 42000: Row size too large (> 8126). Changing some
columns to TEXT or BLOB or using ROW_FORMAT=DYNAMIC or 
ROW_FORMAT=COMPRESSED may help. In current row
format, BLOB prefix of 768 bytes is stored inline."

rb://1252 approved by Marko Makela
Bug#13734987 MEMORY LEAK WITH I_S/SHOW AND VIEWS WITH SUBQUERY

In fill_schema_table_by_open(): free item list before restoring active arena.
Spec file change to work around cast ulonglong -> int.
fixed MDEV-568: Wrong result for a hash index look-up if the index is unique and the key is NULL 

Check ability of index to be NULL as it made in MyISAM. UNIQUE with NULL could have several NULL entries so we have to continue even if ve have found a row.
MDEV-746: Merged mysql fix of the bug LP:1002546 & MySQL Bug#13651009.

Empty result after reading const tables now works for subqueries.
MDEV-616 fix (MySQL fix accepted)
MDEV-772, MDEV-744: Fix test-table-elimination script to work. 
Do not build pbxt.
Fixed MDEV-647,LP:986261 - Aria unit tests fail at ma_test2
Fixed MDEV-612, LP:1010759 - Valgrind error ha_maria::check_if_incompatible_data on 
Fix of non-deterministic results.
Merge 5.1 -> 5.2
Updated with changes from Percona Server 5.1.66-rel14.1 tarball.
Merge XtraDB from Percona-Server 5.1.66-rel14.1 into MariaDB 5.1.
Merge 5.2 -> 5.3