1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-01 03:47:19 +03:00

after review changes

This commit is contained in:
bell@sanja.is.com.ua
2004-02-20 16:24:03 +02:00
parent 8a442c4e0d
commit c6c1efba7e
2 changed files with 19 additions and 28 deletions

View File

@ -911,7 +911,7 @@ public:
inline CHARSET_INFO *charset() { return variables.character_set_client; }
void update_charset();
inline void ps_setup_prepare_memory()
inline void allocate_temporary_memory_pool_for_ps_preparing()
{
DBUG_ASSERT(current_statement!=0);
/*
@ -928,7 +928,7 @@ public:
variables.query_prealloc_size);
free_list= 0;
}
inline void ps_setup_free_memory()
inline void free_temporary_memory_pool_for_ps_preparing()
{
DBUG_ASSERT(current_statement!=0);
cleanup_items(current_statement->free_list);

View File

@ -626,10 +626,10 @@ static bool mysql_test_insert_fields(Prepared_statement *stmt,
open temporary memory pool for temporary data allocated by derived
tables & preparation procedure
*/
thd->ps_setup_prepare_memory();
thd->allocate_temporary_memory_pool_for_ps_preparing();
if (open_and_lock_tables(thd, table_list))
{
thd->ps_setup_free_memory();
thd->free_temporary_memory_pool_for_ps_preparing();
DBUG_RETURN(1);
}
@ -642,11 +642,10 @@ static bool mysql_test_insert_fields(Prepared_statement *stmt,
if (check_insert_fields(thd,table,fields,*values,1))
{
thd->ps_setup_free_memory();
thd->free_temporary_memory_pool_for_ps_preparing();
DBUG_RETURN(1);
}
// this memory pool was opened in open_and_lock_tables
thd->ps_setup_free_memory();
thd->free_temporary_memory_pool_for_ps_preparing();
value_count= values->elements;
its.rewind();
@ -665,8 +664,7 @@ static bool mysql_test_insert_fields(Prepared_statement *stmt,
}
else
{
// this memory pool was opened in open_and_lock_tables
thd->ps_setup_free_memory();
thd->free_temporary_memory_pool_for_ps_preparing();
}
if (send_prep_stmt(stmt, 0))
DBUG_RETURN(1);
@ -702,24 +700,16 @@ static bool mysql_test_upd_fields(Prepared_statement *stmt,
open temporary memory pool for temporary data allocated by derived
tables & preparation procedure
*/
thd->ps_setup_prepare_memory();
if (open_and_lock_tables(thd, table_list))
{
// this memory pool was opened in open_and_lock_tables
thd->ps_setup_free_memory();
DBUG_RETURN(1);
}
thd->allocate_temporary_memory_pool_for_ps_preparing();
if (open_and_lock_tables(thd, table_list))
goto err;
if (setup_tables(table_list) ||
setup_fields(thd, 0, table_list, fields, 1, 0, 0) ||
setup_conds(thd, table_list, &conds) || thd->net.report_error)
{
// this memory pool was opened in open_and_lock_tables
thd->ps_setup_free_memory();
DBUG_RETURN(1);
}
// this memory pool was opened in open_and_lock_tables
thd->ps_setup_free_memory();
goto err;
thd->free_temporary_memory_pool_for_ps_preparing();
/*
Currently return only column list info only, and we are not
@ -728,6 +718,9 @@ static bool mysql_test_upd_fields(Prepared_statement *stmt,
if (send_prep_stmt(stmt, 0))
DBUG_RETURN(1);
DBUG_RETURN(0);
err:
thd->free_temporary_memory_pool_for_ps_preparing();
DBUG_RETURN(1);
}
/*
@ -777,7 +770,7 @@ static bool mysql_test_select_fields(Prepared_statement *stmt,
open temporary memory pool for temporary data allocated by derived
tables & preparation procedure
*/
thd->ps_setup_prepare_memory();
thd->allocate_temporary_memory_pool_for_ps_preparing();
if (open_and_lock_tables(thd, tables))
goto err;
@ -809,15 +802,13 @@ static bool mysql_test_select_fields(Prepared_statement *stmt,
unit->cleanup();
}
// this memory pool was opened in open_and_lock_tables
thd->ps_setup_free_memory();
thd->free_temporary_memory_pool_for_ps_preparing();
DBUG_RETURN(0);
err_prep:
unit->cleanup();
err:
// this memory pool was opened in open_and_lock_tables
thd->ps_setup_free_memory();
thd->free_temporary_memory_pool_for_ps_preparing();
DBUG_RETURN(1);
}