~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/sql_class.cc

  • Committer: Brian Aker
  • Date: 2008-09-25 19:17:06 UTC
  • Revision ID: brian@tangent.org-20080925191706-97btriiynfeold91
Cleanup around Query_arena.

Show diffs side-by-side

added added

removed removed

Lines of Context:
399
399
 
400
400
 
401
401
THD::THD()
402
 
   :Statement(&main_lex, &main_mem_root, CONVENTIONAL_EXECUTION,
 
402
   :Statement(&main_lex, &main_mem_root,
403
403
              /* statement id */ 0),
404
404
   Open_tables_state(refresh_version), rli_fake(0),
405
405
   lock_id(&main_lock_id),
1979
1979
  Statement functions
1980
1980
*/
1981
1981
 
1982
 
Statement::Statement(LEX *lex_arg, MEM_ROOT *mem_root_arg,
1983
 
                     enum enum_state state_arg, ulong id_arg)
1984
 
  :Query_arena(mem_root_arg, state_arg),
 
1982
Statement::Statement(LEX *lex_arg, MEM_ROOT *mem_root_arg, ulong id_arg)
 
1983
  :Query_arena(mem_root_arg),
1985
1984
  id(id_arg),
1986
1985
  mark_used_columns(MARK_COLUMNS_READ),
1987
1986
  lex(lex_arg),
1994
1993
}
1995
1994
 
1996
1995
 
1997
 
void Statement::set_statement(Statement *stmt)
1998
 
{
1999
 
  id=             stmt->id;
2000
 
  mark_used_columns=   stmt->mark_used_columns;
2001
 
  lex=            stmt->lex;
2002
 
  query=          stmt->query;
2003
 
  query_length=   stmt->query_length;
2004
 
}
2005
 
 
2006
 
 
 
1996
/*
 
1997
  Don't free mem_root, as mem_root is freed in the end of dispatch_command
 
1998
  (once for any command).
 
1999
*/
2007
2000
void THD::end_statement()
2008
2001
{
2009
2002
  /* Cleanup SQL processing state to reuse this statement in next query. */
2010
2003
  lex_end(lex);
2011
 
  delete lex->result;
2012
 
  lex->result= 0;
2013
 
  /* Note that free_list is freed in cleanup_after_query() */
2014
 
 
2015
 
  /*
2016
 
    Don't free mem_root, as mem_root is freed in the end of dispatch_command
2017
 
    (once for any command).
2018
 
  */
2019
2004
}
2020
2005
 
2021
2006