mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 02:05:57 +01:00
MDEV-35287 ER_KEY_NOT_FOUND upon INSERT into InnoDB table with vector key under READ COMMITTED
InnoDB cannot enable internal bulk insert for hlindex tables
This commit is contained in:
parent
ad33ffc0b5
commit
cbc2812f80
3 changed files with 24 additions and 0 deletions
|
@ -186,3 +186,13 @@ drop table t;
|
|||
#
|
||||
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;
|
||||
#
|
||||
# MDEV-35287 ER_KEY_NOT_FOUND upon INSERT into InnoDB table with vector key under READ COMMITTED
|
||||
#
|
||||
set unique_checks=0, foreign_key_checks=0;
|
||||
set session transaction isolation level read committed;
|
||||
create table t (v vector(1) not null, vector (v)) engine=innodb;
|
||||
insert into t values (0x31313131),(0x32323232);
|
||||
drop table t;
|
||||
set unique_checks=default, foreign_key_checks=default;
|
||||
set session transaction isolation level repeatable read;
|
||||
|
|
|
@ -182,3 +182,14 @@ drop table t;
|
|||
--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;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV-35287 ER_KEY_NOT_FOUND upon INSERT into InnoDB table with vector key under READ COMMITTED
|
||||
--echo #
|
||||
set unique_checks=0, foreign_key_checks=0;
|
||||
set session transaction isolation level read committed;
|
||||
create table t (v vector(1) not null, vector (v)) engine=innodb;
|
||||
insert into t values (0x31313131),(0x32323232);
|
||||
drop table t;
|
||||
set unique_checks=default, foreign_key_checks=default;
|
||||
set session transaction isolation level repeatable read;
|
||||
|
|
|
@ -15948,6 +15948,9 @@ ha_innobase::external_lock(
|
|||
trx_t* trx = m_prebuilt->trx;
|
||||
ut_ad(m_prebuilt->table);
|
||||
|
||||
if (table->s->tmp_table == INTERNAL_TMP_TABLE)
|
||||
trx->check_unique_secondary = true;
|
||||
|
||||
/* Statement based binlogging does not work in isolation level
|
||||
READ UNCOMMITTED and READ COMMITTED since the necessary
|
||||
locks cannot be taken. In this case, we print an
|
||||
|
|
Loading…
Add table
Reference in a new issue