mirror of
https://github.com/MariaDB/server.git
synced 2025-01-27 01:04:19 +01:00
784becf3e1
ALTER TABLE needs to open hlindex tables early enough, right after they were created, so that cleanup after an error would see and delete them. But they need to be external_lock-ed only in copy_data_between_tables, after mysql_trans_prepare_alter_copy_data(). Let's move locking out of hlindex_open() into hlindex_lock()
19 lines
540 B
Text
19 lines
540 B
Text
#
|
|
# Aria, ALTER TABLE
|
|
#
|
|
create table t (a int primary key, f vector(1) not null) engine=Aria;
|
|
insert into t values (1, 0x30303030),(2, 0x31313131);
|
|
alter table t add vector(f);
|
|
check table t extended;
|
|
Table Op Msg_type Msg_text
|
|
test.t check status OK
|
|
drop table t;
|
|
#
|
|
# MDEV-35267 Server crashes in _ma_reset_history upon altering on Aria table with vector key under lock
|
|
#
|
|
create table t (v vector(1) not null, vector(v)) engine=aria;
|
|
insert into t values (0x31313131);
|
|
lock table t write;
|
|
alter table t force;
|
|
unlock tables;
|
|
drop table t;
|