maria:bb-10.4-spetrunia

Last commit made on 2021-11-29
Get this branch:
git clone -b bb-10.4-spetrunia https://git.launchpad.net/maria

Branch merges

Branch information

Name:
bb-10.4-spetrunia
Repository:
lp:maria

Recent commits

cca4e14... by Sergey Petrunia

Make the Optimizer Trace of reqular query and PS EXECUTE be identical

Print this piece when we've just made the choice to convert to semi-join.
Also, print it when we've already made that choice before:

  transformation": {
     "select_id": 2,
     "from": "IN (SELECT)",
     "to": "semijoin",
     "chosen": true
   }

4da2273... by Marko Mäkelä

Merge 10.3 into 10.4

fafe60e... by Marko Mäkelä

MDEV-27134: Sporadic failure of DROP DATABASE test

Let us create and drop a separate database for getting rid of the
default database in the MDEV-22781 test.

289721d... by Marko Mäkelä

Merge 10.2 into 10.3

f5441ef... by Sergei Golubchik

MDEV-26972 MTR worker aborts after server restart failure

restore the old behavior where without a debugger mtr does not
wait for mysqld to start. It was broken in feacc0aaf2

a96b428... by Sergei Golubchik

MDEV-26755 innodb.undo_truncate: ilink::assert_linked(): Assertion `prev != 0 && next != 0' failed

close_connections() in mysqld.cc sends a signal to all threads.
But InnoDB is too busy purging, doesn't react immediately.
close_connections() waits 20 seconds, which isn't enough in this
particular case, and then unlinks all threads from
the list and forcibly closes their vio connection.

InnoDB background threads have no vio connection to close, but
they're unlinked all the same. So when later they finally notice
the shutdown request and try to unlink themselves, they fail to
assert that they're still linked.

Fix: don't assert_linked, as another thread can unlink this THD anytime

4ba7478... by Sergei Golubchik

add a test case

MDEV-20330 Combination of "," (comma), cross join and left join fails to parse

e9572e5... by Hugo Wen <email address hidden>

MDEV-27124: Update definer of Add/DropGeometryColumn procedures from 'root' to 'mariadb.sys'

From 10.4.13, the `mariadb.sys` user was created to replace `root` definers.
 - In commit 0253ea7f2208354b187ffcfa2f3128878597cc11, definer of
   Add/DropGeometryColumn procedures was changed to `mariadb.sys`, in
   `scripts/maria_add_gis_sp.sql.in`.
   However, maria_add_gis_sp.sql only applies to new databases created by
   installation script. Databases upgraded from old versions will miss this
   change.
 - In addition, according to commit
   0d6d801e5886208b2632247d88da106a543e1032(MDEV-23102), in some scenarios
   when root user is replaced it will skip creating `mariadb.sys` user.

This commit is to update the definer from `root` to `mariadb.sys` during
upgrade. It only makes the change if the original definers are root.

Doesn't choose to execute `maria_add_gis_sp.sql` in upgrade script to
recreate the procedures is because of considering the scenarios of
MDEV-23102 that `root` user is replaced and `mariadb.sys` is not created.

All new code of the whole pull request, including one or several files
that are either new files or modified ones, are contributed under the
BSD-new license. I am contributing on behalf of my employer Amazon Web
Services, Inc.

f809a4f... by ryancaicse <email address hidden>

MDEV-26558 Fix a deadlock due to cyclic dependence

Fix a potential deadlock bug between locks ctrl_mutex and entry->mutex

b53ee76... by Marko Mäkelä

Cleanup: offsetof instead of my_offsetof

Sys_lc_messages, Sys_lc_time_names: Use offsetof(MY_LOCALE, ...)
because the type has standard layout.