~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/sql_parse.cc

Merged in plugin-slot-reorg patches.

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
#define DRIZZLE_LEX 1
17
17
#include <drizzled/server_includes.h>
18
18
#include <mysys/hash.h>
19
 
#include <drizzled/logging.h>
20
19
#include <drizzled/db.h>
21
20
#include <drizzled/error.h>
22
21
#include <drizzled/nested_join.h>
25
24
#include <drizzled/data_home.h>
26
25
#include <drizzled/sql_base.h>
27
26
#include <drizzled/show.h>
28
 
#include <drizzled/info_schema.h>
 
27
#include <drizzled/plugin/info_schema.h>
29
28
#include <drizzled/function/time/unix_timestamp.h>
30
29
#include <drizzled/function/get_system_var.h>
31
30
#include <drizzled/item/cmpfunc.h>
36
35
#include <drizzled/select_send.h>
37
36
#include <drizzled/statement.h>
38
37
 
 
38
#include "drizzled/plugin/registry.h"
 
39
 
39
40
#include <bitset>
40
41
#include <algorithm>
41
42
 
 
43
using namespace drizzled;
42
44
using namespace std;
43
45
 
44
46
/* Prototypes */
165
167
{
166
168
  bool error= 0;
167
169
  Query_id &query_id= Query_id::get_query_id();
 
170
  plugin::Registry &plugins= plugin::Registry::singleton();
168
171
 
169
172
  session->command=command;
170
173
  session->lex->sql_command= SQLCOM_END; /* to avoid confusing VIEW detectors */
183
186
 
184
187
  /* TODO: set session->lex->sql_command to SQLCOM_END here */
185
188
 
186
 
  logging_pre_do(session);
 
189
  plugins.logging.pre_do(session);
187
190
 
188
191
  session->server_status&=
189
192
           ~(SERVER_QUERY_NO_INDEX_USED | SERVER_QUERY_NO_GOOD_INDEX_USED);
291
294
  /* Free tables */
292
295
  session->close_thread_tables();
293
296
 
294
 
  logging_post_do(session);
 
297
  plugins.logging.post_do(session);
295
298
 
296
299
  /* Store temp state for processlist */
297
300
  session->set_proc_info("cleaning up");
967
970
  if (!ptr->derived && !my_strcasecmp(system_charset_info, ptr->db,
968
971
                                      INFORMATION_SCHEMA_NAME.c_str()))
969
972
  {
970
 
    InfoSchemaTable *schema_table= find_schema_table(ptr->table_name);
 
973
    plugin::InfoSchema *schema_table= find_schema_table(ptr->table_name);
971
974
    if (!schema_table ||
972
975
        (schema_table->isHidden() &&
973
976
         ((sql_command_flags[lex->sql_command].test(CF_BIT_STATUS_COMMAND)) == 0 ||