~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/statement/analyze.cc

Refactor

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
#include <drizzled/session.h>
24
24
#include <drizzled/statement/analyze.h>
25
25
#include <drizzled/sql_table.h>
 
26
#include <drizzled/sql_lex.h>
26
27
 
27
28
namespace drizzled
28
29
{
29
30
 
30
31
bool statement::Analyze::execute()
31
32
{
32
 
  TableList *first_table= (TableList *) getSession()->getLex()->select_lex.table_list.first;
33
 
  TableList *all_tables= getSession()->getLex()->query_tables;
 
33
  TableList *first_table= (TableList *) lex().select_lex.table_list.first;
 
34
  TableList *all_tables= lex().query_tables;
34
35
  assert(first_table == all_tables && first_table != 0);
35
 
  Select_Lex *select_lex= &getSession()->getLex()->select_lex;
36
 
  bool res= analyze_table(getSession(), first_table, &check_opt);
37
 
  /* ! we write after unlocking the table */
38
 
  write_bin_log(getSession(), *getSession()->getQueryString());
 
36
  Select_Lex *select_lex= &lex().select_lex;
 
37
  bool res= analyze_table(&session(), first_table, &check_opt);
39
38
  select_lex->table_list.first= (unsigned char*) first_table;
40
 
  getSession()->getLex()->query_tables= all_tables;
 
39
  lex().query_tables= all_tables;
41
40
 
42
41
  return res;
43
42
}