17
17
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20
#ifndef DRIZZLED_SQL_ALLOC_H
21
#define DRIZZLED_SQL_ALLOC_H
20
#ifndef DRIZZLED_MEMORY_SQL_ALLOC_H
21
#define DRIZZLED_MEMORY_SQL_ALLOC_H
23
23
#include <unistd.h>
24
#include "drizzled/memory/root.h"
25
typedef struct st_mem_root MEM_ROOT;
28
void init_sql_alloc(MEM_ROOT *root, size_t block_size, size_t pre_alloc_size);
33
void init_sql_alloc(Root *root, size_t block_size, size_t pre_alloc_size);
29
34
void *sql_alloc(size_t);
30
35
void *sql_calloc(size_t);
31
36
char *sql_strdup(const char *str);
32
37
char *sql_strmake(const char *str, size_t len);
33
38
void *sql_memdup(const void * ptr, size_t size);
34
void sql_element_free(void *ptr);
35
void sql_kill(Session *session, unsigned long id, bool only_kill_query);
36
char* query_table_status(Session *session,const char *db,const char *table_name);
38
/* mysql standard class memory allocator */
42
43
static void *operator new(size_t size);
43
44
static void *operator new[](size_t size);
44
static void *operator new[](size_t size, MEM_ROOT *mem_root);
45
static void *operator new(size_t size, MEM_ROOT *mem_root);
45
static void *operator new[](size_t size, Root *mem_root);
46
static void *operator new(size_t size, Root *mem_root);
46
47
static void operator delete(void *, size_t)
48
static void operator delete(void *, MEM_ROOT *)
49
static void operator delete(void *, Root *)
50
static void operator delete[](void *, MEM_ROOT *)
51
static void operator delete[](void *, Root *)
52
53
static void operator delete[](void *, size_t)
57
* @TODO: Make this virtual... but List<> must be fixed first
59
#endif /* DRIZZLED_SQL_ALLOC_H */
66
#endif /* DRIZZLED_MEMORY_SQL_ALLOC_H */