maria:bb-10.5-MDEV-23299-danielblack-pr-1643

Last commit made on 2020-07-31
Get this branch:
git clone -b bb-10.5-MDEV-23299-danielblack-pr-1643 https://git.launchpad.net/maria

Branch merges

Branch information

Name:
bb-10.5-MDEV-23299-danielblack-pr-1643
Repository:
lp:maria

Recent commits

17994c9... by zbdba

MDEV-23299: Bad data in mysql.func can cause crash

udf_init() can crash when the name field is empty.

We correct this by applying CHECK column constraints on
columns in the mysql.func tables.

The constrains are as follows:
* name cannot be an empty string;
* ret, the return type can be;
  * STRING_RESULT(0),
  * REAL_RESULT(1),
  * INT_RESULT(2),
  * and DECIMAL_RESULT(4);
  * but not ROW_RESULT(3) or TIME_RESULT(5).
* dl, cannot be empty string

Upgrades ensure that any invalid functions are deleted.

closes #1643

f99de89... by Otto Kekäläinen

Deb: Make RocksDB plugin depend on python3 as myrocks_hotbackup needs it

This fixes the Lintian error and thus the Lintian override can also be
removed.

a10f72a... by Otto Kekäläinen

Deb: Proper DH_ and DEB_ flag use in debian/rules

- DEB_BUILD_HARDENING is only used with hardening-wrapper which is
  deprecated in Debian, so remove it
- The word 'terse' should be checked in DEB_BUILD_OPTIONS and verbosity
  controlled by it

497e7ed... by Otto Kekäläinen

Deb: Stop suggesting tinyca, upstream project does not exist anymore

TinyCA has not been updated since 2016 and was removed from Debian in 2019
and the dev site https://tinyca.alioth.debian.org/ is offline.

See https://tracker.debian.org/pkg/tinyca

bdf8268... by Otto Kekäläinen

Deb: Simplify and unify autobake-deb.sh

- Remove excess build flag from debian/rules that does nothing, introduced
  wrongly in commit 7cbde2d0a29e214afba4d5d30af890002fbf7db2. Instead
  implement the embedded server build skipping on Travis-CI correctly.
- Simplify structure by doing all Travis-CI slimdown in one step.
- Remove unnecessary -e from sed, as it does nothing. When regex is needed,
  use -r. Move -i to last so it is close to the file name it has an
  argument.
- Remove backwards compat checks that are no longer relevant as neither
  Debian Jessie (was before Stretch) nor Ubuntu Trusty (before Xenial)
  are supported nor built for anymore. For example the GCC 4.8 check
  if not relevant anymore, since Debian Jessie already has 4.9 and
  Ubuntu Xenial has 5.3 and there is no GCC < 4.8 around anymore.
- Skip building ColumnStore on both Travis-CI and Gitlab-CI as it is
  way too slow (time) and big (disk space) to pass.

7a0fa9d... by Otto Kekäläinen

Deb: Cleanup and document

- Remove unnecessary unused files
- Remove duplicate encryption configuration sample from sources and
  re-use the identical file in RPM directory instead
- Clean away harmful "default-character-set = utf8mb4" from client config
  as it is unnecassary (server enforces utf8mb4 anyway by default) and
  could cause issues with mysqlbinlog and other tools (MDEV-22981).
- Update S3 plugin description to be long enough
- Remove trailing whitespace from support-files and Debian packaging.
- Clean away fixed Lintian issues
- Clean away temporary Salsa-CI fixes now that 10.5.4 is out and is fixed
- Apply wrap-and-sort -a -v

7c1807a... by Otto Kekäläinen

Deb: On upgrades, stop both mysqld and mariadbd for backwards compat

b8031e3... by Otto Kekäläinen

Use mktemp instead of deprecated tempfile

This fixes the warning emitted during `/etc/init.d/mariadb restart`:
  WARNING: tempfile is deprecated; consider using mktemp instead.

ab48901... by Otto Kekäläinen

Fix spelling errors

05fa455... by Marko Mäkelä

MDEV-22110 InnoDB unnecessarily writes unmodified pages

At least since commit 6a7be48b1b0b4107bf6991240ae69fcec0b7189a
InnoDB appears to be invoking buf_flush_note_modification() on pages
that were exclusively latched but not modified in a mini-transaction.

MTR_MEMO_MODIFY, mtr_t::modify(): Define not only in debug code,
but also in release code. We will set the MTR_MEMO_MODIFY flag
on the earliest mtr_t::m_memo entry that we find.

MTR_LOG_NONE: Only use this mode in cases where the previous
mode will be restored before anything is modified in the mini-transaction.

MTR_MEMO_PAGE_X_MODIFY, MTR_MEMO_PAGE_SX_MODIFY: The allowed flag
combinations that include MTR_MEMO_MODIFY.

ReleaseBlocks: Only invoke buf_flush_note_modification()
on those buffer pool blocks on which mtr_t::set_modified()
and mtr_t::modify() were invoked.