diff options
author | Igor Babaev <igor@askmonty.org> | 2012-08-13 21:13:14 -0700 |
---|---|---|
committer | Igor Babaev <igor@askmonty.org> | 2012-08-13 21:13:14 -0700 |
commit | d07b179fd2397bd78dd4f9ba7c54dda38fc1ce8c (patch) | |
tree | df4f18728b18f3b47d9dabe78ee96138422fc82f /mysql-test/t/order_by.test | |
parent | 4f3674c8c024791d95db7319db5ea089ff76fc69 (diff) | |
download | mariadb-git-d07b179fd2397bd78dd4f9ba7c54dda38fc1ce8c.tar.gz |
Fixed bug mdev-449.
The bug could caused a crash when the server executed a query with
ORDER by and sort_buffer_size was set to a small enough number.
It happened because the small sort buffer did not allow to allocate
all merge buffers in it.
Made sure that the allocated sort buffer would be big enough
to contain all possible merge buffers.
Diffstat (limited to 'mysql-test/t/order_by.test')
-rw-r--r-- | mysql-test/t/order_by.test | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/mysql-test/t/order_by.test b/mysql-test/t/order_by.test index 425bef6c679..1d81248b81e 100644 --- a/mysql-test/t/order_by.test +++ b/mysql-test/t/order_by.test @@ -1589,3 +1589,42 @@ SELECT t2.b FROM t1, t2 WHERE t1.b = t2.a GROUP BY t2.b ORDER BY t1.b; drop table t1,t2; --echo End of 5.2 tests + +--echo # +--echo # Bug mdev-449: ORDER BY with small sort_buffer_size +--echo # + +CREATE TABLE t1(f0 int auto_increment primary key, f1 int, f2 varchar(200)); +INSERT INTO t1(f1, f2) VALUES +(0,"0"),(1,"1"),(2,"2"),(3,"3"),(4,"4"),(5,"5"), +(6,"6"),(7,"7"),(8,"8"),(9,"9"),(10,"10"), +(11,"11"),(12,"12"),(13,"13"),(14,"14"),(15,"15"), +(16,"16"),(17,"17"),(18,"18"),(19,"19"),(20,"20"), +(21,"21"),(22,"22"),(23,"23"),(24,"24"),(25,"25"), +(26,"26"),(27,"27"),(28,"28"),(29,"29"),(30,"30"), +(31,"31"),(32,"32"),(33,"33"),(34,"34"),(35,"35"), +(36,"36"),(37,"37"),(38,"38"),(39,"39"),(40,"40"), +(41,"41"),(42,"42"),(43,"43"),(44,"44"),(45,"45"), +(46,"46"),(47,"47"),(48,"48"),(49,"49"),(50,"50"), +(51,"51"),(52,"52"),(53,"53"),(54,"54"),(55,"55"), +(56,"56"),(57,"57"),(58,"58"),(59,"59"),(60,"60"), +(61,"61"),(62,"62"),(63,"63"),(64,"64"),(65,"65"), +(66,"66"),(67,"67"),(68,"68"),(69,"69"),(70,"70"), +(71,"71"),(72,"72"),(73,"73"),(74,"74"),(75,"75"), +(76,"76"),(77,"77"),(78,"78"),(79,"79"),(80,"80"), +(81,"81"),(82,"82"),(83,"83"),(84,"84"),(85,"85"), +(86,"86"),(87,"87"),(88,"88"),(89,"89"),(90,"90"), +(91,"91"),(92,"92"),(93,"93"),(94,"94"),(95,"95"), +(96,"96"),(97,"97"),(98,"98"),(99,"99"); + +set @save_sort_buffer_size= @@sort_buffer_size; +set sort_buffer_size= 2000; + +SELECT * FROM t1 ORDER BY f1 DESC, f0; + +set sort_buffer_size= @save_sort_buffer_size; + +DROP TABLE t1; + +--echo End of 5.3 tests + |