Commit 5b0ec870 authored by unknown's avatar unknown

Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt

into  magare.gmz:/home/kgeorge/mysql/autopush/B27530-5.0-opt

parents 09db4976 8fe487be
...@@ -1992,4 +1992,73 @@ abc ...@@ -1992,4 +1992,73 @@ abc
SELECT INSERT('abc', 6, 3, '1234'); SELECT INSERT('abc', 6, 3, '1234');
INSERT('abc', 6, 3, '1234') INSERT('abc', 6, 3, '1234')
abc abc
CREATE TABLE t1 (a INT);
CREATE VIEW v1 AS SELECT CRC32(a) AS C FROM t1;
INSERT INTO t1 VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
SELECT CRC32(a), COUNT(*) FROM t1 GROUP BY 1;
CRC32(a) COUNT(*)
450215437 1
498629140 1
1790921346 1
1842515611 1
2212294583 1
2226203566 1
2366072709 1
2707236321 1
4088798008 1
4194326291 1
SELECT CRC32(a), COUNT(*) FROM t1 GROUP BY 1 ORDER BY 1;
CRC32(a) COUNT(*)
450215437 1
498629140 1
1790921346 1
1842515611 1
2212294583 1
2226203566 1
2366072709 1
2707236321 1
4088798008 1
4194326291 1
SELECT * FROM (SELECT CRC32(a) FROM t1) t2;
CRC32(a)
2212294583
450215437
1842515611
4088798008
2226203566
498629140
1790921346
4194326291
2366072709
2707236321
CREATE TABLE t2 SELECT CRC32(a) FROM t1;
desc t2;
Field Type Null Key Default Extra
CRC32(a) int(10) unsigned YES NULL
SELECT * FROM v1;
C
2212294583
450215437
1842515611
4088798008
2226203566
498629140
1790921346
4194326291
2366072709
2707236321
SELECT * FROM (SELECT * FROM v1) x;
C
2212294583
450215437
1842515611
4088798008
2226203566
498629140
1790921346
4194326291
2366072709
2707236321
DROP TABLE t1, t2;
DROP VIEW v1;
End of 5.0 tests End of 5.0 tests
...@@ -1058,4 +1058,22 @@ SELECT INSERT('abc', 4, 3, '1234'); ...@@ -1058,4 +1058,22 @@ SELECT INSERT('abc', 4, 3, '1234');
SELECT INSERT('abc', 5, 3, '1234'); SELECT INSERT('abc', 5, 3, '1234');
SELECT INSERT('abc', 6, 3, '1234'); SELECT INSERT('abc', 6, 3, '1234');
#
# Bug #27530: Grouping on crc32, or create table select crc32
#
CREATE TABLE t1 (a INT);
CREATE VIEW v1 AS SELECT CRC32(a) AS C FROM t1;
INSERT INTO t1 VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
SELECT CRC32(a), COUNT(*) FROM t1 GROUP BY 1;
SELECT CRC32(a), COUNT(*) FROM t1 GROUP BY 1 ORDER BY 1;
SELECT * FROM (SELECT CRC32(a) FROM t1) t2;
CREATE TABLE t2 SELECT CRC32(a) FROM t1;
desc t2;
SELECT * FROM v1;
SELECT * FROM (SELECT * FROM v1) x;
DROP TABLE t1, t2;
DROP VIEW v1;
--echo End of 5.0 tests --echo End of 5.0 tests
...@@ -790,7 +790,7 @@ class Item_func_crc32 :public Item_int_func ...@@ -790,7 +790,7 @@ class Item_func_crc32 :public Item_int_func
{ {
String value; String value;
public: public:
Item_func_crc32(Item *a) :Item_int_func(a) {} Item_func_crc32(Item *a) :Item_int_func(a) { unsigned_flag= 1; }
const char *func_name() const { return "crc32"; } const char *func_name() const { return "crc32"; }
void fix_length_and_dec() { max_length=10; } void fix_length_and_dec() { max_length=10; }
longlong val_int(); longlong val_int();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment