1
0
mirror of https://github.com/MariaDB/server.git synced 2026-10-23 18:49:29 +03:00

MDEV-38710 Assertion is_lock_owner on error returning from auto-create in mysql_admin_table

don't auto-add new partitions if we're already at TIMESTAMP_MAX_VALUE
This commit is contained in:
Sergei Golubchik
2026-01-30 17:59:42 +01:00
parent a2b62fe572
commit 4802bfe4f9
3 changed files with 20 additions and 3 deletions

View File

@@ -3619,6 +3619,14 @@ create or replace table t (a int) with system versioning
partition by system_time interval 10 year;
drop table t;
#
# End of 10.11 tests
# MDEV-38710 Assertion is_lock_owner on error returning from auto-create in mysql_admin_table
#
set timestamp=2147483647;
create table t (x int) with system versioning partition by system_time interval 1 hour auto;
repair table t;
Table Op Msg_type Msg_text
test.t repair status OK
drop table t;
set timestamp=default;
# End of 10.11 tests
set global innodb_stats_persistent= @save_persistent;

View File

@@ -2843,8 +2843,16 @@ partition by system_time interval 10 year;
drop table t;
--echo #
--echo # End of 10.11 tests
--echo # MDEV-38710 Assertion is_lock_owner on error returning from auto-create in mysql_admin_table
--echo #
set timestamp=2147483647;
create table t (x int) with system versioning partition by system_time interval 1 hour auto;
repair table t;
drop table t;
set timestamp=default;
--echo # End of 10.11 tests
set global innodb_stats_persistent= @save_persistent;
--source suite/versioning/common_finish.inc

View File

@@ -832,7 +832,8 @@ bool partition_info::vers_set_hist_part(THD *thd, uint *create_count)
}
else if (vers_info->interval.is_set() &&
/* Left boundary is closed */
vers_info->hist_part->range_value <= thd->query_start())
vers_info->hist_part->range_value <= thd->query_start() &&
vers_info->hist_part->range_value < TIMESTAMP_MAX_VALUE)
{
partition_element *next= NULL;
bool error= true;