1673 lines
		
	
	
		
			67 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			1673 lines
		
	
	
		
			67 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | drop table if exists t1; | ||
|  | # | ||
|  | # Bug#57924: crash when creating partitioned table with | ||
|  | #            multiple columns in the partition key | ||
|  | # | ||
|  | CREATE TABLE t1 (a INT, b INT, PRIMARY KEY (a,b)) | ||
|  | PARTITION BY KEY(a, b, a); | ||
|  | ERROR HY000: Field in list of fields for partition function not found in table | ||
|  | CREATE TABLE t1 (a INT, b INT, PRIMARY KEY (a,b)) | ||
|  | PARTITION BY KEY(A, b); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a INT, b INT, PRIMARY KEY (a,b)) | ||
|  | PARTITION BY KEY(a, b, A); | ||
|  | ERROR HY000: Field in list of fields for partition function not found in table | ||
|  | # | ||
|  | # Bug#54483: valgrind errors when making warnings for multiline inserts | ||
|  | #            into partition | ||
|  | # | ||
|  | CREATE TABLE t1 (a VARBINARY(10)) | ||
|  | PARTITION BY RANGE (DAYOFWEEK(a)) | ||
|  | (PARTITION a1 VALUES LESS THAN (60)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a CHAR(10)) | ||
|  | PARTITION BY RANGE (DAYOFWEEK(a)) | ||
|  | (PARTITION a1 VALUES LESS THAN (60)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY RANGE (DAYOFWEEK(a)) | ||
|  | (PARTITION a1 VALUES LESS THAN (60)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIMESTAMP) | ||
|  | PARTITION BY RANGE (DAYOFWEEK(a)) | ||
|  | (PARTITION a1 VALUES LESS THAN (60)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY RANGE (DAYOFWEEK(a)) | ||
|  | (PARTITION a1 VALUES LESS THAN (60)); | ||
|  | INSERT INTO t1 VALUES ('test'),('a'),('5'); | ||
|  | Warnings: | ||
|  | Warning	1265	Data truncated for column 'a' at row 1 | ||
|  | Warning	1265	Data truncated for column 'a' at row 2 | ||
|  | Warning	1265	Data truncated for column 'a' at row 3 | ||
|  | SHOW WARNINGS; | ||
|  | Level	Code	Message | ||
|  | Warning	1265	Data truncated for column 'a' at row 1 | ||
|  | Warning	1265	Data truncated for column 'a' at row 2 | ||
|  | Warning	1265	Data truncated for column 'a' at row 3 | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY RANGE (DAYOFWEEK(a)) | ||
|  | (PARTITION a1 VALUES LESS THAN (60)); | ||
|  | INSERT INTO t1 VALUES ('test'),('a'),('5'); | ||
|  | Warnings: | ||
|  | Warning	1264	Out of range value for column 'a' at row 1 | ||
|  | Warning	1264	Out of range value for column 'a' at row 2 | ||
|  | Warning	1264	Out of range value for column 'a' at row 3 | ||
|  | SHOW WARNINGS; | ||
|  | Level	Code	Message | ||
|  | Warning	1264	Out of range value for column 'a' at row 1 | ||
|  | Warning	1264	Out of range value for column 'a' at row 2 | ||
|  | Warning	1264	Out of range value for column 'a' at row 3 | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY RANGE (DAYOFWEEK(a)) | ||
|  | (PARTITION a1 VALUES LESS THAN (60)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | SHOW WARNINGS; | ||
|  | Level	Code	Message | ||
|  | Error	1486	Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (TO_DAYS(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (TO_DAYS(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (TO_DAYS(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (TO_DAYS(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (TO_DAYS(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (DAYOFMONTH(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (DAYOFMONTH(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (DAYOFMONTH(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (DAYOFMONTH(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (DAYOFMONTH(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (MONTH(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (MONTH(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (MONTH(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (MONTH(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (MONTH(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (DAYOFYEAR(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (DAYOFYEAR(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (DAYOFYEAR(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (DAYOFYEAR(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (DAYOFYEAR(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (HOUR(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (HOUR(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (HOUR(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (HOUR(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (HOUR(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (MINUTE(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (MINUTE(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (MINUTE(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (MINUTE(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (MINUTE(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (QUARTER(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (QUARTER(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (QUARTER(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (QUARTER(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (QUARTER(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (SECOND(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (SECOND(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (SECOND(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (SECOND(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (SECOND(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (YEARWEEK(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (YEARWEEK(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (YEARWEEK(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (YEARWEEK(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (YEARWEEK(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (WEEKDAY(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (WEEKDAY(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (WEEKDAY(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (WEEKDAY(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (WEEKDAY(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | # TO_SECONDS() is added in 5.5. | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (TO_SECONDS(a)); | ||
|  | ERROR 42000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed near ')' at line 2 | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (TIME_TO_SEC(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (TIME_TO_SEC(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (TIME_TO_SEC(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (TIME_TO_SEC(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (TIME_TO_SEC(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (FROM_DAYS(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (FROM_DAYS(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (FROM_DAYS(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (TO_DAYS(FROM_DAYS(a))); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (FROM_DAYS(a)); | ||
|  | ERROR HY000: The PARTITION function returns the wrong type | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (TO_DAYS(FROM_DAYS(a))); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (FROM_DAYS(a)); | ||
|  | ERROR HY000: The PARTITION function returns the wrong type | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (MICROSECOND(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (MICROSECOND(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (MICROSECOND(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (MICROSECOND(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (MICROSECOND(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | # Bug#57071 | ||
|  | CREATE TABLE t1 | ||
|  | (`date` date, | ||
|  | `extracted_week` int, | ||
|  | `yearweek` int, | ||
|  | `week` int, | ||
|  | `default_week_format` int) | ||
|  | PARTITION BY LIST (EXTRACT(WEEK FROM date) % 3) | ||
|  | (PARTITION p0 VALUES IN (0), | ||
|  | PARTITION p1 VALUES IN (1), | ||
|  | PARTITION p2 VALUES IN (2)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 | ||
|  | (`date` date, | ||
|  | `extracted_week` int, | ||
|  | `yearweek` int, | ||
|  | `week` int, | ||
|  | `default_week_format` int); | ||
|  | SET @old_default_week_format := @@default_week_format; | ||
|  | SET default_week_format = 0; | ||
|  | INSERT INTO t1 VALUES ('2000-01-01', EXTRACT(WEEK FROM '2000-01-01'), YEARWEEK('2000-01-01'), WEEK('2000-01-01'), @@default_week_format); | ||
|  | SET default_week_format = 1; | ||
|  | INSERT INTO t1 VALUES ('2000-01-01', EXTRACT(WEEK FROM '2000-01-01'), YEARWEEK('2000-01-01'), WEEK('2000-01-01'), @@default_week_format); | ||
|  | SET default_week_format = 2; | ||
|  | INSERT INTO t1 VALUES ('2000-01-01', EXTRACT(WEEK FROM '2000-01-01'), YEARWEEK('2000-01-01'), WEEK('2000-01-01'), @@default_week_format); | ||
|  | SET default_week_format = 3; | ||
|  | INSERT INTO t1 VALUES ('2000-01-01', EXTRACT(WEEK FROM '2000-01-01'), YEARWEEK('2000-01-01'), WEEK('2000-01-01'), @@default_week_format); | ||
|  | SET default_week_format = 4; | ||
|  | INSERT INTO t1 VALUES ('2000-01-01', EXTRACT(WEEK FROM '2000-01-01'), YEARWEEK('2000-01-01'), WEEK('2000-01-01'), @@default_week_format); | ||
|  | SET default_week_format = 5; | ||
|  | INSERT INTO t1 VALUES ('2000-01-01', EXTRACT(WEEK FROM '2000-01-01'), YEARWEEK('2000-01-01'), WEEK('2000-01-01'), @@default_week_format); | ||
|  | SET default_week_format = 6; | ||
|  | INSERT INTO t1 VALUES ('2000-01-01', EXTRACT(WEEK FROM '2000-01-01'), YEARWEEK('2000-01-01'), WEEK('2000-01-01'), @@default_week_format); | ||
|  | SET default_week_format = 7; | ||
|  | INSERT INTO t1 VALUES ('2000-01-01', EXTRACT(WEEK FROM '2000-01-01'), YEARWEEK('2000-01-01'), WEEK('2000-01-01'), @@default_week_format); | ||
|  | SELECT * FROM t1; | ||
|  | date	extracted_week	yearweek	week	default_week_format | ||
|  | 2000-01-01	0	199952	0	0 | ||
|  | 2000-01-01	0	199952	0	1 | ||
|  | 2000-01-01	52	199952	52	2 | ||
|  | 2000-01-01	52	199952	52	3 | ||
|  | 2000-01-01	0	199952	0	4 | ||
|  | 2000-01-01	0	199952	0	5 | ||
|  | 2000-01-01	52	199952	52	6 | ||
|  | 2000-01-01	52	199952	52	7 | ||
|  | SET default_week_format = @old_default_week_format; | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(YEAR FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(YEAR FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(YEAR FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(YEAR FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(YEAR FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(YEAR_MONTH FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(YEAR_MONTH FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(YEAR_MONTH FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(YEAR_MONTH FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(YEAR_MONTH FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(QUARTER FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(QUARTER FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(QUARTER FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(QUARTER FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(QUARTER FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(MONTH FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(MONTH FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(MONTH FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(MONTH FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(MONTH FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | # EXTRACT(WEEK...) is disallowed, see bug#57071. | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(WEEK FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(WEEK FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(WEEK FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(WEEK FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(WEEK FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(DAY FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(DAY FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(DAY FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(DAY FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(DAY FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_HOUR FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_HOUR FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_HOUR FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_HOUR FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_HOUR FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_MINUTE FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_MINUTE FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_MINUTE FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_MINUTE FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_MINUTE FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_SECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_MINUTE FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_MINUTE FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_MINUTE FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_MINUTE FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_MINUTE FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_SECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_SECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE_SECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE_SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE_SECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE_SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE_SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(SECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(SECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(SECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(MICROSECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(MICROSECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_MICROSECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(DAY_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_MICROSECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_MICROSECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(HOUR_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE_MICROSECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE_MICROSECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(MINUTE_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (EXTRACT(SECOND_MICROSECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (EXTRACT(SECOND_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (EXTRACT(SECOND_MICROSECOND FROM a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (EXTRACT(SECOND_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (EXTRACT(SECOND_MICROSECOND FROM a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME, b DATE) | ||
|  | PARTITION BY HASH (DATEDIFF(a, b)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATE, b DATETIME) | ||
|  | PARTITION BY HASH (DATEDIFF(a, b)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATETIME, b DATE) | ||
|  | PARTITION BY HASH (DATEDIFF(a, b)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE, b VARCHAR(10)) | ||
|  | PARTITION BY HASH (DATEDIFF(a, b)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT, b DATETIME) | ||
|  | PARTITION BY HASH (DATEDIFF(a, b)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a TIME) | ||
|  | PARTITION BY HASH (TIME_TO_SEC(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a DATE) | ||
|  | PARTITION BY HASH (TIME_TO_SEC(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a DATETIME) | ||
|  | PARTITION BY HASH (TIME_TO_SEC(a)); | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a VARCHAR(10)) | ||
|  | PARTITION BY HASH (TIME_TO_SEC(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (TIME_TO_SEC(a)); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | # | ||
|  | # Bug#49161: Out of memory; restart server and try again (needed 2 bytes) | ||
|  | # | ||
|  | CREATE TABLE t1 (a INT) PARTITION BY HASH (a); | ||
|  | FLUSH TABLES; | ||
|  | CHECK TABLE t1; | ||
|  | Table	Op	Msg_type	Msg_text | ||
|  | test.t1	check	Error	Failed to read from the .par file | ||
|  | test.t1	check	Error	Incorrect information in file: './test/t1.frm' | ||
|  | test.t1	check	error	Corrupt | ||
|  | SELECT * FROM t1; | ||
|  | ERROR HY000: Failed to read from the .par file | ||
|  | # Note that we will remove the frm file when we detect that  | ||
|  | # .par file has been deleted. | ||
|  | DROP TABLE t1; | ||
|  | ERROR 42S02: Unknown table 't1' | ||
|  | # | ||
|  | # Bug#49477: Assertion `0' failed in ha_partition.cc:5530 | ||
|  | # with temporary table and partitions | ||
|  | # | ||
|  | CREATE TABLE t1 (a INT) PARTITION BY HASH(a); | ||
|  | CREATE TEMPORARY TABLE tmp_t1 LIKE t1; | ||
|  | ERROR HY000: Cannot create temporary table with partitions | ||
|  | DROP TABLE t1; | ||
|  | # | ||
|  | # Bug#50392: insert_id is not reset for partitioned tables | ||
|  | #            auto_increment on duplicate entry | ||
|  | CREATE TABLE t1 (a INT AUTO_INCREMENT PRIMARY KEY); | ||
|  | SET INSERT_ID= 13; | ||
|  | INSERT INTO t1 VALUES (NULL); | ||
|  | SET INSERT_ID= 12; | ||
|  | INSERT INTO t1 VALUES (NULL), (NULL), (NULL); | ||
|  | ERROR 23000: Duplicate entry '13' for key 'PRIMARY' | ||
|  | SHOW CREATE TABLE t1; | ||
|  | Table	Create Table | ||
|  | t1	CREATE TABLE `t1` ( | ||
|  |   `a` int(11) NOT NULL AUTO_INCREMENT, | ||
|  |   PRIMARY KEY (`a`) | ||
|  | ) ENGINE=MyISAM AUTO_INCREMENT=14 DEFAULT CHARSET=latin1 | ||
|  | INSERT INTO t1 VALUES (NULL); | ||
|  | SELECT * FROM t1; | ||
|  | a | ||
|  | 12 | ||
|  | 13 | ||
|  | 14 | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a INT AUTO_INCREMENT PRIMARY KEY) PARTITION BY KEY(a); | ||
|  | SET INSERT_ID= 13; | ||
|  | INSERT INTO t1 VALUES (NULL); | ||
|  | SET INSERT_ID= 12; | ||
|  | INSERT INTO t1 VALUES (NULL), (NULL), (NULL); | ||
|  | ERROR 23000: Duplicate entry '13' for key 'PRIMARY' | ||
|  | SHOW CREATE TABLE t1; | ||
|  | Table	Create Table | ||
|  | t1	CREATE TABLE `t1` ( | ||
|  |   `a` int(11) NOT NULL AUTO_INCREMENT, | ||
|  |   PRIMARY KEY (`a`) | ||
|  | ) ENGINE=MyISAM AUTO_INCREMENT=14 DEFAULT CHARSET=latin1 | ||
|  | /*!50100 PARTITION BY KEY (a) */ | ||
|  | INSERT INTO t1 VALUES (NULL); | ||
|  | SELECT * FROM t1; | ||
|  | a | ||
|  | 12 | ||
|  | 13 | ||
|  | 14 | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a INTEGER NOT NULL, PRIMARY KEY (a)); | ||
|  | INSERT INTO t1 VALUES (1),(1); | ||
|  | ERROR 23000: Duplicate entry '1' for key 'PRIMARY' | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a INTEGER NOT NULL, PRIMARY KEY (a)) | ||
|  | PARTITION BY KEY (a) PARTITIONS 2; | ||
|  | INSERT INTO t1 VALUES (1),(1); | ||
|  | ERROR 23000: Duplicate entry '1' for key 'PRIMARY' | ||
|  | DROP TABLE t1; | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY HASH (a) | ||
|  | ( PARTITION p0 ENGINE=MyISAM, | ||
|  | PARTITION p1); | ||
|  | ERROR HY000: The mix of handlers in the partitions is not allowed in this version of MySQL | ||
|  | CREATE TABLE t1 (a INT) | ||
|  | PARTITION BY LIST (a) | ||
|  | SUBPARTITION BY HASH (a) | ||
|  | ( PARTITION p0 VALUES IN (0) | ||
|  | ( SUBPARTITION s0, SUBPARTITION s1 ENGINE=MyISAM, SUBPARTITION s2), | ||
|  | PARTITION p1 VALUES IN (1) | ||
|  | ( SUBPARTITION s3 ENGINE=MyISAM, SUBPARTITION s4, SUBPARTITION s5 ENGINE=MyISAM)); | ||
|  | ERROR HY000: The mix of handlers in the partitions is not allowed in this version of MySQL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int | ||
|  | ) | ||
|  | PARTITION BY RANGE (a) | ||
|  | ( | ||
|  | PARTITION p0 VALUES LESS THAN (1), | ||
|  | PARTITION p1 VALU ES LESS THAN (2) | ||
|  | ); | ||
|  | ERROR HY000: Syntax error: RANGE PARTITIONING requires definition of VALUES LESS THAN for each partition | ||
|  | partition by list (a) | ||
|  | partitions 3 | ||
|  | (partition x1 values in (1,2,9,4) tablespace ts1, | ||
|  | partition x2 values in (3, 11, 5, 7) tablespace ts2, | ||
|  | partition x3 values in (16, 8, 5+19, 70-43) tablespace ts3); | ||
|  | ERROR 42000: Partitioning can not be used stand-alone in query near 'partition by list (a) | ||
|  | partitions 3 | ||
|  | (partition x1 values in (1,2,9,4) tablespace ' at line 1 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (a) | ||
|  | partitions 2; | ||
|  | ERROR HY000: For LIST partitions each partition must be defined | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (sin(a)) | ||
|  | partitions 3 | ||
|  | (partition x1 values in (1,2,9,4) tablespace ts1, | ||
|  | partition x2 values in (3, 11, 5, 7) tablespace ts2, | ||
|  | partition x3 values in (16, 8, 5+19, 70-43) tablespace ts3); | ||
|  | ERROR HY000: This partition function is not allowed | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by key (a+2) | ||
|  | partitions 3 | ||
|  | (partition x1 tablespace ts1, | ||
|  | partition x2 tablespace ts2, | ||
|  | partition x3 tablespace ts3); | ||
|  | ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '+2) | ||
|  | partitions 3 | ||
|  | (partition x1 tablespace ts1, | ||
|  | partition x2 tablespace ts2, | ||
|  | part' at line 6 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by key (a) | ||
|  | partitions 3 | ||
|  | (partition tablespace ts1, | ||
|  | partition x2 tablespace ts2, | ||
|  | partition x3 tablespace ts3); | ||
|  | ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ts1, | ||
|  | partition x2 tablespace ts2, | ||
|  | partition x3 tablespace ts3)' at line 8 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by key (a,d) | ||
|  | partitions 3 | ||
|  | (partition x1 tablespace ts1, | ||
|  | partition x2 tablespace ts2, | ||
|  | partition x3 tablespace ts3); | ||
|  | ERROR HY000: Field in list of fields for partition function not found in table | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by hash (a + d) | ||
|  | partitions 3 | ||
|  | (partition x1 tablespace ts1, | ||
|  | partition x2 tablespace ts2, | ||
|  | partition x3 tablespace ts3); | ||
|  | ERROR 42S22: Unknown column 'd' in 'partition function' | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by hash (sin(a)) | ||
|  | partitions 3 | ||
|  | (partition x1 tablespace ts1, | ||
|  | partition x2 tablespace ts2, | ||
|  | partition x3 tablespace ts3); | ||
|  | ERROR HY000: This partition function is not allowed | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by key (a) | ||
|  | partitions 3 | ||
|  | (partition x1, partition x2); | ||
|  | ERROR 42000: Wrong number of partitions defined, mismatch with previous setting near ')' at line 8 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by hash (rand(a)) | ||
|  | partitions 2 | ||
|  | (partition x1, partition x2); | ||
|  | ERROR 42000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed near ') | ||
|  | partitions 2 | ||
|  | (partition x1, partition x2)' at line 6 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (rand(a)) | ||
|  | partitions 2 | ||
|  | (partition x1 values less than (0), partition x2 values less than (2)); | ||
|  | ERROR 42000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed near ') | ||
|  | partitions 2 | ||
|  | (partition x1 values less than (0), partition x2 values less than' at line 6 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (rand(a)) | ||
|  | partitions 2 | ||
|  | (partition x1 values in (1), partition x2 values in (2)); | ||
|  | ERROR 42000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed near ') | ||
|  | partitions 2 | ||
|  | (partition x1 values in (1), partition x2 values in (2))' at line 6 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by hash (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values less than (4), | ||
|  | partition x2 values less than (5)); | ||
|  | ERROR HY000: Only RANGE PARTITIONING can use VALUES LESS THAN in partition definition | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by hash (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values in (4), | ||
|  | partition x2 values in (5)); | ||
|  | ERROR HY000: Only LIST PARTITIONING can use VALUES IN in partition definition | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by hash (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values in (4,6), | ||
|  | partition x2 values in (5,7)); | ||
|  | ERROR HY000: Only LIST PARTITIONING can use VALUES IN in partition definition | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by key (a) | ||
|  | subpartition by key (b); | ||
|  | ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by key (a) | ||
|  | subpartition by key (a, b); | ||
|  | ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by key (a) | ||
|  | subpartition by hash (a+b); | ||
|  | ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by key (a) | ||
|  | subpartition by key (b); | ||
|  | ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by key (a) | ||
|  | subpartition by key (a, b); | ||
|  | ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by key (a) | ||
|  | subpartition by hash (a+b); | ||
|  | ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by key (a) | ||
|  | subpartition by hash (rand(a+b)); | ||
|  | ERROR 42000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed near ')' at line 7 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by key (a) | ||
|  | subpartition by hash (sin(a+b)) | ||
|  | (partition x1 (subpartition x11, subpartition x12), | ||
|  | partition x2 (subpartition x21, subpartition x22)); | ||
|  | ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by range (a) | ||
|  | subpartition by key (a+b) | ||
|  | (partition x1 values less than (1) (subpartition x11, subpartition x12), | ||
|  | partition x2 values less than (2) (subpartition x21, subpartition x22)); | ||
|  | ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '+b) | ||
|  | (partition x1 values less than (1) (subpartition x11, subpartition x12), | ||
|  | par' at line 7 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by range (a) | ||
|  | subpartition by key (a,d) | ||
|  | (partition x1 values less than (1) (subpartition x11, subpartition x12), | ||
|  | partition x2 values less than (2) (subpartition x21, subpartition x22)); | ||
|  | ERROR HY000: Field in list of fields for partition function not found in table | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by key (a) | ||
|  | subpartition by hash (3+4); | ||
|  | ERROR HY000: It is only possible to mix RANGE/LIST partitioning with HASH/KEY partitioning for subpartitioning | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by range (a) | ||
|  | subpartition by hash (a+d) | ||
|  | (partition x1 values less than (1) (subpartition x11, subpartition x12), | ||
|  | partition x2 values less than (2) (subpartition x21, subpartition x22)); | ||
|  | ERROR 42S22: Unknown column 'd' in 'partition function' | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (a); | ||
|  | ERROR HY000: For RANGE partitions each partition must be defined | ||
|  | select load_file('$MYSQLD_DATADIR/test/t1.par'); | ||
|  | load_file('$MYSQLD_DATADIR/test/t1.par') | ||
|  | NULL | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (a+d) | ||
|  | partitions 2 | ||
|  | (partition x1 values less than (4) tablespace ts1, | ||
|  | partition x2 values less than (8) tablespace ts2); | ||
|  | ERROR 42S22: Unknown column 'd' in 'partition function' | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values less than (4.0) tablespace ts1, | ||
|  | partition x2 values less than (8) tablespace ts2); | ||
|  | ERROR 42000: VALUES value must be of same type as partition function near ') tablespace ts1, | ||
|  | partition x2 values less than (8) tablespace ts2)' at line 8 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (3+4) | ||
|  | partitions 2 | ||
|  | (partition x1 values less than (4) tablespace ts1, | ||
|  | partition x2 values less than (8) tablespace ts2); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 (  | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values less than (4), | ||
|  | partition x2); | ||
|  | ERROR HY000: Syntax error: RANGE PARTITIONING requires definition of VALUES LESS THAN for each partition | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values in (4), | ||
|  | partition x2); | ||
|  | ERROR HY000: Only LIST PARTITIONING can use VALUES IN in partition definition | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values in (4), | ||
|  | partition x2 values less than (5)); | ||
|  | ERROR HY000: Only LIST PARTITIONING can use VALUES IN in partition definition | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values less than 4, | ||
|  | partition x2 values less than (5)); | ||
|  | ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '4, | ||
|  | partition x2 values less than (5))' at line 8 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values less than maxvalue, | ||
|  | partition x2 values less than (5)); | ||
|  | ERROR 42000: MAXVALUE can only be used in last partition definition near '))' at line 9 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values less than maxvalue, | ||
|  | partition x2 values less than maxvalue); | ||
|  | ERROR 42000: MAXVALUE can only be used in last partition definition near 'maxvalue)' at line 9 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values less than (4), | ||
|  | partition x2 values less than (3)); | ||
|  | ERROR HY000: VALUES LESS THAN value must be strictly increasing for each partition | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by range (sin(a)) | ||
|  | partitions 2 | ||
|  | (partition x1 values less than (4), | ||
|  | partition x2 values less than (5)); | ||
|  | ERROR HY000: This partition function is not allowed | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by list (a) | ||
|  | subpartition by hash (a+b) | ||
|  | subpartitions 3 | ||
|  | ( partition x1 values in (1,2,4) | ||
|  | ( subpartition x11 nodegroup 0, | ||
|  | subpartition x12 nodegroup 1), | ||
|  | partition x2 values in (3,5,6) | ||
|  | ( subpartition x21 nodegroup 0, | ||
|  | subpartition x22 nodegroup 1) | ||
|  | ); | ||
|  | ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near '), | ||
|  | partition x2 values in (3,5,6) | ||
|  | ( subpartition x21 nodegroup 0, | ||
|  | subpartition x' at line 11 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by list (a) | ||
|  | subpartition by hash (a+b) | ||
|  | ( partition x1 values in (1) | ||
|  | ( subpartition x11 nodegroup 0, | ||
|  | subpartition xextra, | ||
|  | subpartition x12 nodegroup 1), | ||
|  | partition x2 values in (2) | ||
|  | ( subpartition x21 nodegroup 0, | ||
|  | subpartition x22 nodegroup 1) | ||
|  | ); | ||
|  | ERROR 42000: Wrong number of subpartitions defined, mismatch with previous setting near ') | ||
|  | )' at line 14 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by key (a)  | ||
|  | subpartition by list (a+b) | ||
|  | ( partition x1 | ||
|  | ( subpartition x11 engine myisam, | ||
|  | subpartition x12 engine myisam), | ||
|  | partition x2  | ||
|  | ( subpartition x21 engine myisam, | ||
|  | subpartition x22 engine myisam) | ||
|  | ); | ||
|  | ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'list (a+b) | ||
|  | ( partition x1 | ||
|  | ( subpartition x11 engine myisam, | ||
|  | subpartition x12 eng' at line 7 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key (a,b)) | ||
|  | partition by key (a) | ||
|  | subpartition by list (a+b) | ||
|  | ( partition x1 | ||
|  | ( subpartition x11 engine myisam values in (0), | ||
|  | subpartition x12 engine myisam values in (1)), | ||
|  | partition x2 | ||
|  | ( subpartition x21 engine myisam values in (0), | ||
|  | subpartition x22 engine myisam values in (1)) | ||
|  | ); | ||
|  | ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'list (a+b) | ||
|  | ( partition x1 | ||
|  | ( subpartition x11 engine myisam values in (0), | ||
|  | subpar' at line 7 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (a); | ||
|  | ERROR HY000: For LIST partitions each partition must be defined | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (3+4) | ||
|  | partitions 2  | ||
|  | (partition x1 values in (4) tablespace ts1, | ||
|  | partition x2 values in (8) tablespace ts2); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (a+d) | ||
|  | partitions 2 | ||
|  | (partition x1 values in (4) tablespace ts1, | ||
|  | partition x2 values in (8) tablespace ts2); | ||
|  | ERROR 42S22: Unknown column 'd' in 'partition function' | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values in (4), | ||
|  | partition x2); | ||
|  | ERROR HY000: Syntax error: LIST PARTITIONING requires definition of VALUES IN for each partition | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values in (4), | ||
|  | partition x2 values less than (5)); | ||
|  | ERROR HY000: Only RANGE PARTITIONING can use VALUES LESS THAN in partition definition | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values in (4,6), | ||
|  | partition x2); | ||
|  | ERROR HY000: Syntax error: LIST PARTITIONING requires definition of VALUES IN for each partition | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values in (4, 12+9), | ||
|  | partition x2 values in (3, 21)); | ||
|  | ERROR HY000: Multiple definition of same constant in list partitioning | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values in (4.0, 12+8), | ||
|  | partition x2 values in (3, 21)); | ||
|  | ERROR 42000: VALUES value must be of same type as partition function near ' 12+8), | ||
|  | partition x2 values in (3, 21))' at line 8 | ||
|  | CREATE TABLE t1 ( | ||
|  | a int not null, | ||
|  | b int not null, | ||
|  | c int not null, | ||
|  | primary key(a,b)) | ||
|  | partition by list (a) | ||
|  | partitions 2 | ||
|  | (partition x1 values in 4, | ||
|  | partition x2 values in (5)); | ||
|  | ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '4, | ||
|  | partition x2 values in (5))' at line 8 | ||
|  | CREATE TABLE t1 (a int) | ||
|  | PARTITION BY RANGE (a) | ||
|  | (PARTITION p0 VALUES LESS THAN (x1)); | ||
|  | ERROR 42S22: Unknown column 'x1' in 'partition function' | ||
|  | CREATE TABLE t1(a int) | ||
|  | PARTITION BY RANGE (a) (PARTITION p1 VALUES LESS THAN(5)); | ||
|  | insert into t1 values (10); | ||
|  | ERROR HY000: Table has no partition for value 10 | ||
|  | drop table t1; | ||
|  | create table t1 (a bigint unsigned) | ||
|  | partition by range (a) | ||
|  | (partition p0 values less than (-1)); | ||
|  | ERROR HY000: Partition constant is out of partition function domain | ||
|  | create table t1 (v varchar(12)) | ||
|  | partition by range (ascii(v)) | ||
|  | (partition p0 values less than (10)); | ||
|  | ERROR HY000: This partition function is not allowed | ||
|  | create table t1 (a int) | ||
|  | partition by hash (rand(a)); | ||
|  | ERROR 42000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed near ')' at line 2 | ||
|  | create table t1 (a int) | ||
|  | partition by hash(CURTIME() + a); | ||
|  | ERROR 42000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed near ')' at line 2 | ||
|  | create table t1 (a int) | ||
|  | partition by hash (NOW()+a); | ||
|  | ERROR 42000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed near ')' at line 2 | ||
|  | create table t1 (a int) | ||
|  | partition by hash (extract(hour from convert_tz(a, '+00:00', '+00:00'))); | ||
|  | ERROR HY000: This partition function is not allowed | ||
|  | create table t1 (a int) | ||
|  | partition by range (a + (select count(*) from t1)) | ||
|  | (partition p1 values less than (1)); | ||
|  | ERROR HY000: This partition function is not allowed | ||
|  | create table t1 (a char(10)) | ||
|  | partition by hash (extractvalue(a,'a')); | ||
|  | ERROR HY000: This partition function is not allowed | ||
|  | # | ||
|  | # Bug #42849: innodb crash with varying time_zone on partitioned | ||
|  | #             timestamp primary key | ||
|  | # | ||
|  | CREATE TABLE old (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (UNIX_TIMESTAMP(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (1219089600), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (a) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: The PARTITION function returns the wrong type | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (a) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: The PARTITION function returns the wrong type | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (a+0) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (a+0) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (a % 2) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (a % 2) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (ABS(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (ABS(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (CEILING(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (CEILING(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (FLOOR(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (FLOOR(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (20080819), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (TO_DAYS(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (733638), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (TO_DAYS(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (733638), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (DAYOFYEAR(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (231), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (DAYOFYEAR(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (231), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (DAYOFMONTH(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (19), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (DAYOFMONTH(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (19), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (DAYOFWEEK(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (3), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (DAYOFWEEK(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (3), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (MONTH(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (8), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (MONTH(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (8), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (HOUR(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (17), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (HOUR(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (17), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (MINUTE(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (55), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (MINUTE(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (55), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (QUARTER(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (3), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (QUARTER(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (3), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (SECOND(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (7), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (SECOND(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (7), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (YEARWEEK(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (200833), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (YEARWEEK(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (200833), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (YEAR(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (2008), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (YEAR(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (2008), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (WEEKDAY(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (3), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (WEEKDAY(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (3), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (TIME_TO_SEC(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (64507), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (TIME_TO_SEC(a)) ( | ||
|  | PARTITION p VALUES LESS THAN (64507), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (EXTRACT(DAY FROM a)) ( | ||
|  | PARTITION p VALUES LESS THAN (18), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (EXTRACT(DAY FROM a)) ( | ||
|  | PARTITION p VALUES LESS THAN (18), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL, b TIMESTAMP NOT NULL, PRIMARY KEY(a,b)) | ||
|  | PARTITION BY RANGE (DATEDIFF(a, a)) ( | ||
|  | PARTITION p VALUES LESS THAN (18), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (DATEDIFF(a, a)) ( | ||
|  | PARTITION p VALUES LESS THAN (18), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (YEAR(a + 0)) ( | ||
|  | PARTITION p VALUES LESS THAN (2008), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (YEAR(a + 0)) ( | ||
|  | PARTITION p VALUES LESS THAN (2008), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (TO_DAYS(a + '2008-01-01')) ( | ||
|  | PARTITION p VALUES LESS THAN (733638), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (TO_DAYS(a + '2008-01-01')) ( | ||
|  | PARTITION p VALUES LESS THAN (733638), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP NOT NULL PRIMARY KEY) | ||
|  | PARTITION BY RANGE (YEAR(a + '2008-01-01')) ( | ||
|  | PARTITION p VALUES LESS THAN (2008), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (YEAR(a + '2008-01-01')) ( | ||
|  | PARTITION p VALUES LESS THAN (2008), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old ADD COLUMN b DATE; | ||
|  | CREATE TABLE new (a TIMESTAMP, b DATE) | ||
|  | PARTITION BY RANGE (YEAR(a + b)) ( | ||
|  | PARTITION p VALUES LESS THAN (2008), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (YEAR(a + b)) ( | ||
|  | PARTITION p VALUES LESS THAN (2008), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP, b DATE) | ||
|  | PARTITION BY RANGE (TO_DAYS(a + b)) ( | ||
|  | PARTITION p VALUES LESS THAN (733638), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (TO_DAYS(a + b)) ( | ||
|  | PARTITION p VALUES LESS THAN (733638), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP, b date) | ||
|  | PARTITION BY RANGE (UNIX_TIMESTAMP(a + b)) ( | ||
|  | PARTITION p VALUES LESS THAN (1219089600), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (UNIX_TIMESTAMP(a + b)) ( | ||
|  | PARTITION p VALUES LESS THAN (1219089600), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | CREATE TABLE new (a TIMESTAMP, b TIMESTAMP) | ||
|  | PARTITION BY RANGE (UNIX_TIMESTAMP(a + b)) ( | ||
|  | PARTITION p VALUES LESS THAN (1219089600), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | ALTER TABLE old MODIFY b TIMESTAMP; | ||
|  | ALTER TABLE old | ||
|  | PARTITION BY RANGE (UNIX_TIMESTAMP(a + b)) ( | ||
|  | PARTITION p VALUES LESS THAN (1219089600), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | DROP TABLE old; | ||
|  | # | ||
|  | # Bug #56709: Memory leaks at running the 5.1 test suite | ||
|  | #  | ||
|  | CREATE TABLE t1 (a TIMESTAMP NOT NULL PRIMARY KEY); | ||
|  | ALTER TABLE t1 | ||
|  | PARTITION BY RANGE (EXTRACT(DAY FROM a)) ( | ||
|  | PARTITION p VALUES LESS THAN (18), | ||
|  | PARTITION pmax VALUES LESS THAN MAXVALUE); | ||
|  | ERROR HY000: Constant, random or timezone-dependent expressions in (sub)partitioning function are not allowed | ||
|  | DROP TABLE t1; | ||
|  | End of 5.1 tests |