mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 04:53:01 +01:00
manual merge
This commit is contained in:
commit
0c342270a1
4 changed files with 66 additions and 1 deletions
|
@ -1,4 +1,41 @@
|
||||||
drop table if exists t1, t2;
|
drop table if exists t1, t2;
|
||||||
|
CREATE TABLE t1 (
|
||||||
|
a timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
b varchar(10),
|
||||||
|
PRIMARY KEY (a)
|
||||||
|
)
|
||||||
|
PARTITION BY RANGE (to_days(a)) (
|
||||||
|
PARTITION p1 VALUES LESS THAN (733407),
|
||||||
|
PARTITION pmax VALUES LESS THAN MAXVALUE
|
||||||
|
);
|
||||||
|
INSERT INTO t1 VALUES ('2007-07-30 17:35:48', 'p1');
|
||||||
|
INSERT INTO t1 VALUES ('2009-07-14 17:35:55', 'pmax');
|
||||||
|
INSERT INTO t1 VALUES ('2009-09-21 17:31:42', 'pmax');
|
||||||
|
SELECT * FROM t1;
|
||||||
|
a b
|
||||||
|
2007-07-30 17:35:48 p1
|
||||||
|
2009-07-14 17:35:55 pmax
|
||||||
|
2009-09-21 17:31:42 pmax
|
||||||
|
ALTER TABLE t1 REORGANIZE PARTITION pmax INTO (
|
||||||
|
PARTITION p3 VALUES LESS THAN (733969),
|
||||||
|
PARTITION pmax VALUES LESS THAN MAXVALUE);
|
||||||
|
SELECT * FROM t1;
|
||||||
|
a b
|
||||||
|
2007-07-30 17:35:48 p1
|
||||||
|
2009-07-14 17:35:55 pmax
|
||||||
|
2009-09-21 17:31:42 pmax
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
Table Create Table
|
||||||
|
t1 CREATE TABLE `t1` (
|
||||||
|
`a` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
`b` varchar(10) DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`a`)
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||||
|
/*!50100 PARTITION BY RANGE (to_days(a))
|
||||||
|
(PARTITION p1 VALUES LESS THAN (733407) ENGINE = MyISAM,
|
||||||
|
PARTITION p3 VALUES LESS THAN (733969) ENGINE = MyISAM,
|
||||||
|
PARTITION pmax VALUES LESS THAN MAXVALUE ENGINE = MyISAM) */
|
||||||
|
DROP TABLE t1;
|
||||||
CREATE TABLE t1 (a INT, FOREIGN KEY (a) REFERENCES t0 (a))
|
CREATE TABLE t1 (a INT, FOREIGN KEY (a) REFERENCES t0 (a))
|
||||||
ENGINE=MyISAM
|
ENGINE=MyISAM
|
||||||
PARTITION BY HASH (a);
|
PARTITION BY HASH (a);
|
||||||
|
|
|
@ -14,6 +14,31 @@
|
||||||
drop table if exists t1, t2;
|
drop table if exists t1, t2;
|
||||||
--enable_warnings
|
--enable_warnings
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug#46478: timestamp field incorrectly defaulted when partition is reorganized
|
||||||
|
#
|
||||||
|
CREATE TABLE t1 (
|
||||||
|
a timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
b varchar(10),
|
||||||
|
PRIMARY KEY (a)
|
||||||
|
)
|
||||||
|
PARTITION BY RANGE (to_days(a)) (
|
||||||
|
PARTITION p1 VALUES LESS THAN (733407),
|
||||||
|
PARTITION pmax VALUES LESS THAN MAXVALUE
|
||||||
|
);
|
||||||
|
|
||||||
|
INSERT INTO t1 VALUES ('2007-07-30 17:35:48', 'p1');
|
||||||
|
INSERT INTO t1 VALUES ('2009-07-14 17:35:55', 'pmax');
|
||||||
|
INSERT INTO t1 VALUES ('2009-09-21 17:31:42', 'pmax');
|
||||||
|
|
||||||
|
SELECT * FROM t1;
|
||||||
|
ALTER TABLE t1 REORGANIZE PARTITION pmax INTO (
|
||||||
|
PARTITION p3 VALUES LESS THAN (733969),
|
||||||
|
PARTITION pmax VALUES LESS THAN MAXVALUE);
|
||||||
|
SELECT * FROM t1;
|
||||||
|
SHOW CREATE TABLE t1;
|
||||||
|
DROP TABLE t1;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Bug#36001: Partitions: spelling and using some error messages
|
# Bug#36001: Partitions: spelling and using some error messages
|
||||||
#
|
#
|
||||||
|
|
|
@ -15,7 +15,7 @@ let $MYSQLD_DATADIR= `SELECT @@datadir`;
|
||||||
# Bug#39893: Crash if select on a partitioned table,
|
# Bug#39893: Crash if select on a partitioned table,
|
||||||
# when partitioning is disabled
|
# when partitioning is disabled
|
||||||
FLUSH TABLES;
|
FLUSH TABLES;
|
||||||
--copy_file $MYSQLTEST_VARDIR/std_data_ln/parts/t1.frm $MYSQLD_DATADIR/test/t1.frm
|
--copy_file $MYSQLTEST_VARDIR/std_data/parts/t1.frm $MYSQLD_DATADIR/test/t1.frm
|
||||||
SELECT * FROM t1;
|
SELECT * FROM t1;
|
||||||
TRUNCATE TABLE t1;
|
TRUNCATE TABLE t1;
|
||||||
ANALYZE TABLE t1;
|
ANALYZE TABLE t1;
|
||||||
|
|
|
@ -6077,6 +6077,9 @@ uint fast_alter_partition_table(THD *thd, TABLE *table,
|
||||||
lpt->pack_frm_len= 0;
|
lpt->pack_frm_len= 0;
|
||||||
thd->work_part_info= part_info;
|
thd->work_part_info= part_info;
|
||||||
|
|
||||||
|
/* Never update timestamp columns when alter */
|
||||||
|
table->timestamp_field_type= TIMESTAMP_NO_AUTO_SET;
|
||||||
|
|
||||||
if (fast_alter_partition & HA_PARTITION_ONE_PHASE)
|
if (fast_alter_partition & HA_PARTITION_ONE_PHASE)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in a new issue