mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Merge branch '10.6' into 10.11
This commit is contained in:
@ -1293,11 +1293,9 @@ INSERT INTO t1 (s1) VALUES
|
||||
(_ucs2 0x101C1000103A10181000103A),
|
||||
(_ucs2 0x101C103910181000103A /* tea */);
|
||||
|
||||
# enable view-protocol after fix MDEV-27871
|
||||
--disable_view_protocol
|
||||
|
||||
SELECT id, IF(LEFT(s1,1)='-',s1,CONCAT(HEX(WEIGHT_STRING(s1)),'\t', HEX(CONVERT(s1 USING ucs2)))) FROM t1 ORDER BY id;
|
||||
--enable_view_protocol
|
||||
--disable_service_connection
|
||||
SELECT id, IF(LEFT(s1,1)='-',s1,CONCAT(HEX(WEIGHT_STRING(s1)),'\t', HEX(CONVERT(s1 USING ucs2)))) as exp FROM t1 ORDER BY id;
|
||||
--enable_service_connection
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
|
@ -1,7 +1,3 @@
|
||||
#remove this include after fix MDEV-27871
|
||||
# maybe some tests need to be excluded separately after fix
|
||||
--source include/no_view_protocol.inc
|
||||
|
||||
SET TIME_ZONE = _latin1 '+03:00';
|
||||
|
||||
--echo #
|
||||
@ -464,6 +460,7 @@ show create table t1;
|
||||
drop table t1;
|
||||
|
||||
--disable_ps2_protocol
|
||||
--disable_view_protocol
|
||||
# Ensure that row_count() value is reset after drop table.
|
||||
select 1;
|
||||
select hex(concat(row_count()));
|
||||
@ -475,6 +472,7 @@ select hex(concat(found_rows()));
|
||||
create table t1 as select concat(found_rows()) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
--enable_view_protocol
|
||||
--enable_ps2_protocol
|
||||
|
||||
create table t1 as select concat(uuid_short()) as c1;
|
||||
@ -664,71 +662,71 @@ create table t1 as select concat(Dimension(GeomFromText('LINSTRING(0 0,10 10)'))
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
|
||||
select hex(concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)')))) as exp;
|
||||
create table t1 as select concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))));
|
||||
select hex(concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)')))) as exp;
|
||||
create table t1 as select concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
|
||||
select hex(concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)')))) as exp;
|
||||
create table t1 as select concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))));
|
||||
select hex(concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))')))) as exp;
|
||||
create table t1 as select concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(IsEmpty(GeomFromText('POINT(1 1)'))));
|
||||
select hex(concat(IsEmpty(GeomFromText('POINT(1 1)')))) as exp;
|
||||
create table t1 as select concat(IsEmpty(GeomFromText('Point(1 1)'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(IsSimple(GeomFromText('POINT(1 1)'))));
|
||||
select hex(concat(IsSimple(GeomFromText('POINT(1 1)')))) as exp;
|
||||
create table t1 as select concat(IsSimple(GeomFromText('Point(1 1)'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))));
|
||||
select hex(concat(IsClosed(GeomFromText('LineString(1 1,2 2)')))) as exp;
|
||||
create table t1 as select concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))));
|
||||
select hex(concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)')))) as exp;
|
||||
create table t1 as select concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))) as c1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(x(GeomFromText('Point(1 2)'))));
|
||||
select hex(concat(x(GeomFromText('Point(1 2)')))) as exp;
|
||||
create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(y(GeomFromText('Point(1 2)'))));
|
||||
select hex(concat(y(GeomFromText('Point(1 2)')))) as exp;
|
||||
create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(GLength(GeomFromText('LineString(1 2,2 2)'))));
|
||||
select hex(concat(GLength(GeomFromText('LineString(1 2,2 2)')))) as exp;
|
||||
create table t1 as select concat(GLength(GeomFromText('LineString(1 2, 2 2)'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))));
|
||||
select hex(concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))')))) as exp;
|
||||
create table t1 as select concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(GeometryType(GeomFromText('Point(1 2)'))));
|
||||
select hex(concat(GeometryType(GeomFromText('Point(1 2)')))) as exp;
|
||||
create table t1 as select concat(GeometryType(GeomFromText('Point(1 2)'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(AsText(GeomFromText('Point(1 2)'))));
|
||||
select hex(concat(AsText(GeomFromText('Point(1 2)')))) as exp;
|
||||
create table t1 as select concat(AsText(GeomFromText('Point(1 2)'))) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
@ -874,7 +872,7 @@ create table t1 as select concat(sec_to_time(2378)) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')));
|
||||
select hex(concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00'))) as exp;
|
||||
create table t1 as select concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
@ -894,12 +892,12 @@ create table t1 as select concat(from_unixtime(1111885200)) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')));
|
||||
select hex(concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00'))) as exp;
|
||||
create table t1 as select concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')) as c1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
select hex(concat(date_add('2004-01-01 12:00:00', interval 1 day)));
|
||||
select hex(concat(date_add('2004-01-01 12:00:00', interval 1 day))) as exp;
|
||||
create table t1 as select concat(date_add('2004-01-01 12:00:00', interval 1 day)) as c1;
|
||||
show create table t1;
|
||||
select * from t1;
|
||||
@ -1646,9 +1644,11 @@ INSERT INTO t1 VALUES (1234567);
|
||||
SELECT GROUP_CONCAT(IFNULL(a,'')) FROM t1;
|
||||
SELECT GROUP_CONCAT(IF(a,a,'')) FROM t1;
|
||||
SELECT GROUP_CONCAT(CASE WHEN a THEN a ELSE '' END) FROM t1;
|
||||
--disable_view_protocol
|
||||
--enable_metadata
|
||||
SELECT COALESCE(a,'') FROM t1 GROUP BY 1;
|
||||
--disable_metadata
|
||||
--enable_view_protocol
|
||||
--echo # All columns must be VARCHAR(9) with the same length:
|
||||
--disable_warnings
|
||||
CREATE TABLE t2 AS
|
||||
@ -1764,15 +1764,17 @@ SELECT
|
||||
DATE_SUB(CAST('2007-08-03 17:33:00' AS DATETIME), INTERVAL 1 MINUTE) AS field_datetime;
|
||||
SHOW CREATE TABLE t1;
|
||||
DROP TABLE t1;
|
||||
--enable_metadata
|
||||
# PS protocol gives different "Max length" value for DATETIME.
|
||||
--disable_ps_protocol
|
||||
--disable_view_protocol
|
||||
--enable_metadata
|
||||
SELECT
|
||||
DATE_SUB('2007-08-03', INTERVAL 1 DAY) AS field_str1,
|
||||
DATE_SUB('2007-08-03 17:33:00', INTERVAL 1 MINUTE) AS field1_str2,
|
||||
DATE_SUB(DATE('2007-08-03'), INTERVAL 1 DAY) AS field_date,
|
||||
DATE_SUB(CAST('2007-08-03 17:33:00' AS DATETIME), INTERVAL 1 MINUTE) AS field_datetime;
|
||||
--disable_metadata
|
||||
--enable_view_protocol
|
||||
--enable_ps_protocol
|
||||
SELECT
|
||||
HEX(DATE_SUB('2007-08-03', INTERVAL 1 MINUTE)) AS field_str1,
|
||||
|
@ -52,14 +52,13 @@ DROP TABLE t1;
|
||||
--echo #
|
||||
--echo # IF, CASE, LEAST
|
||||
--echo #
|
||||
#enable after fix MDEV-27871
|
||||
--disable_view_protocol
|
||||
eval SELECT IF('abc' COLLATE $coll = 'abc ', 'pad', 'nopad');
|
||||
eval SELECT CASE 'abc' COLLATE $coll WHEN 'abc ' THEN 'pad' ELSE 'nopad' END;
|
||||
eval SELECT CASE WHEN 'abc' COLLATE $coll = 'abc ' THEN 'pad' ELSE 'nopad' END;
|
||||
eval SELECT HEX(LEAST('abc ' COLLATE $coll, 'abc '));
|
||||
eval SELECT HEX(GREATEST('abc ' COLLATE $coll, 'abc '));
|
||||
--enable_view_protocol
|
||||
|
||||
eval SELECT IF('abc' COLLATE $coll = 'abc ', 'pad', 'nopad') as exp;
|
||||
eval SELECT CASE 'abc' COLLATE $coll WHEN 'abc ' THEN 'pad' ELSE 'nopad' END as exp;
|
||||
eval SELECT CASE WHEN 'abc' COLLATE $coll = 'abc ' THEN 'pad' ELSE 'nopad' END as exp;
|
||||
eval SELECT HEX(LEAST('abc ' COLLATE $coll, 'abc ')) as exp;
|
||||
eval SELECT HEX(GREATEST('abc ' COLLATE $coll, 'abc ')) as exp;
|
||||
|
||||
--echo #
|
||||
--echo # Collation mix
|
||||
--echo #
|
||||
|
@ -3,10 +3,7 @@
|
||||
--echo #
|
||||
|
||||
SELECT @@character_set_connection, HEX(CAST(_utf8'÷' AS CHAR));
|
||||
# enable view-protocol after fix MDEV-27871
|
||||
--disable_view_protocol
|
||||
SELECT STR_TO_DATE(CAST(_utf8'2001÷01÷01' AS CHAR),CAST(_utf8'%Y÷%m÷%d' AS CHAR));
|
||||
--enable_view_protocol
|
||||
SELECT STR_TO_DATE(CAST(_utf8'2001÷01÷01' AS CHAR),CAST(_utf8'%Y÷%m÷%d' AS CHAR)) as exp;
|
||||
CREATE TABLE t1 AS SELECT REPEAT(' ', 64) AS subject, REPEAT(' ',64) AS pattern LIMIT 0;
|
||||
SHOW COLUMNS FROM t1;
|
||||
INSERT INTO t1 VALUES (_utf8'2001÷01÷01',_utf8'%Y÷%m÷%d');
|
||||
|
@ -2,11 +2,6 @@
|
||||
# Tests with the utf8mb4 character set
|
||||
#
|
||||
|
||||
# Tests will be skipped for the view protocol because the view protocol uses
|
||||
# an additional util connection and don't use for this nessesary configurations
|
||||
# Also need to resolve MDEV-27871
|
||||
-- source include/no_view_protocol.inc
|
||||
|
||||
--source include/default_optimizer_switch.inc
|
||||
--disable_warnings
|
||||
drop table if exists t1,t2;
|
||||
@ -31,26 +26,26 @@ select locate('HE','hello' collate utf8mb4_bin);
|
||||
select locate('HE','hello' collate utf8mb4_bin,2);
|
||||
select locate('LO','hello' collate utf8mb4_bin,2);
|
||||
|
||||
select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2);
|
||||
select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2);
|
||||
select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2);
|
||||
select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin);
|
||||
select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin);
|
||||
select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2) as exp;
|
||||
select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2) as exp;
|
||||
select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2) as exp;
|
||||
select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin) as exp;
|
||||
select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin) as exp;
|
||||
|
||||
select length(_utf8mb4 0xD0B1), bit_length(_utf8mb4 0xD0B1), char_length(_utf8mb4 0xD0B1);
|
||||
select length(_utf8mb4 0xD0B1), bit_length(_utf8mb4 0xD0B1), char_length(_utf8mb4 0xD0B1) as exp;
|
||||
|
||||
select 'a' like 'a';
|
||||
select 'A' like 'a';
|
||||
select 'A' like 'a' collate utf8mb4_bin;
|
||||
select _utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%');
|
||||
select _utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%') as exp;
|
||||
|
||||
# Bug #6040: can't retrieve records with umlaut
|
||||
# characters in case insensitive manner.
|
||||
# Case insensitive search LIKE comparison
|
||||
# was broken for multibyte characters:
|
||||
select convert(_latin1'G<>nter Andr<64>' using utf8mb4) like CONVERT(_latin1'G<>NTER%' USING utf8mb4);
|
||||
select CONVERT(_koi8r'<27><><EFBFBD><EFBFBD>' USING utf8mb4) LIKE CONVERT(_koi8r'<27><><EFBFBD><EFBFBD>' USING utf8mb4);
|
||||
select CONVERT(_koi8r'<27><><EFBFBD><EFBFBD>' USING utf8mb4) LIKE CONVERT(_koi8r'<27><><EFBFBD><EFBFBD>' USING utf8mb4);
|
||||
select convert(_latin1'G<>nter Andr<64>' using utf8mb4) like CONVERT(_latin1'G<>NTER%' USING utf8mb4) as exp;
|
||||
select CONVERT(_koi8r'<27><><EFBFBD><EFBFBD>' USING utf8mb4) LIKE CONVERT(_koi8r'<27><><EFBFBD><EFBFBD>' USING utf8mb4) as exp;
|
||||
select CONVERT(_koi8r'<27><><EFBFBD><EFBFBD>' USING utf8mb4) LIKE CONVERT(_koi8r'<27><><EFBFBD><EFBFBD>' USING utf8mb4) as exp;
|
||||
|
||||
#
|
||||
# Check the following:
|
||||
@ -666,6 +661,7 @@ DROP TABLE t1;
|
||||
#
|
||||
# Bug #6043 erratic searching for diacriticals in indexed MyISAM UTF-8 table
|
||||
#
|
||||
--disable_service_connection
|
||||
SET NAMES latin1;
|
||||
eval CREATE TABLE t1 (
|
||||
id int unsigned NOT NULL auto_increment,
|
||||
@ -682,6 +678,7 @@ SELECT id, term FROM t1 where (list_id = 1) AND (term = "testetest");
|
||||
SELECT id, term FROM t1 where (list_id = 1) AND (term = "test<EFBFBD>test");
|
||||
DROP TABLE t1;
|
||||
}
|
||||
--enable_service_connection
|
||||
|
||||
#
|
||||
# Bug #6019 SELECT tries to use too short prefix index on utf8mb4 data
|
||||
@ -747,10 +744,10 @@ drop table t1;
|
||||
#
|
||||
# Bug#22638 SOUNDEX broken for international characters
|
||||
#
|
||||
select soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB);
|
||||
select hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB));
|
||||
select soundex(_utf8mb4 0xD091D092D093);
|
||||
select hex(soundex(_utf8mb4 0xD091D092D093));
|
||||
select soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB) as exp;
|
||||
select hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB)) as exp;
|
||||
select soundex(_utf8mb4 0xD091D092D093) as exp;
|
||||
select hex(soundex(_utf8mb4 0xD091D092D093)) as exp;
|
||||
|
||||
|
||||
SET collation_connection='utf8mb4_general_ci';
|
||||
@ -786,7 +783,7 @@ drop table t1;
|
||||
#
|
||||
# Bug#8385: utf8mb4_general_ci treats Cyrillic letters I and SHORT I as the same
|
||||
#
|
||||
select convert(_koi8r'<27>' using utf8mb4) < convert(_koi8r'<27>' using utf8mb4);
|
||||
select convert(_koi8r'<27>' using utf8mb4) < convert(_koi8r'<27>' using utf8mb4) as exp;
|
||||
|
||||
#
|
||||
# Bugs#5980: NULL requires a characterset in a union
|
||||
@ -1191,6 +1188,7 @@ DROP TABLE t1;
|
||||
# (see bug #16674 as well)
|
||||
#
|
||||
|
||||
--disable_service_connection
|
||||
SET NAMES latin2;
|
||||
|
||||
if (!$is_heap)
|
||||
@ -1220,6 +1218,7 @@ SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLN
|
||||
|
||||
DROP TABLE t1;
|
||||
}
|
||||
--enable_service_connection
|
||||
|
||||
#
|
||||
# Bug 20709: problem with utf8mb4 fields in temporary tables
|
||||
@ -1420,8 +1419,11 @@ set names utf8mb4;
|
||||
eval create table t1 (a varchar(10) character set latin1, b int) engine $engine;
|
||||
insert into t1 values ('a',1);
|
||||
select concat(a, if(b>10, N'x', N'y')) from t1;
|
||||
#Incorrect collation in error message with view protocol
|
||||
--disable_view_protocol
|
||||
--error 1267
|
||||
select concat(a, if(b>10, N'æ', N'ß')) from t1;
|
||||
--enable_view_protocol
|
||||
drop table t1;
|
||||
|
||||
# Conversion tests for character set introducers
|
||||
|
@ -1,17 +1,15 @@
|
||||
SET SESSION character_set_connection=latin2;
|
||||
SET SESSION character_set_client=cp1250;
|
||||
|
||||
--disable_service_connection
|
||||
|
||||
--echo #
|
||||
--echo # Test litteral
|
||||
--echo #
|
||||
|
||||
#enable view protocol after fix MDEV-27871 and
|
||||
# it is necessary that the view protocol uses the same connection,
|
||||
# not util connection
|
||||
# For "--view-protocol" NULLIF('','') converts to nullif(NULL,NULL)
|
||||
# in view definition and CHARSET(nullif(NULL,NULL)) returns 'binary'.
|
||||
# Also view does not allow columns with the same name,
|
||||
# so it uses generated names
|
||||
--disable_view_protocol
|
||||
|
||||
SET sql_mode=@mode;
|
||||
select @@sql_mode;
|
||||
SELECT '',CHARSET(''), null, CHARSET(null), CAST(null as char(10)), CHARSET(CAST(null as char(10))), 'x', CHARSET('x');
|
||||
@ -21,7 +19,6 @@ SELECT '',CHARSET(''), null, CHARSET(null), CAST(null as char(10)), CHARSET(CAST
|
||||
SELECT CHARSET(NULLIF('','')),NULLIF('','');
|
||||
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Test NCHAR litteral
|
||||
--echo #
|
||||
@ -33,7 +30,6 @@ SELECT N'',CHARSET(N''), N'x', CHARSET(N'x');
|
||||
SELECT CHARSET(NULLIF(N'',N'')),NULLIF(N'',N'');
|
||||
|
||||
|
||||
|
||||
--echo #
|
||||
--echo # Test CHARSET prefix litteral
|
||||
--echo #
|
||||
@ -63,12 +59,12 @@ SELECT '' '' '';
|
||||
SELECT '' '' '',CHARSET('' '' '');
|
||||
SELECT _latin1'' '' '',CHARSET(_latin1'' '' '');
|
||||
SELECT N'' '' '',CHARSET(N'' '' '');
|
||||
|
||||
--enable_view_protocol
|
||||
|
||||
--echo #
|
||||
--echo # UNION - implicit group by
|
||||
--echo #
|
||||
--disable_service_connection
|
||||
SELECT 1, null
|
||||
UNION
|
||||
SELECT 1 , ''
|
||||
@ -84,16 +80,10 @@ UNION
|
||||
SELECT 1 , _cp1250 ''
|
||||
ORDER BY 1;
|
||||
|
||||
# it is necessary that the view protocol uses the same connection,
|
||||
# not util connection
|
||||
--disable_view_protocol
|
||||
|
||||
SELECT NULLIF(_cp1250 '',_cp1250 '')
|
||||
UNION
|
||||
SELECT NULLIF(N'',N'');
|
||||
|
||||
--enable_view_protocol
|
||||
|
||||
--error ER_CANT_AGGREGATE_2COLLATIONS
|
||||
SELECT 1 , _latin2 ''
|
||||
UNION
|
||||
@ -131,5 +121,4 @@ EXPLAIN EXTENDED SELECT '';
|
||||
EXPLAIN EXTENDED SELECT _latin1'';
|
||||
EXPLAIN EXTENDED SELECT N'';
|
||||
EXPLAIN EXTENDED SELECT '' '';
|
||||
|
||||
--enable_service_connection
|
||||
|
@ -119,28 +119,25 @@ CALL p1(-1, 'GeometryCollection(Point(9 9),LineString(1 5,0 0),Polygon((2 2,2 8,
|
||||
|
||||
--enable_query_log
|
||||
|
||||
#enable after fix MDEV-27871
|
||||
--disable_view_protocol
|
||||
SELECT ST_CONTAINS(
|
||||
GeomFromText('MULTIPOLYGON(((0 0, 0 5, 5 5, 5 0, 0 0)),((6 6, 6 11, 11 11, 11 6, 6 6)))'),
|
||||
GeomFromText('POINT(5 10)'));
|
||||
GeomFromText('POINT(5 10)')) as geom;
|
||||
SELECT AsText(ST_UNION(
|
||||
GeomFromText('MULTIPOLYGON(((0 0, 0 5, 5 5, 5 0, 0 0)),((6 6, 6 11, 11 11, 11 6, 6 6)))'),
|
||||
GeomFromText('POINT(5 10)')));
|
||||
GeomFromText('POINT(5 10)'))) as geom;
|
||||
|
||||
DROP PROCEDURE p1;
|
||||
|
||||
--echo #
|
||||
--echo # Bug #13833019 ASSERTION `T1->RESULT_RANGE' FAILED IN GCALC_OPERATION_REDUCER::END_COUPLE
|
||||
--echo #
|
||||
SELECT GeometryType(ST_BUFFER(MULTIPOLYGONFROMTEXT('MULTIPOLYGON(((0 0,9 4,3 3,0 0)),((2 2,2 2,8 8,2 3,2 2)))'), 3));
|
||||
SELECT GeometryType(ST_BUFFER(MULTIPOLYGONFROMTEXT('MULTIPOLYGON(((0 0,9 4,3 3,0 0)),((2 2,2 2,8 8,2 3,2 2)))'), 3)) as geom;
|
||||
|
||||
--echo #
|
||||
--echo # Bug #13832749 HANDLE_FATAL_SIGNAL IN GCALC_FUNCTION::COUNT_INTERNAL
|
||||
--echo #
|
||||
SELECT GeometryType(ST_BUFFER(MULTIPOLYGONFROMTEXT('MULTIPOLYGON(((3 5,2 5,2 4,3 4,3 5)),((2 2,2 8,8 8,8 2,2 2), (4 4,4 6,6 6,6 4,4 4)), ((9 9,8 1,1 5,9 9)))'),1));
|
||||
SELECT GeometryType(ST_BUFFER(MULTIPOLYGONFROMTEXT('MULTIPOLYGON(((3 5,2 5,2 4,3 4,3 5)),((2 2,2 8,8 8,8 2,2 2), (4 4,4 6,6 6,6 4,4 4)), ((9 9,8 1,1 5,9 9)))'),1)) as geom;
|
||||
|
||||
--enable_view_protocol
|
||||
|
||||
--echo #
|
||||
--echo # Bug#13358363 - ASSERTION: N > 0 && N < SINUSES_CALCULATED*2+1 | GET_N_SINCOS/ADD_EDGE_BUFFER
|
||||
@ -148,22 +145,19 @@ SELECT GeometryType(ST_BUFFER(MULTIPOLYGONFROMTEXT('MULTIPOLYGON(((3 5,2 5,2 4,3
|
||||
|
||||
DO ST_BUFFER(ST_GEOMCOLLFROMTEXT('linestring(1 1,2 2)'),'');
|
||||
|
||||
#enable after fix MDEV-27871
|
||||
--disable_view_protocol
|
||||
|
||||
SELECT ST_WITHIN(
|
||||
LINESTRINGFROMTEXT(' LINESTRING(3 8,9 2,3 8,3 3,7 6,4 7,4 7,8 1) '),
|
||||
ST_BUFFER(MULTIPOLYGONFROMTEXT(' MULTIPOLYGON(((3 5,2 5,2 4,3 4,3 5)),((2 2,2 8,8 8,8 2,2 2),(4 4,4 6,6 6,6 4,4 4)),((0 5,3 5,3 2,1 2,1 1,3 1,3 0,0 0,0 3,2 3,2 4,0 4,0 5))) '),
|
||||
ST_NUMINTERIORRINGS(POLYGONFROMTEXT('POLYGON((3 5,2 4,2 5,3 5)) '))));
|
||||
ST_NUMINTERIORRINGS(POLYGONFROMTEXT('POLYGON((3 5,2 4,2 5,3 5)) ')))) as st;
|
||||
|
||||
SELECT ST_DIMENSION(ST_BUFFER(POLYGONFROMTEXT(' POLYGON((3 5,2 5,2 4,3 4,3 5)) '),
|
||||
ST_NUMINTERIORRINGS(POLYGONFROMTEXT(' POLYGON((0 0,9 3,4 2,0 0))'))));
|
||||
ST_NUMINTERIORRINGS(POLYGONFROMTEXT(' POLYGON((0 0,9 3,4 2,0 0))')))) as st;
|
||||
|
||||
SELECT ST_NUMINTERIORRINGS(
|
||||
ST_ENVELOPE(ST_BUFFER(MULTIPOLYGONFROMTEXT('MULTIPOLYGON(((3 5,2 5,2 4,3 4,3 5))) '),
|
||||
SRID(MULTILINESTRINGFROMTEXT('MULTILINESTRING((2 2,4 2,1 2,2 4,2 2)) ')))));
|
||||
SRID(MULTILINESTRINGFROMTEXT('MULTILINESTRING((2 2,4 2,1 2,2 4,2 2)) '))))) as st;
|
||||
|
||||
SELECT ASTEXT(ST_BUFFER(POLYGONFROMTEXT(' POLYGON((9 9,5 2,4 5,9 9))'),
|
||||
SRID(GEOMETRYFROMTEXT(' MULTIPOINT(8 4,5 0,7 8,6 9,3 4,7 3,5 5) '))));
|
||||
SRID(GEOMETRYFROMTEXT(' MULTIPOINT(8 4,5 0,7 8,6 9,3 4,7 3,5 5) ')))) as st;
|
||||
|
||||
--enable_view_protocol
|
||||
|
@ -301,31 +301,28 @@ select count(*) from t0;
|
||||
|
||||
# Test for BUG#4177
|
||||
|
||||
# enable view-protocol after fix MDEV-27871
|
||||
--disable_view_protocol
|
||||
|
||||
drop table t4;
|
||||
create table t4 (a int);
|
||||
insert into t4 values (1),(4),(3);
|
||||
set @save_join_buffer_size=@@join_buffer_size;
|
||||
set join_buffer_size= 4096;
|
||||
explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
|
||||
explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5) as exp
|
||||
from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
|
||||
where (A.key1 < 500000 or A.key2 < 3)
|
||||
and (B.key1 < 500000 or B.key2 < 3);
|
||||
|
||||
select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
|
||||
select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5) as exp
|
||||
from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
|
||||
where (A.key1 < 500000 or A.key2 < 3)
|
||||
and (B.key1 < 500000 or B.key2 < 3);
|
||||
|
||||
update t0 set key1=1;
|
||||
explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
|
||||
explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5) as exp
|
||||
from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
|
||||
where (A.key1 = 1 or A.key2 = 1)
|
||||
and (B.key1 = 1 or B.key2 = 1);
|
||||
|
||||
select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
|
||||
select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5) as exp
|
||||
from t0 as A force index(i1,i2), t0 as B force index (i1,i2)
|
||||
where (A.key1 = 1 or A.key2 = 1)
|
||||
and (B.key1 = 1 or B.key2 = 1);
|
||||
@ -338,12 +335,12 @@ update t0 set key2=1, key3=1, key4=1, key5=1,key6=1,key7=1 where key7 < 500;
|
||||
# scan cost estimates depend on ha_myisam::ref_length)
|
||||
--replace_column 9 #
|
||||
--replace_result "4,4,4,4,4,4,4" X "4,4,4,4,4,4" X "i6,i7" "i6,i7?" "i6" "i6,i7?"
|
||||
explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
|
||||
explain select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5) as exp
|
||||
from t0 as A straight_join t0 as B
|
||||
where (A.key1 = 1 and A.key2 = 1 and A.key3 = 1 and A.key4=1 and A.key5=1 and A.key6=1 and A.key7 = 1 or A.key8=1)
|
||||
and (B.key1 = 1 and B.key2 = 1 and B.key3 = 1 and B.key4=1 and B.key5=1 and B.key6=1 and B.key7 = 1 or B.key8=1);
|
||||
|
||||
select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5)
|
||||
select max(A.key1 + B.key1 + A.key2 + B.key2 + A.key3 + B.key3 + A.key4 + B.key4 + A.key5 + B.key5) as exp
|
||||
from t0 as A straight_join t0 as B
|
||||
where (A.key1 = 1 and A.key2 = 1 and A.key3 = 1 and A.key4=1 and A.key5=1 and A.key6=1 and A.key7 = 1 or A.key8=1)
|
||||
and (B.key1 = 1 and B.key2 = 1 and B.key3 = 1 and B.key4=1 and B.key5=1 and B.key6=1 and B.key7 = 1 or B.key8=1);
|
||||
@ -353,8 +350,6 @@ set join_buffer_size= @save_join_buffer_size;
|
||||
|
||||
drop table t0, t1, t2, t3, t4;
|
||||
|
||||
--enable_view_protocol
|
||||
|
||||
# BUG#16166
|
||||
CREATE TABLE t1 (
|
||||
cola char(3) not null, colb char(3) not null, filler char(200),
|
||||
|
Reference in New Issue
Block a user