~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/session.h

  • Committer: Brian Aker
  • Date: 2011-02-14 06:32:03 UTC
  • mfrom: (2154.2.24 drizzle-build)
  • Revision ID: brian@tangent.org-20110214063203-vp3rlbednkovtegj
Merge in the last of the header fixes.

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
#ifndef DRIZZLED_SESSION_H
21
21
#define DRIZZLED_SESSION_H
22
22
 
23
 
#include "drizzled/cursor.h"
24
 
#include "drizzled/diagnostics_area.h"
25
 
#include "drizzled/file_exchange.h"
26
 
#include "drizzled/identifier.h"
27
 
#include "drizzled/internal_error_handler.h"
28
 
#include "drizzled/my_hash.h"
29
 
#include "drizzled/named_savepoint.h"
30
 
#include "drizzled/open_tables_state.h"
31
 
#include "drizzled/plugin.h"
32
 
#include "drizzled/plugin/authorization.h"
33
 
#include "drizzled/pthread_globals.h"
34
 
#include "drizzled/query_id.h"
35
 
#include "drizzled/resource_context.h"
36
 
#include "drizzled/select_result_interceptor.h"
37
 
#include "drizzled/sql_error.h"
38
 
#include "drizzled/sql_locale.h"
39
 
#include "drizzled/statistics_variables.h"
40
 
#include "drizzled/transaction_context.h"
41
 
#include "drizzled/util/storable.h"
42
 
#include "drizzled/xid.h"
 
23
#include <drizzled/cursor.h>
 
24
#include <drizzled/diagnostics_area.h>
 
25
#include <drizzled/file_exchange.h>
 
26
#include <drizzled/identifier.h>
 
27
#include <drizzled/lex_column.h>
 
28
#include <drizzled/my_hash.h>
 
29
#include <drizzled/named_savepoint.h>
 
30
#include <drizzled/open_tables_state.h>
 
31
#include <drizzled/plugin.h>
 
32
#include <drizzled/plugin/authorization.h>
 
33
#include <drizzled/pthread_globals.h>
 
34
#include <drizzled/query_id.h>
 
35
#include <drizzled/resource_context.h>
 
36
#include <drizzled/sql_error.h>
 
37
#include <drizzled/sql_lex.h>
 
38
#include <drizzled/sql_locale.h>
 
39
#include <drizzled/statistics_variables.h>
 
40
#include <drizzled/table_ident.h>
 
41
#include <drizzled/transaction_context.h>
 
42
#include <drizzled/util/storable.h>
 
43
#include <drizzled/var.h>
43
44
 
44
45
 
45
46
#include <netdb.h>
51
52
#include <map>
52
53
#include <string>
53
54
 
54
 
#include "drizzled/catalog/instance.h"
55
 
#include "drizzled/catalog/local.h"
 
55
#include <drizzled/catalog/instance.h>
 
56
#include <drizzled/catalog/local.h>
56
57
 
 
58
#include <drizzled/copy_info.h>
 
59
#include <drizzled/ha_data.h>
57
60
#include <drizzled/session/property_map.h>
58
61
#include <drizzled/session/state.h>
59
62
#include <drizzled/session/table_messages.h>
60
63
#include <drizzled/session/transactions.h>
61
64
#include <drizzled/system_variables.h>
62
 
#include <drizzled/copy_info.h>
63
65
#include <drizzled/system_variables.h>
64
 
#include <drizzled/ha_data.h>
65
66
 
66
67
#include <boost/thread/thread.hpp>
67
68
#include <boost/thread/mutex.hpp>
69
70
#include <boost/thread/condition_variable.hpp>
70
71
#include <boost/make_shared.hpp>
71
72
 
72
 
#include <drizzled/lex_column.h>
73
 
#include "drizzled/sql_lex.h"
74
 
 
75
73
#include "drizzled/visibility.h"
76
74
 
77
75
#define MIN_HANDSHAKE_SIZE      6
94
92
}
95
93
 
96
94
namespace internal { struct st_my_thread_var; }
97
 
 
98
95
namespace table { class Placeholder; }
99
96
 
 
97
class CopyField;
 
98
class DrizzleXid;
 
99
class Internal_error_handler;
100
100
class Lex_input_stream;
 
101
class TableShareInstance;
 
102
class Table_ident;
 
103
class Time_zone;
 
104
class select_result;
101
105
class user_var_entry;
102
 
class CopyField;
103
 
class Table_ident;
104
 
 
105
 
class TableShareInstance;
106
106
 
107
107
extern char internal_table_name[2];
108
108
extern char empty_c_string[1];
112
112
#define TC_HEURISTIC_RECOVER_ROLLBACK 2
113
113
extern uint32_t tc_heuristic_recover;
114
114
 
115
 
class select_result;
116
 
class Time_zone;
117
 
 
118
115
#define Session_SENTRY_MAGIC 0xfeedd1ff
119
116
#define Session_SENTRY_GONE  0xdeadbeef
120
117
 
1631
1628
    return global_system_variables.storage_engine;
1632
1629
  }
1633
1630
 
1634
 
  void get_xid(DRIZZLE_XID *xid); // Innodb only
 
1631
  void get_xid(DrizzleXid *xid); // Innodb only
1635
1632
 
1636
1633
  table::Singular *getInstanceTable();
1637
1634
  table::Singular *getInstanceTable(List<CreateField> &field_list);
1679
1676
  struct rusage usage;
1680
1677
};
1681
1678
 
1682
 
class Join;
1683
 
 
1684
1679
#define ESCAPE_CHARS "ntrb0ZN" // keep synchronous with READ_INFO::unescape
1685
1680
 
1686
 
} /* namespace drizzled */
1687
 
 
1688
 
/** @TODO why is this in the middle of the file */
1689
 
#include <drizzled/select_to_file.h>
1690
 
#include <drizzled/select_export.h>
1691
 
#include <drizzled/select_dump.h>
1692
 
#include <drizzled/select_insert.h>
1693
 
#include <drizzled/select_create.h>
1694
 
#include <drizzled/tmp_table_param.h>
1695
 
#include <drizzled/select_union.h>
1696
 
#include <drizzled/select_subselect.h>
1697
 
#include <drizzled/select_singlerow_subselect.h>
1698
 
#include <drizzled/select_max_min_finder_subselect.h>
1699
 
#include <drizzled/select_exists_subselect.h>
1700
 
 
1701
 
namespace drizzled
1702
 
{
1703
 
 
1704
 
/**
1705
 
 * A structure used to describe sort information
1706
 
 * for a field or item used in ORDER BY.
1707
 
 */
1708
 
class SortField 
1709
 
{
1710
 
public:
1711
 
  Field *field; /**< Field to sort */
1712
 
  Item  *item; /**< Item if not sorting fields */
1713
 
  size_t length; /**< Length of sort field */
1714
 
  uint32_t suffix_length; /**< Length suffix (0-4) */
1715
 
  Item_result result_type; /**< Type of item */
1716
 
  bool reverse; /**< if descending sort */
1717
 
  bool need_strxnfrm;   /**< If we have to use strxnfrm() */
1718
 
 
1719
 
  SortField() :
1720
 
    field(0),
1721
 
    item(0),
1722
 
    length(0),
1723
 
    suffix_length(0),
1724
 
    result_type(STRING_RESULT),
1725
 
    reverse(0),
1726
 
    need_strxnfrm(0)
1727
 
  { }
1728
 
 
1729
 
};
1730
 
 
1731
 
} /* namespace drizzled */
1732
 
 
1733
 
/** @TODO why is this in the middle of the file */
1734
 
 
1735
 
#include <drizzled/table_ident.h>
1736
 
#include <drizzled/user_var_entry.h>
1737
 
#include <drizzled/unique.h>
1738
 
#include <drizzled/var.h>
1739
 
#include <drizzled/select_dumpvar.h>
1740
 
 
1741
 
namespace drizzled
1742
 
{
1743
 
 
1744
1681
/* Bits in sql_command_flags */
1745
1682
 
1746
1683
enum sql_command_flag_bits