Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.5, 10.6
Description
The following change to an existing regression test causes a crash:
diff --git a/mysql-test/suite/mariabackup/partial.test b/mysql-test/suite/mariabackup/partial.test
|
index d0d07daf2ea..035024aac3d 100644
|
--- a/mysql-test/suite/mariabackup/partial.test
|
+++ b/mysql-test/suite/mariabackup/partial.test
|
@@ -41,6 +41,7 @@ EOF
|
|
echo # xtrabackup prepare;
|
--disable_result_log
|
+exec $XTRABACKUP --defaults-file=$server_cnf --defaults-group-suffix=.1 --prepare --target-dir=$targetdir;
|
exec $XTRABACKUP --defaults-file=$server_cnf --defaults-group-suffix=.1 --prepare --export --target-dir=$targetdir;
|
--enable_result_log
|
|
10.5 e472b682e068319e2a27373903cd46fb93093286 |
mariabackup: /mariadb/10.5/storage/innobase/fil/fil0fil.cc:441: bool fil_node_open_file(fil_node_t*): Assertion `fil_is_user_tablespace_id(node->space->id) || srv_operation == SRV_OPERATION_BACKUP || srv_operation == SRV_OPERATION_RESTORE || srv_operation == SRV_OPERATION_RESTORE_DELTA' failed.
|
10.6 736a54f49c72d89fb82ef4165e96cddb506cf555 |
mariabackup: /mariadb/10.6/storage/innobase/fil/fil0fil.cc:426: bool fil_node_open_file(fil_node_t*): Assertion `fil_is_user_tablespace_id(node->space->id) || srv_operation == SRV_OPERATION_BACKUP || srv_operation == SRV_OPERATION_RESTORE || srv_operation == SRV_OPERATION_RESTORE_DELTA' failed.
|
The 10.4 branch does not crash.
mariadb-backup with --prepare option could result in empty redo log
file. When --prepare is followed by --prepare --export, we exit early
in srv_start function without opening the ibdata1 tablespace. Later
while trying to read rollback segment header page, we hit the debug
assert which claims that the system space should already have been
opened.
The assert is already marked not applicable for server operation backup
and restore. It seems appropriate to add SRV_OPERATION_RESTORE_EXPORT
in the assert condition.
https://github.com/MariaDB/server/pull/3009