1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

A fix and a test case for Bug#24179 "select b into $var" fails with

--cursor_protocol": fix a misleading error message in case of
SELECT .. INTO.


sql/sql_class.cc:
  Implement select_result::check_simple_select hierarchy to 
  support correct error messages in case of SELECT .. INTO and C API 
  cursors.
sql/sql_class.h:
  Set the error message inside the function that checks for the error
  condition (simple_select, renamed to check_simple_select).
sql/sql_prepare.cc:
  Use a new method that now sets the error.
tests/mysql_client_test.c:
  Add a test case for Bug#24179 "select b into $var" fails with 
  --cursor_protocol" (check for the right error message and error code).
This commit is contained in:
unknown
2006-12-01 13:25:06 +03:00
parent 4ec847218d
commit fe84b016e1
4 changed files with 53 additions and 4 deletions

View File

@ -15456,6 +15456,33 @@ static void test_bug21635()
DBUG_VOID_RETURN;
}
/*
Bug#24179 "select b into $var" fails with --cursor_protocol"
The failure is correct, check that the returned message is meaningful.
*/
static void test_bug24179()
{
int rc;
MYSQL_STMT *stmt;
DBUG_ENTER("test_bug24179");
myheader("test_bug24179");
stmt= open_cursor("select 1 into @a");
rc= mysql_stmt_execute(stmt);
DIE_UNLESS(rc);
if (!opt_silent)
{
printf("Got error (as expected): %d %s\n",
mysql_stmt_errno(stmt),
mysql_stmt_error(stmt));
}
DIE_UNLESS(mysql_stmt_errno(stmt) == 1323);
DBUG_VOID_RETURN;
}
/*
Read and parse arguments and MySQL options from my.cnf
@ -15735,6 +15762,7 @@ static struct my_tests_st my_tests[]= {
{ "test_bug21726", test_bug21726 },
{ "test_bug23383", test_bug23383 },
{ "test_bug21635", test_bug21635 },
{ "test_bug24179", test_bug24179 },
{ 0, 0 }
};