MDEV-35130 Assertion fails in trx_t::check_bulk_buffer upon CREATE.. SELECT with vector key
Similarly to "ALTER TABLE fixes for high-level indexes", don't enable bulk insert when issuing create ... insert into a table containing vector index. InnoDB can't handle situation when bulk insert is enabled for one table but disabled for another. We can't do bulk insert on vector index as it does table updates currently.
This commit is contained in:
parent
f6de9a379a
commit
883fb66cd4
@ -181,3 +181,8 @@ create table t (v vector(1), key(v)) engine=innodb;
|
||||
select v from t where v = vec_fromtext('[1]');
|
||||
v
|
||||
drop table t;
|
||||
#
|
||||
# MDEV-35130 Assertion fails in trx_t::check_bulk_buffer upon CREATE.. SELECT with vector key
|
||||
#
|
||||
CREATE TABLE t (pk INT PRIMARY KEY, v VECTOR(5) NOT NULL, VECTOR(v)) ENGINE=InnoDB SELECT 1 AS pk, x'f09baa3ea172763f123def3e0c7fe53e288bf33e' AS v;
|
||||
DROP TABLE t;
|
||||
|
@ -176,3 +176,9 @@ drop table t;
|
||||
create table t (v vector(1), key(v)) engine=innodb;
|
||||
select v from t where v = vec_fromtext('[1]');
|
||||
drop table t;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-35130 Assertion fails in trx_t::check_bulk_buffer upon CREATE.. SELECT with vector key
|
||||
--echo #
|
||||
CREATE TABLE t (pk INT PRIMARY KEY, v VECTOR(5) NOT NULL, VECTOR(v)) ENGINE=InnoDB SELECT 1 AS pk, x'f09baa3ea172763f123def3e0c7fe53e288bf33e' AS v;
|
||||
DROP TABLE t;
|
||||
|
@ -4998,7 +4998,7 @@ select_create::prepare(List<Item> &_values, SELECT_LEX_UNIT *u)
|
||||
if (info.handle_duplicates == DUP_UPDATE)
|
||||
table->file->extra(HA_EXTRA_INSERT_WITH_UPDATE);
|
||||
if (thd->locked_tables_mode <= LTM_LOCK_TABLES &&
|
||||
!table->s->long_unique_table)
|
||||
!table->s->long_unique_table && !table->s->hlindexes())
|
||||
{
|
||||
table->file->ha_start_bulk_insert((ha_rows) 0);
|
||||
if (thd->lex->duplicates == DUP_ERROR && !thd->lex->ignore)
|
||||
|
Loading…
x
Reference in New Issue
Block a user