maria:bb-10.3-MDEV-20100

Last commit made on 2020-04-15
Get this branch:
git clone -b bb-10.3-MDEV-20100 https://git.launchpad.net/maria

Branch merges

Branch information

Name:
bb-10.3-MDEV-20100
Repository:
lp:maria

Recent commits

a58516d... by Kentoku SHIBA

MDEV-20100 MariaDB 13.3.9 Crash "[ERROR] mysqld got signal 11 ;"

Some functions on ha_partition call functions on all partitions, but handler->reset() is only called that pruned by m_partitions_to_reset. So Spider didn't clear pointer on unpruned partitions, if the unpruned partitions are used by next query, Spider reference the pointer that is already freed.

9aacda4... by Tulio Magno Quites Machado Filho <email address hidden>

MDEV-21984: POWER crc32 acceleration - fix clang's behavior on versions >= 7

Clang 7 changed the behavior of vec_xxpermdi in order to match GCC's
behavior. After this change, code that used to work on Clang 6 stopped
to work on Clang >= 7.

Tested on Clang 6, 7, 8 and 9.

Reference: https://bugs.llvm.org/show_bug.cgi?id=38192

Upstream fix: https://github.com/antonblanchard/crc32-vpmsum/commit/361aaf77a599995e23acd50c9c50d48d30c69241

811e440... by Otto Kekäläinen

Travis-CI: Shorten deb build log to keep it under 4 MB

There is a 4 MB hard limit on Travis-CI and build output needs to be less
than that. Silencing the 'make install' step gets rid of a lot of
"Installing.." and "Missing.." and removing all mysql-test files will
make the dh_missing warnings much shorter.

396e83d... by Otto Kekäläinen

Travis-CI: Add missing build dependency dh-exec

Backported from 30b44aaec7120f41ee1383536730947cfa427308.

21b8743... by Igor Babaev

MDEV-21673 Calling stored procedure twice in the same session causes MariaDB to crash

This bug could happen only with a stored procedure containing queries with
more than one reference to a CTE that used local variables / parameters.

This bug was the result of an incomplete merge of the fix for the bug
MDEV-17154. The merge covered usage of parameter markers occurred in a CTE
that was referenced more than once, but missed coverage of local variables.

fbef428... by Vladislav Vaintroub

MDEV-22137 correct documentation of tcp_keepalive_time system variable

0932c58... by midenok

MDEV-20515 multi-update tries to position updated table by null reference

Cause

Join tmp table inserts null row because of OUTER JOIN, that's
expected. Since `multi_update::prepare2()` converted
`Item_temptable_rowid` into `Item_field` (28dbdf3)
`multi_update::send_data()` accesses join tmp record directly and
treats it as a normal row ignoring null status of ref field. NULL ref
field is then treated as normal in `multi_update::do_updates()` which
tries to position updated table by reference 0.

Note that reference 0 may be valid reference and the first row of
table can be wrongly updated (see multi_update.test).

Fix

Do not add row into multi-update tmp table in case of null ref
field. Join tmp table does not have null_row status at this time (as
well as `STATUS_NULL_ROW`) and cannot be skipped by these properties
(see first comment in multi_update::send_data()). But it has all null
fields (including the ref field).

ba34f40... by midenok

MDEV-21688 Assertion or ER_WARN_DATA_OUT_OF_RANGE upon ALTER on previously versioned table

Earlier skip of history row. Cleanup of dead code for VTMD.

44c6c7a... by midenok

MDEV-21342 Assertion in set_ok_status() upon spatial field error on system-versioned table

SQL_SELECT::check_quick() returns error status only
test_quick_select() returns -1. Fix error handling when lower frames
throw error, but it is ignored by test_quick_select(). Fix return
status for out-of-memory errors which are obviously must be processed
as error in upper frames.

9149017... by Nikita Malyavin

MDEV-17091 - Assertion failed after dropping versioning

Assertion `old_part_id == m_last_part' failed in ha_partition::update_row or `part_id == m_last_part' in ha_partition::delete_row upon UPDATE/DELETE after dropping versioning

PRIMARY KEY change hadn't been treated as partition reorganization in case of partitioning by KEY() (without parameters).

* set `*partition_changed= true` in the described case.
* since add/drop system versioning does not affect alter_info->key_list, it required separate attention