Commit e5ccb1cc authored by tomas@mc05.(none)'s avatar tomas@mc05.(none)

Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1

into mc05.(none):/space/tomas/mysql-4.1-ndb
parents 77f9069c de464333
......@@ -294,7 +294,7 @@ executeTest 'testScan -n ScanUpdate2' T6
executeTest 'drop_tab' T6
executeTest 'testScan -n ScanDelete'
executeTest 'drop_all_tab'
executeTest 'drop_all_tabs'
executeTest 'testScan -n ScanDelete2' T10
executeTest 'drop_tab' T10
......
......@@ -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