summaryrefslogtreecommitdiff
path: root/mysql-test/main/partition_utf8.test
blob: 9bfa352ab25ced904afe9b1ec847c810f7a0b081 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# Tests for Column list which requires utf8 output
--source include/have_partition.inc
set names utf8;
create table t1 (a varchar(2) character set cp1250)
partition by list columns (a)
( partition p0 values in (0x81));
show create table t1;
drop table t1;
create table t1 (a varchar(2) character set cp1250)
partition by list columns (a)
( partition p0 values in (0x80));
show create table t1;
drop table t1;

#
# BUG#48164, too long partition fields causes crash
#
--error ER_PARTITION_FIELDS_TOO_LONG
create table t1 (a varchar(1500), b varchar(1570))
partition by list columns(a,b)
( partition p0 values in (('a','b')));

create table t1 (a varchar(1023) character set utf8 collate utf8_spanish2_ci)
partition by range columns(a)
( partition p0 values less than ('CZ'),
  partition p1 values less than ('CH'),
  partition p2 values less than ('D'));
insert into t1 values ('czz'),('chi'),('ci'),('cg');
select * from t1 where a between 'cg' AND 'ci';
drop table t1;

#
# BUG#48163, Dagger in UCS2 not working as partition value
#
create table t1 (a varchar(2) character set ucs2)
partition by list columns (a)
(partition p0 values in (0x2020),
 partition p1 values in (''));
show create table t1;
insert into t1 values ('');
insert into t1 values (_ucs2 0x2020);
drop table t1;

--echo #
--echo # Start of 10.3 tests
--echo #

--echo #
--echo # MDEV-20855 Crash with PARTITION BY LIST and extended characters
--echo #

SET NAMES utf8;

--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
CREATE OR REPLACE TABLE t1 (a CHAR(10)) CHARACTER SET latin1
  PARTITION BY LIST COLUMNS (a) (PARTITION p0 VALUES IN ('Б'));

--error ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
CREATE OR REPLACE TABLE t1 (a TIME)
  PARTITION BY LIST COLUMNS (a) (PARTITION p0 VALUES IN ('Б'));

--echo #
--echo # End of 10.3 tests
--echo #

--echo #
--echo # Start of 10.5 tests
--echo #

--echo #
--echo # MDEV-20856 Bad values in metadata views for partitions on VARBINARY
--echo #

CREATE TABLE t1 (a VARBINARY(10)) CHARACTER SET utf8
  PARTITION BY LIST COLUMNS (a) (PARTITION p0 VALUES IN (0xFF));
SHOW CREATE TABLE t1;
SELECT PARTITION_DESCRIPTION FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_NAME='t1';
DROP TABLE t1;


--echo #
--echo # End of 10.5 tests
--echo #