diff options
-rw-r--r-- | debian/salsa-ci.yml | 207 | ||||
-rw-r--r-- | debian/source/lintian-overrides | 8 | ||||
-rw-r--r-- | mysql-test/suite/mariabackup/binlog.result | 2 | ||||
-rw-r--r-- | mysql-test/suite/mariabackup/binlog.test | 2 | ||||
-rw-r--r-- | storage/innobase/CMakeLists.txt | 3 | ||||
-rw-r--r-- | storage/innobase/include/univ.i | 5 | ||||
-rw-r--r-- | storage/innobase/srv/srv0start.cc | 5 |
7 files changed, 115 insertions, 117 deletions
diff --git a/debian/salsa-ci.yml b/debian/salsa-ci.yml index 5eb576d38ee..9975fdc8dea 100644 --- a/debian/salsa-ci.yml +++ b/debian/salsa-ci.yml @@ -21,7 +21,7 @@ stages: - build - test - upgrade in Sid - - upgrade from Bullseye/Buster/Stretch + - upgrade from Bullseye/Buster - upgrade extras - test extras - publish # Stage referenced by Salsa-CI template aptly stanza, so must exist even though not used @@ -54,6 +54,13 @@ build bullseye-backports: build buster-backports: extends: .build-package script: + # Increase default backports priority policy from '100' to '500' so it can actually be used + - | + cat << EOF > /etc/apt/preferences.d/enable-backports-to-satisfy-dependencies + Package: * + Pin: release n=buster-* + Pin-Priority: 500 + EOF - *autobake-deb-steps variables: RELEASE: buster-backports @@ -68,9 +75,17 @@ build i386: variables: ARCH: 'i386' +# Build native deb without using autobake-deb.sh. This way we will detect +# if the debian/control file and other packaging is correct as-is for Debian Sid. build native deb: extends: .build-package +autopkgtest: + extends: .test-autopkgtest + artifacts: + reports: + junit: ${WORKING_DIR}/debci/artifacts/mysql-test-run-junit.xml + piuparts: extends: .test-piuparts stage: test extras @@ -78,6 +93,7 @@ piuparts: blhc: extends: .test-blhc stage: test extras + # Build log checker needs a .build file and thus only works on native build needs: - job: build native deb @@ -96,11 +112,17 @@ blhc: # Prime the apt cache so later apt commands can run apt-get update +# Readline was removed from Debian Sid (and Bullseye) in Feb 2021. To be able to install older +# versions of MariaDB that depend on it, fetch and install it from Buster. +.test-install-readline-in-sid-for-backwards-compat: &test-install-readline-in-sid-for-backwards-compat | + curl -O http://ftp.de.debian.org/debian/pool/main/r/readline5/libreadline5_5.2+dfsg-3+b13_amd64.deb + apt install -y ./libreadline5_5.2+dfsg-3+b13_amd64.deb + .test-verify-initial: &test-verify-initial | dpkg -l | grep -iE 'maria|mysql|galera' || true # List installed service mysql status || service mariadb status # Early MariaDB 10.5 only had 'mariadb' mysql --skip-column-names -e "select @@version, @@version_comment" # Show version - mysql --table -e 'SHOW DATABASES;' # List databases before upgrade + mysql --table -e "SHOW DATABASES;" # List databases before upgrade mysql --table -e "SELECT host,user,plugin,authentication_string FROM user;" mysql mysql --table -e "SELECT * FROM plugin;" mysql mysql --table -e "SHOW PLUGINS;" mysql @@ -125,7 +147,7 @@ blhc: cp -ra /etc/mysql debug/etc-mysql cp -ra /var/log/mysql debug/var-log-mysql mariadb --skip-column-names -e "select @@version, @@version_comment" # Show version - mariadb --table -e 'SHOW DATABASES;' # List databases + mariadb --table -e "SHOW DATABASES;" # List databases mariadb --table -e "SELECT host,user,plugin,authentication_string FROM user;" mysql mariadb --table -e "SELECT * FROM plugin;" mysql mariadb --table -e "SHOW PLUGINS;" mysql @@ -221,7 +243,7 @@ mariadb-10.7 Sid upgrade: - $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/ mariadb-10.5 Bullseye to mariadb-10.7 upgrade: - stage: upgrade from Bullseye/Buster/Stretch + stage: upgrade from Bullseye/Buster needs: - job: build image: debian:bullseye @@ -247,7 +269,7 @@ mariadb-10.5 Bullseye to mariadb-10.7 upgrade: - $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/ mariadb-10.3 Buster to mariadb-10.7 upgrade: - stage: upgrade from Bullseye/Buster/Stretch + stage: upgrade from Bullseye/Buster needs: - job: build image: debian:buster @@ -272,34 +294,6 @@ mariadb-10.3 Buster to mariadb-10.7 upgrade: variables: - $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/ -mariadb-10.1 Stretch to mariadb-10.7 upgrade: - stage: upgrade from Bullseye/Buster/Stretch - needs: - - job: build - image: debian:stretch - artifacts: - when: always - name: "$CI_BUILD_NAME" - paths: - - ${WORKING_DIR}/debug - script: - - *test-prepare-container - # Install almost everything currently in Debian Stretch, - # omitting libmariadbclient-dev-compat as it would conflict - - apt-get install -y 'default-mysql*' 'mariadb-*' 'libmariadbd*' 'libmariadbclient*' - # Verify installation of MariaDB from Stretch - - *test-verify-initial - - apt-get remove -y manpages # Workaround for Bug#99375 - - *test-enable-sid-repos - - *test-install - - service mysql status - - *test-verify-final - variables: - GIT_STRATEGY: none - except: - variables: - - $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/ - test basic features: stage: test needs: @@ -457,11 +451,11 @@ default-libmysqlclient-dev Sid upgrade: variables: - $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/ -default-libmysqlclient-dev Buster upgrade: - stage: upgrade from Bullseye/Buster/Stretch +default-libmysqlclient-dev Bullseye upgrade: + stage: upgrade from Bullseye/Buster needs: - job: build - image: debian:buster + image: debian:bullseye artifacts: when: always name: "$CI_BUILD_NAME" @@ -478,11 +472,11 @@ default-libmysqlclient-dev Buster upgrade: variables: - $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/ -default-libmysqlclient-dev Stretch upgrade: - stage: upgrade from Bullseye/Buster/Stretch +default-libmysqlclient-dev Buster upgrade: + stage: upgrade from Bullseye/Buster needs: - job: build - image: debian:stretch + image: debian:buster artifacts: when: always name: "$CI_BUILD_NAME" @@ -492,37 +486,12 @@ default-libmysqlclient-dev Stretch upgrade: - *test-prepare-container - apt-get install -y pkg-config default-libmysqlclient-dev - pkg-config --list-all - - apt-get remove -y manpages # Workaround for Bug#99375 - - *test-enable-sid-repos - - *test-install-all-libs - - *test-verify-libs - except: - variables: - - $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/ - -mariadb-connector-c Stretch upgrade: - stage: upgrade from Bullseye/Buster/Stretch - needs: - - job: build - image: debian:stretch - artifacts: - when: always - name: "$CI_BUILD_NAME" - paths: - - ${WORKING_DIR}/debug - script: - - *test-prepare-container - - apt-get install -y pkg-config libmariadb2 libmariadb-dev libmariadb-dev-compat - - pkg-config --list-all - - apt-get remove -y manpages # Workaround for Bug#99375 - *test-enable-sid-repos - *test-install-all-libs - *test-verify-libs except: variables: - $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/ - allow_failure: true - # Upgrading libc from Stretch to Bookworm is not possible due to Bug#993755 # Upgrading from MySQL 8.0 with datadir in place is not possible. Users need to do a data dump. # The Debian maintainer scripts detect this situation and simply moves old datadir aside and start fresh. @@ -568,14 +537,14 @@ mysql-8.0 Focal to mariadb-10.7 upgrade: # Add Ubuntu Focal archive keys and repository - apt-get install --no-install-recommends --yes gpg gpg-agent dirmngr ca-certificates # Bare minimal (<4MB) for apt-key to work - apt-key adv --recv-keys --keyserver hkps://keyserver.ubuntu.com:443 871920D1991BC93C 3B4FE6ACC0B21F32 - - echo 'deb http://archive.ubuntu.com/ubuntu/ focal main restricted' > /etc/apt/sources.list.d/ubuntu.list + - echo "deb http://archive.ubuntu.com/ubuntu/ focal main restricted" > /etc/apt/sources.list.d/ubuntu.list - apt-get update # First install often fail due to bug in mysql-8.0 - apt-get install -y mysql-server 'libmysqlc*' || true - sleep 10 && apt-get install -f - *test-verify-initial # Enable backports to make galera-4 available - - echo 'deb http://deb.debian.org/debian buster-backports main' > /etc/apt/sources.list.d/backports.list && apt-get update + - echo "deb http://deb.debian.org/debian buster-backports main" > /etc/apt/sources.list.d/backports.list && apt-get update - *test-install - service mysql status - sleep 5 # Give the mysql_upgrade a bit of time to complete before querying the server @@ -586,12 +555,11 @@ mysql-8.0 Focal to mariadb-10.7 upgrade: variables: - $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/ - -mariadb.org-10.5 to mariadb-10.7 upgrade: +mariadb.org-10.6 to mariadb-10.7 upgrade: stage: upgrade extras needs: - job: build - image: debian:sid + image: debian:${RELEASE} artifacts: when: always name: "$CI_BUILD_NAME" @@ -601,15 +569,12 @@ mariadb.org-10.5 to mariadb-10.7 upgrade: - *test-prepare-container - apt install -y curl - curl -sS https://mariadb.org/mariadb_release_signing_key.asc -o /etc/apt/trusted.gpg.d/mariadb.asc - - echo 'deb http://mirror.one.com/mariadb/repo/10.5/debian sid main' > /etc/apt/sources.list.d/mariadb.list + - echo "deb https://deb.mariadb.org/10.6/debian ${RELEASE} main" > /etc/apt/sources.list.d/mariadb.list - apt-get update - # The 10.5.9 release is missing mariadb-plugin-columnstore, define all other packages but it to avoid hitting the error: - # The following packages have unmet dependencies: - # mariadb-plugin-columnstore : Depends: mariadb-server-10.5 (= 1:10.5.8+maria~sid) but 1:10.5.9+maria~sid is to be installed - - apt-get install -y libmariadb3 'libmariadb-*' 'libmariadbd*' 'mariadb-c*' 'mariadb-b*' 'mariadb-s*' 'mariadb-t*' 'mariadb-plugin-con*' 'mariadb-plugin-cr*' 'mariadb-plugin-g*' 'mariadb-plugin-m*' 'mariadb-plugin-o*' 'mariadb-plugin-s*' - # Once 10.5.10 is out, revert back to: # Package libmariadbclient-dev from mariadb.org conflicts with libmariadb-dev in Sid, so cannot use wildcard that would include it - #- apt-get install -y 'mariadb*' libmariadb3 'libmariadb-*' 'libmariadbd*' + # Enable this line when there is a way to install them only from the mariadb.org repo + # - apt-get install -y 'mariadb*' libmariadb3 'libmariadb-*' 'libmariadbd*' + - apt-get install -y mariadb-server-10.6 - *test-verify-initial # Install MariaDB built in this commit # Force downgrades so our version installs on top of upstream revision, e.g. 1:10.5.5-1 vs 1:10.5.5+mariadb~sid @@ -617,6 +582,41 @@ mariadb.org-10.5 to mariadb-10.7 upgrade: # Verify installation of MariaDB built in this commit - dpkg -l | grep -iE 'maria|mysql|galera' || true # List installed - mariadb --version # Client version + - service mariadb status # There is no init.d/mysql in MariaDB 10.7 + - *test-verify-final + variables: + GIT_STRATEGY: none + except: + variables: + - $CI_COMMIT_TAG != null && $SALSA_CI_ENABLE_PIPELINE_ON_TAGS !~ /^(1|yes|true)$/ + allow_failure: true + # Installation on Sid fails on missing liburing1 because upstream 10.7 + # MariaDB.org buildbot has not run 'apt upgrade' for a long time. + # Remove this allow_failure once buildbot has built a new 10.7 + # release using latest liburing-dev in Debian Sid. + +mariadb.org-10.5 to mariadb-10.7 upgrade: + stage: upgrade extras + needs: + - job: build + image: debian:${RELEASE} + artifacts: + when: always + name: "$CI_BUILD_NAME" + paths: + - ${WORKING_DIR}/debug + script: + - *test-prepare-container + - apt install -y curl + - curl -sS https://mariadb.org/mariadb_release_signing_key.asc -o /etc/apt/trusted.gpg.d/mariadb.asc + - echo "deb https://deb.mariadb.org/10.5/debian ${RELEASE} main" > /etc/apt/sources.list.d/mariadb.list + - apt-get update + - apt-get install -y mariadb-server-10.5 + - *test-verify-initial + # Install MariaDB built in this commit + # Verify installation of MariaDB built in this commit + - dpkg -l | grep -iE 'maria|mysql|galera' || true # List installed + - mariadb --version # Client version - service mariadb status # There is no init.d/mysql in MariaDB 10.5 - *test-verify-final variables: @@ -629,7 +629,7 @@ mariadb.org-10.4 to mariadb-10.7 upgrade: stage: upgrade extras needs: - job: build - image: debian:sid + image: debian:${RELEASE} artifacts: when: always name: "$CI_BUILD_NAME" @@ -639,8 +639,9 @@ mariadb.org-10.4 to mariadb-10.7 upgrade: - *test-prepare-container - apt install -y curl systemctl # systemctl shim needed on platforms that don't have systemd - curl -sS https://mariadb.org/mariadb_release_signing_key.asc -o /etc/apt/trusted.gpg.d/mariadb.asc - - echo 'deb http://mirror.one.com/mariadb/repo/10.4/debian sid main' > /etc/apt/sources.list.d/mariadb.list + - echo "deb https://deb.mariadb.org/10.4/debian ${RELEASE} main" > /etc/apt/sources.list.d/mariadb.list - apt-get update + - *test-install-readline-in-sid-for-backwards-compat - apt-get install -y mariadb-server-10.4 # MariaDB.org version of 10.4 and early 10.5 do not install an init file, so # it must be installed here manually @@ -661,7 +662,7 @@ mariadb.org-10.3 to mariadb-10.7 upgrade: stage: upgrade extras needs: - job: build - image: debian:sid + image: debian:${RELEASE} artifacts: when: always name: "$CI_BUILD_NAME" @@ -671,20 +672,16 @@ mariadb.org-10.3 to mariadb-10.7 upgrade: - *test-prepare-container - apt install -y curl - curl -sS https://mariadb.org/mariadb_release_signing_key.asc -o /etc/apt/trusted.gpg.d/mariadb.asc - - echo 'deb http://mirror.one.com/mariadb/repo/10.3/debian sid main' > /etc/apt/sources.list.d/mariadb.list + - echo "deb https://deb.mariadb.org/10.3/debian ${RELEASE} main" > /etc/apt/sources.list.d/mariadb.list - apt-get update + - *test-install-readline-in-sid-for-backwards-compat - apt-get install -y mariadb-server-10.3 - # Verify initial state before upgrade - - dpkg -l | grep -iE 'maria|mysql|galera' || true # List installed - - service mysql status - # prepending with --defaults-file=/etc/mysql/debian.cnf is needed in upstream 5.5–10.3 - - mysql --defaults-file=/etc/mysql/debian.cnf --skip-column-names -e "SELECT @@version, @@version_comment" - - echo 'SHOW DATABASES;' | mysql --defaults-file=/etc/mysql/debian.cnf - - mysql --defaults-file=/etc/mysql/debian.cnf -e "SELECT Host,User,plugin,authentication_string FROM user;" mysql - - mysql --defaults-file=/etc/mysql/debian.cnf -e "SELECT * FROM plugin;" mysql + - *test-verify-initial - *test-install - service mysql status - - sleep 5 # Give the mysql_upgrade a bit of time to complete before querying the server + # Give the mariadb-upgrade plenty of time to complete, otherwise next commands + # fail on non-existing mariadb.sys user + - sleep 15 - *test-verify-final variables: GIT_STRATEGY: none @@ -696,7 +693,7 @@ mariadb.org-10.2 to mariadb-10.7 upgrade: stage: upgrade extras needs: - job: build - image: debian:sid + image: debian:${RELEASE} artifacts: when: always name: "$CI_BUILD_NAME" @@ -706,20 +703,24 @@ mariadb.org-10.2 to mariadb-10.7 upgrade: - *test-prepare-container - apt install -y curl - curl -sS https://mariadb.org/mariadb_release_signing_key.asc -o /etc/apt/trusted.gpg.d/mariadb.asc - - echo 'deb http://mirror.one.com/mariadb/repo/10.2/debian sid main' > /etc/apt/sources.list.d/mariadb.list + - echo "deb https://deb.mariadb.org/10.2/debian ${RELEASE} main" > /etc/apt/sources.list.d/mariadb.list - apt-get update + - *test-install-readline-in-sid-for-backwards-compat - apt-get install -y mariadb-server-10.2 # Verify initial state before upgrade - dpkg -l | grep -iE 'maria|mysql|galera' || true # List installed - service mysql status # prepending with --defaults-file=/etc/mysql/debian.cnf is needed in upstream 5.5–10.3 - - mysql --defaults-file=/etc/mysql/debian.cnf --skip-column-names -e "SELECT @@version, @@version_comment" - - echo 'SHOW DATABASES;' | mysql --defaults-file=/etc/mysql/debian.cnf - - mysql --defaults-file=/etc/mysql/debian.cnf -e "SELECT * FROM mysql.user; SHOW CREATE USER root@localhost" - - mysql --defaults-file=/etc/mysql/debian.cnf -e "SELECT * FROM mysql.plugin; SHOW PLUGINS" + - | + mysql --defaults-file=/etc/mysql/debian.cnf --skip-column-names -e "SELECT @@version, @@version_comment" + mysql --defaults-file=/etc/mysql/debian.cnf --table -e "SHOW DATABASES;" + mysql --defaults-file=/etc/mysql/debian.cnf --table -e "SELECT * FROM mysql.user; SHOW CREATE USER root@localhost;" + mysql --defaults-file=/etc/mysql/debian.cnf --table -e "SELECT * FROM mysql.plugin; SHOW PLUGINS;" - *test-install - service mysql status - - sleep 5 # Give the mysql_upgrade a bit of time to complete before querying the server + # Give the mariadb-upgrade plenty of time to complete, otherwise next commands + # fail on non-existing mariadb.sys user + - sleep 15 - *test-verify-final variables: GIT_STRATEGY: none @@ -741,16 +742,16 @@ mysql.com-5.7 to mariadb-10.7 upgrade: - *test-prepare-container - | apt-get install --no-install-recommends --yes gpg gpg-agent dirmngr ca-certificates # Bare minimal (<4MB) for apt-key to work - apt-key adv --recv-keys --keyserver hkps://keyserver.ubuntu.com:443 8C718D3B5072E1F5 - echo 'deb https://repo.mysql.com/apt/debian/ buster mysql-5.7' > /etc/apt/sources.list.d/mysql.list + apt-key adv --recv-keys --keyserver hkps://keyserver.ubuntu.com:443 467B942D3A79BD29 + echo "deb https://repo.mysql.com/apt/debian/ buster mysql-5.7" > /etc/apt/sources.list.d/mysql.list apt-get update apt-get install -y 'mysql*' 'libmysqlc*' - *test-verify-initial # Enable backports to make galera-4 available - - echo 'deb http://deb.debian.org/debian buster-backports main' >> /etc/apt/sources.list.d/backports.list && apt-get update + - echo "deb http://deb.debian.org/debian buster-backports main" >> /etc/apt/sources.list.d/backports.list && apt-get update - *test-install - service mysql status - - sleep 5 # Give the mysql_upgrade a bit of time to complete before querying the server + - sleep 15 # Give the mysql_upgrade a bit of extra time to complete with MySQL 5.7 before querying the server - *test-verify-final variables: GIT_STRATEGY: none @@ -773,16 +774,16 @@ percona-xtradb-5.7 to mariadb-10.7 upgrade (MDEV-22679): - | apt-get install --no-install-recommends --yes gpg gpg-agent dirmngr ca-certificates # Bare minimal (<4MB) for apt-key to work apt-key adv --recv-keys --keyserver hkps://keyserver.ubuntu.com:443 9334A25F8507EFA5 - echo 'deb https://repo.percona.com/apt/ buster main' > /etc/apt/sources.list.d/mysql.list + echo "deb https://repo.percona.com/apt/ buster main" > /etc/apt/sources.list.d/mysql.list apt-get update apt-get install -y percona-xtradb-cluster-full-57 percona-xtrabackup-24 percona-toolkit pmm2-client - service mysql status - *test-verify-initial # Enable backports to make galera-4 available - - echo 'deb http://deb.debian.org/debian buster-backports main' >> /etc/apt/sources.list.d/backports.list && apt-get update + - echo "deb http://deb.debian.org/debian buster-backports main" >> /etc/apt/sources.list.d/backports.list && apt-get update - *test-install - service mysql status - - sleep 5 # Give the mysql_upgrade a bit of time to complete before querying the server + - sleep 15 # Give the mysql_upgrade a bit of extra time to complete with MySQL 5.7 before querying the server - *test-verify-final variables: GIT_STRATEGY: none diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides index effdfe6f396..8ac31d07a9f 100644 --- a/debian/source/lintian-overrides +++ b/debian/source/lintian-overrides @@ -23,10 +23,10 @@ version-substvar-for-external-package libmariadbd-dev -> libmariadbclient-dev # ColumnStore not used in Debian, safe to ignore. Reported upstream in https://jira.mariadb.org/browse/MDEV-24124 source-is-missing storage/columnstore/columnstore/utils/jemalloc/libjemalloc.so.2 # Must be fixed upstream -source-is-missing storage/mroonga/vendor/groonga/examples/dictionary/html/js/jquery-ui-1.8.18.custom.js * +source-is-missing storage/mroonga/vendor/groonga/examples/dictionary/html/js/jquery-ui-1.8.18.custom.js* # Intentional control relationships -version-substvar-for-external-package Replaces (line 216) ${source:Version} libmariadbd-dev -> libmariadbclient-dev -version-substvar-for-external-package Replaces (line 66) ${source:Version} libmariadb-dev -> libmysqlclient-dev -version-substvar-for-external-package Replaces (line 66) ${source:Version} libmariadb-dev -> libmysqld-dev +version-substvar-for-external-package Replaces * ${source:Version} libmariadbd-dev -> libmariadbclient-dev +version-substvar-for-external-package Replaces * ${source:Version} libmariadb-dev -> libmysqlclient-dev +version-substvar-for-external-package Replaces * ${source:Version} libmariadb-dev -> libmysqld-dev # We can't change build dependencies on a stable branch (10.5..10.8) so just override this missing-build-dependency-for-dh-addon systemd * diff --git a/mysql-test/suite/mariabackup/binlog.result b/mysql-test/suite/mariabackup/binlog.result index 4f8ed4185ce..7851c2ba069 100644 --- a/mysql-test/suite/mariabackup/binlog.result +++ b/mysql-test/suite/mariabackup/binlog.result @@ -3,6 +3,6 @@ INSERT INTO t VALUES(1); SHOW VARIABLES like 'log_bin'; Variable_name Value log_bin ON -FOUND 1 /Last binlog file .*, position .*/ in current_test +FOUND 1 /Last binlog file .+, position \d+/ in current_test # expect FOUND DROP TABLE t; diff --git a/mysql-test/suite/mariabackup/binlog.test b/mysql-test/suite/mariabackup/binlog.test index b2f08c2d7bb..9d62e5f8d6b 100644 --- a/mysql-test/suite/mariabackup/binlog.test +++ b/mysql-test/suite/mariabackup/binlog.test @@ -15,7 +15,7 @@ exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --backup --target-dir exec $XTRABACKUP --prepare --binlog-info=1 --target-dir=$basedir ; let SEARCH_FILE=$MYSQLTEST_VARDIR/log/current_test; ---let SEARCH_PATTERN= Last binlog file .*, position .* +--let SEARCH_PATTERN= Last binlog file .+, position \d+ --source include/search_pattern_in_file.inc --echo # expect FOUND diff --git a/storage/innobase/CMakeLists.txt b/storage/innobase/CMakeLists.txt index 3d4f4d04ae8..aee68b8460d 100644 --- a/storage/innobase/CMakeLists.txt +++ b/storage/innobase/CMakeLists.txt @@ -387,7 +387,8 @@ ENDIF() # s390x because of the way it defines the high level intrinsics # as not-inline in the header file can only be included by one # source file that has -mhtm enabled. -IF(CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64|powerpc64|s390x") +IF(CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64|powerpc64|s390x" + OR CMAKE_SYSTEM_NAME MATCHES "AIX") ADD_COMPILE_FLAGS( sync/srw_lock.cc COMPILE_FLAGS "-mhtm" diff --git a/storage/innobase/include/univ.i b/storage/innobase/include/univ.i index eb93be9a584..7dcf45a5d71 100644 --- a/storage/innobase/include/univ.i +++ b/storage/innobase/include/univ.i @@ -333,22 +333,19 @@ typedef ssize_t lint; #ifdef _WIN32 /* Use the integer types and formatting strings defined in Visual Studio. */ # define UINT32PF "%u" -# define INT64PF "%lld" # define UINT64scan "llu" # define UINT64PFx "%016llx" #elif defined __APPLE__ /* Apple prefers to call the 64-bit types 'long long' in both 32-bit and 64-bit environments. */ # define UINT32PF "%" PRIu32 -# define INT64PF "%lld" # define UINT64scan "llu" # define UINT64PFx "%016llx" #elif defined _AIX /* Workaround for macros expension trouble */ # define UINT32PF "%u" -# define INT64PF "%lld" # define UINT64scan "lu" -# define UINT64PFx "%016llx" +# define UINT64PFx "%016lx" #else /* Use the integer types and formatting strings defined in the C99 standard. */ # define UINT32PF "%" PRIu32 diff --git a/storage/innobase/srv/srv0start.cc b/storage/innobase/srv/srv0start.cc index 981adafa4e7..1b4bac60aa5 100644 --- a/storage/innobase/srv/srv0start.cc +++ b/storage/innobase/srv/srv0start.cc @@ -1461,10 +1461,9 @@ file_checked: if (err != DB_SUCCESS) { return srv_init_abort(err); } - if (srv_operation == SRV_OPERATION_RESTORE) { - break; + if (srv_operation != SRV_OPERATION_RESTORE) { + dict_sys.load_sys_tables(); } - dict_sys.load_sys_tables(); err = trx_lists_init_at_db_start(); if (err != DB_SUCCESS) { return srv_init_abort(err); |