mirror of
https://github.com/MariaDB/server.git
synced 2025-01-20 14:02:32 +01:00
47906997c7
into partitioned MyISAM table Problem was that the ha_data structure was introduced in 5.1 and only used for partitioning first, but with the intention of be of use for others engines as well, and when used by other engines it would clash if it also was partitioned. Solution is to move the partitioning specific data to a separate structure, with its own mutex (which is used for auto_increment). Also did rename PARTITION_INFO to PARTITION_STATS since there already exist a class named partition_info, also cleaned up some related variables. mysql-test/r/partition_binlog_stmt.result: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table New result file mysql-test/t/partition_binlog_stmt.test: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table New result file sql/ha_ndbcluster.cc: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Rename of PARTITION_INFO to PARTITION_STATS to better match the use (and there is also a class named partition_info...) sql/ha_ndbcluster.h: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Rename of PARTITION_INFO to PARTITION_STATS to better match the use (and there is also a class named partition_info...) sql/ha_partition.cc: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Removed the partitioning engines use of ha_data in TABLE_SHARE and added ha_part_data instead, since they collide if used in the same time. Rename of PARTITION_INFO to PARTITION_STATS to better match the use (and there is also a class named partition_info...) Removed some dead code. sql/ha_partition.h: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Removed some dead code. Rename of PARTITION_INFO to PARTITION_STATS to better match the use (and there is also a class named partition_info...) Removed the partitioning engines use of ha_data in TABLE_SHARE and added ha_part_data instead, since they collide if used in the same time. sql/handler.cc: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Rename of PARTITION_INFO to PARTITION_STATS to better match the use (and there is also a class named partition_info...) sql/handler.h: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Rename of PARTITION_INFO to PARTITION_STATS to better match the use (and there is also a class named partition_info...) sql/mysql_priv.h: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Removed the partitioning engines use of ha_data in TABLE_SHARE and added ha_part_data instead, since they collide if used in the same time. Added key_PARTITION_LOCK_auto_inc for instrumentation. sql/mysqld.cc: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Removed the partitioning engines use of ha_data in TABLE_SHARE and added ha_part_data instead, since they collide if used in the same time. Added key_PARTITION_LOCK_auto_inc for instrumentation. sql/partition_info.h: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Removed part_state* since it was not in use. sql/sql_partition.cc: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Removed part_state* since it was not in use. sql/sql_partition.h: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Cleaned up old commented out code. Removed part_state* since it was not in use. sql/sql_show.cc: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Rename of PARTITION_INFO to PARTITION_STATS to better match the use (and there is also a class named partition_info...) Renamed partition_info to partition_info_str, since partition_info is a name of a class. sql/sql_table.cc: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Renamed partition_info to partition_info_str, since partition_info is a name of a class. sql/table.cc: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Removed the partitioning engines use of ha_data in TABLE_SHARE and added ha_part_data instead, since they collide if used in the same time. Renamed partition_info to partition_info_str, since partition_info is a name of a class. removed part_state* since it was not in use. sql/table.h: Bug#51851: Server with SBR locks mutex twice on LOAD DATA into partitioned MyISAM table Removed the partitioning engines use of ha_data in TABLE_SHARE and added ha_part_data instead, since they collide if used in the same time. Renamed partition_info to partition_info_str, since partition_info is a name of a class. removed part_state* since it was not in use.
13 lines
421 B
Text
13 lines
421 B
Text
DROP TABLE IF EXISTS t1;
|
|
#
|
|
# Bug#51851: Server with SBR locks mutex twice on LOAD DATA into
|
|
# partitioned MyISAM table
|
|
CREATE TABLE t1
|
|
(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
|
name TINYBLOB NOT NULL,
|
|
modified TIMESTAMP DEFAULT '0000-00-00 00:00:00',
|
|
INDEX namelocs (name(255))) ENGINE = MyISAM
|
|
PARTITION BY HASH(id) PARTITIONS 2;
|
|
LOAD DATA LOCAL INFILE 'init_file.txt'
|
|
INTO TABLE t1 (name);
|
|
DROP TABLE t1;
|