Commit 5384fbc0 authored by bell@sanja.is.com.ua's avatar bell@sanja.is.com.ua

Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1

into sanja.is.com.ua:/home/bell/mysql/bk/work-union-4.1
parents 216c3a3b 7defcb47
......@@ -367,7 +367,7 @@ JOIN::prepare(Item ***rref_pointer_array,
{
if (item->with_sum_func)
flag|=1;
else if (!(flag & 2) && !item->const_item())
else if (!(flag & 2) && !item->const_during_execution())
flag|=2;
}
if (flag == 3)
......
......@@ -9453,7 +9453,6 @@ select col1 FROM t1 where col1=2");
myquery(rc);
}
/*
This tests for various mysql_send_long_data bugs described in #1664
*/
......@@ -9595,6 +9594,51 @@ static void test_bug1664()
myquery(rc);
}
static void test_order_param()
{
MYSQL_STMT *stmt;
int rc;
myheader("test_order_param");
rc= mysql_query(mysql, "DROP TABLE IF EXISTS t1");
myquery(rc);
rc= mysql_query(mysql,"CREATE TABLE t1(a INT, b char(10))");
myquery(rc);
stmt= mysql_simple_prepare(mysql,
"select sum(a) + 200, 1 from t1 \
union distinct \
select sum(a) + 200, 1 from t1 \
group by b ");
check_stmt(stmt);
mysql_stmt_close(stmt);
stmt= mysql_simple_prepare(mysql,
"select sum(a) + 200, ? from t1 \
group by b \
union distinct \
select sum(a) + 200, 1 from t1 \
group by b ");
check_stmt(stmt);
stmt= mysql_simple_prepare(mysql,
"select sum(a) + 200, ? from t1 \
union distinct \
select sum(a) + 200, 1 from t1 \
group by b ");
check_stmt(stmt);
mysql_stmt_close(stmt);
rc= mysql_query(mysql, "DROP TABLE t1");
myquery(rc);
}
/*
Read and parse arguments and MySQL options from my.cnf
*/
......@@ -9877,6 +9921,8 @@ int main(int argc, char **argv)
test_union2(); /* repeatable execution of union (Bug #3577) */
test_bug1664(); /* test for bugs in mysql_stmt_send_long_data()
call (Bug #1664) */
test_order_param(); /* ORDER BY with parameters in select list
(Bug #3686 */
end_time= time((time_t *)0);
total_time+= difftime(end_time, start_time);
......
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