mirror of
https://github.com/MariaDB/server.git
synced 2025-08-01 03:47:19 +03:00
A fix and a test case for Bug#6513 "Test Suite: Values inserted by using
cursor is interpreted latin1 character and Bug#9819 "Cursors: Mysql Server Crash while fetching from table with 5 million records." A fix for a possible memory leak when fetching into an SP cursor in a long loop. The patch uses a common implementation of cursors in the binary protocol and in stored procedures and implements materialized cursors. For implementation details, see comments in sql_cursor.cc
This commit is contained in:
@ -432,10 +432,6 @@ public:
|
||||
{
|
||||
return my_reinterpret_cast(st_select_lex*)(slave);
|
||||
}
|
||||
st_select_lex* first_select_in_union()
|
||||
{
|
||||
return my_reinterpret_cast(st_select_lex*)(slave);
|
||||
}
|
||||
st_select_lex_unit* next_unit()
|
||||
{
|
||||
return my_reinterpret_cast(st_select_lex_unit*)(next);
|
||||
@ -445,8 +441,7 @@ public:
|
||||
void exclude_tree();
|
||||
|
||||
/* UNION methods */
|
||||
bool prepare(THD *thd, select_result *result, ulong additional_options,
|
||||
const char *tmp_table_alias);
|
||||
bool prepare(THD *thd, select_result *result, ulong additional_options);
|
||||
bool exec();
|
||||
bool cleanup();
|
||||
inline void unclean() { cleaned= 0; }
|
||||
@ -462,7 +457,10 @@ public:
|
||||
|
||||
friend void lex_start(THD *thd, uchar *buf, uint length);
|
||||
friend int subselect_union_engine::exec();
|
||||
|
||||
List<Item> *get_unit_column_types();
|
||||
};
|
||||
|
||||
typedef class st_select_lex_unit SELECT_LEX_UNIT;
|
||||
|
||||
/*
|
||||
|
Reference in New Issue
Block a user