~linuxjedi/drizzle/trunk-bug-667053

« back to all changes in this revision

Viewing changes to storage/innobase/include/srv0start.h

  • Committer: brian
  • Date: 2008-06-25 05:29:13 UTC
  • Revision ID: brian@localhost.localdomain-20080625052913-6upwo0jsrl4lnapl
clean slate

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/******************************************************
 
2
Starts the Innobase database server
 
3
 
 
4
(c) 1995-2000 Innobase Oy
 
5
 
 
6
Created 10/10/1995 Heikki Tuuri
 
7
*******************************************************/
 
8
 
 
9
 
 
10
#ifndef srv0start_h
 
11
#define srv0start_h
 
12
 
 
13
#include "univ.i"
 
14
#include "ut0byte.h"
 
15
 
 
16
/*************************************************************************
 
17
Normalizes a directory path for Windows: converts slashes to backslashes. */
 
18
 
 
19
void
 
20
srv_normalize_path_for_win(
 
21
/*=======================*/
 
22
        char*   str);   /* in/out: null-terminated character string */
 
23
/*************************************************************************
 
24
Reads the data files and their sizes from a character string given in
 
25
the .cnf file. */
 
26
 
 
27
ibool
 
28
srv_parse_data_file_paths_and_sizes(
 
29
/*================================*/
 
30
                                        /* out: TRUE if ok, FALSE if parsing
 
31
                                        error */
 
32
        char*   str,                    /* in: the data file path string */
 
33
        char*** data_file_names,        /* out, own: array of data file
 
34
                                        names */
 
35
        ulint** data_file_sizes,        /* out, own: array of data file sizes
 
36
                                        in megabytes */
 
37
        ulint** data_file_is_raw_partition,/* out, own: array of flags
 
38
                                        showing which data files are raw
 
39
                                        partitions */
 
40
        ulint*  n_data_files,           /* out: number of data files */
 
41
        ibool*  is_auto_extending,      /* out: TRUE if the last data file is
 
42
                                        auto-extending */
 
43
        ulint*  max_auto_extend_size);  /* out: max auto extend size for the
 
44
                                        last file if specified, 0 if not */
 
45
/*************************************************************************
 
46
Reads log group home directories from a character string given in
 
47
the .cnf file. */
 
48
 
 
49
ibool
 
50
srv_parse_log_group_home_dirs(
 
51
/*==========================*/
 
52
                                        /* out: TRUE if ok, FALSE if parsing
 
53
                                        error */
 
54
        char*   str,                    /* in: character string */
 
55
        char*** log_group_home_dirs);   /* out, own: log group home dirs */
 
56
/*************************************************************************
 
57
Adds a slash or a backslash to the end of a string if it is missing
 
58
and the string is not empty. */
 
59
 
 
60
char*
 
61
srv_add_path_separator_if_needed(
 
62
/*=============================*/
 
63
                        /* out: string which has the separator if the
 
64
                        string is not empty */
 
65
        char*   str);   /* in: null-terminated character string */
 
66
/********************************************************************
 
67
Starts Innobase and creates a new database if database files
 
68
are not found and the user wants. Server parameters are
 
69
read from a file of name "srv_init" in the ib_home directory. */
 
70
 
 
71
int
 
72
innobase_start_or_create_for_mysql(void);
 
73
/*====================================*/
 
74
                                /* out: DB_SUCCESS or error code */
 
75
/********************************************************************
 
76
Shuts down the Innobase database. */
 
77
int
 
78
innobase_shutdown_for_mysql(void);
 
79
/*=============================*/
 
80
                                /* out: DB_SUCCESS or error code */
 
81
extern  dulint  srv_shutdown_lsn;
 
82
extern  dulint  srv_start_lsn;
 
83
 
 
84
#ifdef __NETWARE__
 
85
void set_panic_flag_for_netware(void);
 
86
#endif
 
87
 
 
88
#ifdef HAVE_DARWIN_THREADS
 
89
extern  ibool   srv_have_fullfsync;
 
90
#endif
 
91
 
 
92
extern  ulint   srv_sizeof_trx_t_in_ha_innodb_cc;
 
93
 
 
94
extern  ibool   srv_is_being_started;
 
95
extern  ibool   srv_startup_is_before_trx_rollback_phase;
 
96
extern  ibool   srv_is_being_shut_down;
 
97
 
 
98
extern  ibool   srv_start_raw_disk_in_use;
 
99
 
 
100
/* At a shutdown the value first climbs from 0 to SRV_SHUTDOWN_CLEANUP
 
101
and then to SRV_SHUTDOWN_LAST_PHASE, and so on */
 
102
 
 
103
extern  ulint   srv_shutdown_state;
 
104
 
 
105
#define SRV_SHUTDOWN_CLEANUP       1
 
106
#define SRV_SHUTDOWN_LAST_PHASE    2
 
107
#define SRV_SHUTDOWN_EXIT_THREADS  3
 
108
 
 
109
/* Log 'spaces' have id's >= this */
 
110
#define SRV_LOG_SPACE_FIRST_ID          0xFFFFFFF0UL
 
111
 
 
112
#endif