mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Merge bk-internal:/home/bk/mysql-5.0-maint
into pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
This commit is contained in:
@ -557,6 +557,12 @@ a b c
|
||||
2 Part 2 2007-04-05 00:00:00
|
||||
2 Part 3 2007-04-05 00:00:00
|
||||
select * from t1;
|
||||
a b c
|
||||
1 Line 1 2007-04-05 00:00:00
|
||||
2 Part 2 2007-04-05 00:00:00
|
||||
1 Line 1 2007-04-05 00:00:00
|
||||
2 Part 3 2007-04-05 00:00:00
|
||||
select * from t1;
|
||||
select '';
|
||||
|
||||
|
||||
@ -572,4 +578,92 @@ hep
|
||||
select "hepp";
|
||||
hepp
|
||||
hepp
|
||||
drop table t1;
|
||||
SELECT 2 as "my_col"
|
||||
UNION
|
||||
SELECT 1;
|
||||
my_col
|
||||
1
|
||||
2
|
||||
SELECT 2 as "my_col" UNION SELECT 1;
|
||||
my_col
|
||||
1
|
||||
2
|
||||
SELECT 2 as "my_col"
|
||||
UNION
|
||||
SELECT 1;
|
||||
my_col
|
||||
1
|
||||
2
|
||||
SELECT '2' as "3"
|
||||
UNION
|
||||
SELECT '1';
|
||||
3
|
||||
1
|
||||
2
|
||||
CREATE TABLE t1( a CHAR);
|
||||
SELECT * FROM t1;
|
||||
a
|
||||
DROP TABLE t1;
|
||||
SELECT NULL as "my_col1",2 AS "my_col2"
|
||||
UNION
|
||||
SELECT NULL,1;
|
||||
my_col1 my_col2
|
||||
NULL 2
|
||||
NULL 1
|
||||
SELECT NULL as "my_col1",2 AS "my_col2"
|
||||
UNION
|
||||
SELECT NULL,1;
|
||||
my_col1 my_col2
|
||||
NULL 1
|
||||
NULL 2
|
||||
SELECT 2 as "my_col1",NULL AS "my_col2"
|
||||
UNION
|
||||
SELECT 1,NULL;
|
||||
my_col1 my_col2
|
||||
2 NULL
|
||||
1 NULL
|
||||
SELECT 2 as "my_col1",NULL AS "my_col2"
|
||||
UNION
|
||||
SELECT 1,NULL;
|
||||
my_col1 my_col2
|
||||
1 NULL
|
||||
2 NULL
|
||||
SET @a = 17;
|
||||
SELECT 2 as "my_col"
|
||||
UNION
|
||||
SELECT 1;
|
||||
my_col
|
||||
2
|
||||
1
|
||||
SELECT 2 as "my_col"
|
||||
UNION
|
||||
SELECT 1;
|
||||
my_col
|
||||
1
|
||||
2
|
||||
SELECT '2' as "my_col1",2 as "my_col2"
|
||||
UNION
|
||||
SELECT '1',1 from t2;
|
||||
ERROR 42S02: Table 'test.t2' doesn't exist
|
||||
SELECT '1' as "my_col1",2 as "my_col2"
|
||||
UNION
|
||||
SELECT '2',1;
|
||||
my_col1 my_col2
|
||||
# 1
|
||||
# 2
|
||||
CREATE TABLE t1 (f1 INT);
|
||||
INSERT INTO t1 SET f1 = 1024;
|
||||
INSERT INTO t1 SELECT f1 - 1 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 2 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 4 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 8 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 16 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 32 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 64 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 128 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 256 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 512 FROM t1;
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
End of tests
|
||||
|
@ -1740,23 +1740,130 @@ EOF
|
||||
--exec echo "echo Some output; exit; echo Not this;" | $MYSQL_TEST 2>&1
|
||||
|
||||
# ----------------------------------------------------------------------------
|
||||
# test for query_sorted
|
||||
# test for sorted_result
|
||||
# ----------------------------------------------------------------------------
|
||||
|
||||
create table t1( a int, b char(255), c timestamp);
|
||||
insert into t1 values(1, 'Line 1', '2007-04-05'), (2, "Part 2", '2007-04-05');
|
||||
insert into t1 values(1, 'Line 1', '2007-04-05'), (2, "Part 3", '2007-04-05');
|
||||
select * from t1;
|
||||
query_sorted select * from t1;
|
||||
--sorted_result
|
||||
select * from t1;
|
||||
# Should not be sorted
|
||||
select * from t1;
|
||||
disable_result_log;
|
||||
query_sorted select * from t1;
|
||||
sorted_result;
|
||||
select * from t1;
|
||||
enable_result_log;
|
||||
query_sorted select '';
|
||||
query_sorted select "h";
|
||||
query_sorted select "he";
|
||||
query_sorted select "hep";
|
||||
query_sorted select "hepp";
|
||||
--sorted_result
|
||||
select '';
|
||||
sorted_result;
|
||||
select "h";
|
||||
--sorted_result
|
||||
select "he";
|
||||
--sorted_result
|
||||
select "hep";
|
||||
--sorted_result
|
||||
select "hepp";
|
||||
|
||||
drop table t1;
|
||||
|
||||
# 1. Assignment of result set sorting
|
||||
sorted_result;
|
||||
SELECT 2 as "my_col"
|
||||
UNION
|
||||
SELECT 1;
|
||||
#
|
||||
--sorted_result
|
||||
SELECT 2 as "my_col" UNION SELECT 1;
|
||||
--sorted_result
|
||||
SELECT 2 as "my_col"
|
||||
UNION
|
||||
SELECT 1;
|
||||
|
||||
# 2. Ensure that the table header will be not sorted into the result
|
||||
--sorted_result
|
||||
SELECT '2' as "3"
|
||||
UNION
|
||||
SELECT '1';
|
||||
|
||||
# 3. Ensure that an empty result set does not cause problems
|
||||
CREATE TABLE t1( a CHAR);
|
||||
--sorted_result
|
||||
SELECT * FROM t1;
|
||||
DROP TABLE t1;
|
||||
|
||||
# 4. Ensure that NULL values within the result set do not cause problems
|
||||
SELECT NULL as "my_col1",2 AS "my_col2"
|
||||
UNION
|
||||
SELECT NULL,1;
|
||||
--sorted_result
|
||||
SELECT NULL as "my_col1",2 AS "my_col2"
|
||||
UNION
|
||||
SELECT NULL,1;
|
||||
#
|
||||
SELECT 2 as "my_col1",NULL AS "my_col2"
|
||||
UNION
|
||||
SELECT 1,NULL;
|
||||
--sorted_result
|
||||
SELECT 2 as "my_col1",NULL AS "my_col2"
|
||||
UNION
|
||||
SELECT 1,NULL;
|
||||
|
||||
# 5. "sorted_result" changes nothing when applied to a non query statement.
|
||||
sorted_result;
|
||||
SET @a = 17;
|
||||
#
|
||||
# 6. Show that "sorted_result;" before the "SET @a = 17;" above does not affect
|
||||
# the now following query.
|
||||
SELECT 2 as "my_col"
|
||||
UNION
|
||||
SELECT 1;
|
||||
|
||||
# 7. Ensure that "sorted_result" in combination with $variables works
|
||||
let $my_stmt=SELECT 2 as "my_col"
|
||||
UNION
|
||||
SELECT 1;
|
||||
--sorted_result
|
||||
eval $my_stmt;
|
||||
|
||||
# 8. Ensure that "sorted_result " does not change the semantics of
|
||||
# "--error ...." or the protocol output after such an expected failure
|
||||
--sorted_result
|
||||
--error 1146
|
||||
SELECT '2' as "my_col1",2 as "my_col2"
|
||||
UNION
|
||||
SELECT '1',1 from t2;
|
||||
|
||||
# 9. Ensure that several result formatting options including "sorted_result"
|
||||
# - have all an effect
|
||||
# - "--sorted_result" does not need to be direct before the statement
|
||||
# - Row sorting is applied after modification of the column content
|
||||
--sorted_result
|
||||
--replace_column 1 #
|
||||
SELECT '1' as "my_col1",2 as "my_col2"
|
||||
UNION
|
||||
SELECT '2',1;
|
||||
|
||||
# 10. Ensure that at least 1024 rows within a result set do not cause problems
|
||||
#
|
||||
CREATE TABLE t1 (f1 INT);
|
||||
INSERT INTO t1 SET f1 = 1024;
|
||||
INSERT INTO t1 SELECT f1 - 1 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 2 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 4 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 8 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 16 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 32 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 64 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 128 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 256 FROM t1;
|
||||
INSERT INTO t1 SELECT f1 - 512 FROM t1;
|
||||
--disable_result_log
|
||||
--sorted_result
|
||||
SELECT * FROM t1;
|
||||
--enable_result_log
|
||||
DROP TABLE t1;
|
||||
# ----------------------------------------------------------------------------
|
||||
# Some coverage tests
|
||||
# ----------------------------------------------------------------------------
|
||||
|
Reference in New Issue
Block a user