|
Thank you for the report!
I repeated as described, on 10.7+, while 10.6 and earlier versions behaved as expected.
--source include/have_innodb.inc
|
|
SET NAMES utf8;
|
SET foreign_key_checks = 0;
|
SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
|
|
SET NAMES utf8mb4;
|
|
DROP TABLE IF EXISTS `fixed`;
|
CREATE TABLE `fixed` (
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
`name` varchar(50) NOT NULL,
|
PRIMARY KEY (`id`),
|
UNIQUE KEY `name` (`name`)
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
|
DROP TABLE IF EXISTS `broken`;
|
CREATE TABLE `broken` (
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
`name` varchar(50) NOT NULL,
|
PRIMARY KEY (`id`),
|
UNIQUE KEY `name` (`name`)
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
|
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
|
LOCK TABLES `broken` WRITE;
|
/*!40000 ALTER TABLE `broken` DISABLE KEYS */;
|
INSERT INTO `broken` VALUES (2,'Celková šířka'),(14,'Celková tloušťka'),(6,'Celková výška'),(1,'Jmenovitá šířka'),(5,'Jmenovitá výška'),(10,'Korekce tloušťky'),(15,'Přesah šířky'),(16,'Přesah šířky pro olep'),(17,'Přesah výšky'),(18,'Přesah výšky pro olep'),(19,'Šířka pláště'),(4,'Šířka polotovaru'),(3,'Šířka pro formátování'),(23,'Šířka průchodu'),(24,'Šířka stavebního otvoru'),(25,'Šířka ve falci'),(11,'Tloušťka rámu'),(13,'Tloušťka spodní desky'),(22,'Tloušťka spodní výplňové desky'),(12,'Tloušťka vrchní desky'),(21,'Tloušťka vrchní výplňové desky'),(9,'Tloušťka výplně'),(20,'Výška pláště'),(8,'Výška polotovaru'),(7,'Výška pro formátování'),(26,'Výška ve falci');
|
/*!40000 ALTER TABLE `broken` ENABLE KEYS */;
|
UNLOCK TABLES;
|
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
|
|
INSERT INTO `fixed` VALUES (2,'Celková šířka'),(14,'Celková tloušťka'),(6,'Celková výška'),(1,'Jmenovitá šířka'),(5,'Jmenovitá výška'),(10,'Korekce tloušťky'),(15,'Přesah šířky'),(16,'Přesah šířky pro olep'),(17,'Přesah výšky'),(18,'Přesah výšky pro olep'),(19,'Šířka pláště'),(4,'Šířka polotovaru'),(3,'Šířka pro formátování'),(23,'Šířka průchodu'),(24,'Šířka stavebního otvoru'),(25,'Šířka ve falci'),(11,'Tloušťka rámu'),(13,'Tloušťka spodní desky'),(22,'Tloušťka spodní výplňové desky'),(12,'Tloušťka vrchní desky'),(21,'Tloušťka vrchní výplňové desky'),(9,'Tloušťka výplně'),(20,'Výška pláště'),(8,'Výška polotovaru'),(7,'Výška pro formátování'),(26,'Výška ve falci');
|
|
|
--vertical_results
|
show table status;
|
|
--source include/restart_mysqld.inc
|
|
--vertical_results
|
show table status;
|
|
insert into broken(name) values ('a');
|
MariaDB Version 10.7.8-MariaDB-debug
|
- SSL connections supported
|
- binaries are debug compiled
|
- binaries built with wsrep patch
|
Collecting tests...
|
Installing system database...
|
|
==============================================================================
|
|
TEST RESULT TIME (ms) or COMMENT
|
--------------------------------------------------------------------------
|
|
worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 16000..16019
|
SET NAMES utf8;
|
SET foreign_key_checks = 0;
|
SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';
|
SET NAMES utf8mb4;
|
DROP TABLE IF EXISTS `fixed`;
|
Warnings:
|
Note 1051 Unknown table 'test.fixed'
|
CREATE TABLE `fixed` (
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
`name` varchar(50) NOT NULL,
|
PRIMARY KEY (`id`),
|
UNIQUE KEY `name` (`name`)
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
DROP TABLE IF EXISTS `broken`;
|
Warnings:
|
Note 1051 Unknown table 'test.broken'
|
CREATE TABLE `broken` (
|
`id` int(11) NOT NULL AUTO_INCREMENT,
|
`name` varchar(50) NOT NULL,
|
PRIMARY KEY (`id`),
|
UNIQUE KEY `name` (`name`)
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
LOCK TABLES `broken` WRITE;
|
/*!40000 ALTER TABLE `broken` DISABLE KEYS */;
|
Warnings:
|
Note 1031 Storage engine InnoDB of the table `test`.`broken` doesn't have this option
|
INSERT INTO `broken` VALUES (2,'Celková šířka'),(14,'Celková tloušťka'),(6,'Celková výška'),(1,'Jmenovitá šířka'),(5,'Jmenovitá výška'),(10,'Korekce tloušťky'),(15,'Přesah šířky'),(16,'Přesah šířky pro olep'),(17,'Přesah výšky'),(18,'Přesah výšky pro olep'),(19,'Šířka pláště'),(4,'Šířka polotovaru'),(3,'Šířka pro formátování'),(23,'Šířka průchodu'),(24,'Šířka stavebního otvoru'),(25,'Šířka ve falci'),(11,'Tloušťka rámu'),(13,'Tloušťka spodní desky'),(22,'Tloušťka spodní výplňové desky'),(12,'Tloušťka vrchní desky'),(21,'Tloušťka vrchní výplňové desky'),(9,'Tloušťka výplně'),(20,'Výška pláště'),(8,'Výška polotovaru'),(7,'Výška pro formátování'),(26,'Výška ve falci');
|
/*!40000 ALTER TABLE `broken` ENABLE KEYS */;
|
Warnings:
|
Note 1031 Storage engine InnoDB of the table `test`.`broken` doesn't have this option
|
UNLOCK TABLES;
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
INSERT INTO `fixed` VALUES (2,'Celková šířka'),(14,'Celková tloušťka'),(6,'Celková výška'),(1,'Jmenovitá šířka'),(5,'Jmenovitá výška'),(10,'Korekce tloušťky'),(15,'Přesah šířky'),(16,'Přesah šířky pro olep'),(17,'Přesah výšky'),(18,'Přesah výšky pro olep'),(19,'Šířka pláště'),(4,'Šířka polotovaru'),(3,'Šířka pro formátování'),(23,'Šířka průchodu'),(24,'Šířka stavebního otvoru'),(25,'Šířka ve falci'),(11,'Tloušťka rámu'),(13,'Tloušťka spodní desky'),(22,'Tloušťka spodní výplňové desky'),(12,'Tloušťka vrchní desky'),(21,'Tloušťka vrchní výplňové desky'),(9,'Tloušťka výplně'),(20,'Výška pláště'),(8,'Výška polotovaru'),(7,'Výška pro formátování'),(26,'Výška ve falci');
|
show table status;
|
Name broken
|
Engine InnoDB
|
Version 10
|
Row_format Dynamic
|
Rows 26
|
Avg_row_length 630
|
Data_length 16384
|
Max_data_length 0
|
Index_length 16384
|
Data_free 0
|
Auto_increment 27
|
Create_time 2023-06-19 13:48:30
|
Update_time 2023-06-19 13:48:30
|
Check_time NULL
|
Collation utf8mb4_unicode_ci
|
Checksum NULL
|
Create_options
|
Comment
|
Max_index_length 0
|
Temporary N
|
Name fixed
|
Engine InnoDB
|
Version 10
|
Row_format Dynamic
|
Rows 26
|
Avg_row_length 630
|
Data_length 16384
|
Max_data_length 0
|
Index_length 16384
|
Data_free 0
|
Auto_increment 27
|
Create_time 2023-06-19 13:48:30
|
Update_time 2023-06-19 13:48:30
|
Check_time NULL
|
Collation utf8mb4_unicode_ci
|
Checksum NULL
|
Create_options
|
Comment
|
Max_index_length 0
|
Temporary N
|
# restart
|
show table status;
|
Name broken
|
Engine InnoDB
|
Version 10
|
Row_format Dynamic
|
Rows 26
|
Avg_row_length 630
|
Data_length 16384
|
Max_data_length 0
|
Index_length 16384
|
Data_free 0
|
Auto_increment 3
|
Create_time 2023-06-19 13:48:30
|
Update_time NULL
|
Check_time NULL
|
Collation utf8mb4_unicode_ci
|
Checksum NULL
|
Create_options
|
Comment
|
Max_index_length 0
|
Temporary N
|
Name fixed
|
Engine InnoDB
|
Version 10
|
Row_format Dynamic
|
Rows 5
|
Avg_row_length 3276
|
Data_length 16384
|
Max_data_length 0
|
Index_length 16384
|
Data_free 0
|
Auto_increment 27
|
Create_time 2023-06-19 13:48:30
|
Update_time NULL
|
Check_time NULL
|
Collation utf8mb4_unicode_ci
|
Checksum NULL
|
Create_options
|
Comment
|
Max_index_length 0
|
Temporary N
|
insert into broken(name) values ('a');
|
main.1_my 'innodb' [ fail ]
|
Test ended at 2023-06-19 13:48:32
|
|
CURRENT_TEST: main.1_my
|
mysqltest: At line 51: query 'insert into broken(name) values ('a')' failed: ER_DUP_ENTRY (1062): Duplicate entry '3' for key 'PRIMARY'
|
Regression after 045757af4c301757ba4492693 commit (MDEV-24621 In bulk insert, pre-sort and build indexes one page at a time)
|