CUBRID Engine  latest
log_global.c
Go to the documentation of this file.
1 /*
2  * Copyright 2008 Search Solution Corporation
3  * Copyright 2016 CUBRID Corporation
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  */
18 
19 /*
20  * log_global.c -
21  */
22 
23 #ident "$Id$"
24 
25 #include "config.h"
26 #include "file_io.h"
27 #include "log_append.hpp"
28 #include "log_archives.hpp"
29 #include "log_impl.h"
30 #include "log_storage.hpp"
31 #include "log_writer.h"
32 #include "mvcc_table.hpp"
33 #include "porting.h"
34 #include "storage_common.h"
35 
36 #include <limits.h>
37 #include <stddef.h>
38 #include <stdlib.h>
39 
40 /* Variables */
41 #if !defined(SERVER_MODE)
42 /* Index onto transaction table for current thread of execution (client) */
43 int log_Tran_index = -1;
44 #endif /* !SERVER_MODE */
45 
46 // *INDENT-OFF*
49  , append ()
50  , prior_info ()
51  , hdr ()
52  , archive ()
53  , run_nxchkpt_atpageid (NULL_PAGEID)
54 #if defined (SERVER_MODE)
55  , flushed_lsa_lower_bound (NULL_LSA)
56  , chkpt_lsa_lock PTHREAD_MUTEX_INITIALIZER
57 #endif // SERVER_MODE
58  , chkpt_redo_lsa (NULL_LSA)
59  , chkpt_every_npages (INT_MAX)
60  , rcv_phase (LOG_RECOVERY_ANALYSIS_PHASE)
61  , rcv_phase_lsa (NULL_LSA)
62 #if defined(SERVER_MODE)
63  , backup_in_progress (false)
64 #else // not SERVER_MODE = SA_MODE
65  , final_restored_lsa (NULL_LSA)
66 #endif // not SERVER_MODE = SA_MODE
67  , loghdr_pgptr (NULL)
68  , flush_info { 0, 0, NULL
69 #if defined(SERVER_MODE)
70  , PTHREAD_MUTEX_INITIALIZER
71 #endif /* SERVER_MODE */
72  }
73  , group_commit_info LOG_GROUP_COMMIT_INFO_INITIALIZER
74  , writer_info (new logwr_info ())
75  , bg_archive_info ()
76  , mvcc_table ()
77  , unique_stats_table GLOBAL_UNIQUE_STATS_TABLE_INITIALIZER
78 {
79 }
80 // *INDENT-ON*
81 
83 
84 /* Name of the database and logs */
85 char log_Path[PATH_MAX];
86 char log_Archive_path[PATH_MAX];
87 char log_Prefix[PATH_MAX];
88 
89 const char *log_Db_fullname = NULL;
90 char log_Name_active[PATH_MAX];
91 char log_Name_info[PATH_MAX];
92 char log_Name_bkupinfo[PATH_MAX];
93 char log_Name_volinfo[PATH_MAX];
94 char log_Name_bg_archive[PATH_MAX];
95 char log_Name_removed_archive[PATH_MAX];
96 
97 // *INDENT-OFF*
99 {
100  delete writer_info;
101 }
102 // *INDENT-ON*
const char * log_Db_fullname
Definition: log_global.c:89
#define GLOBAL_UNIQUE_STATS_TABLE_INITIALIZER
Definition: log_impl.h:641
LOG_GLOBAL log_Gl
char log_Name_active[PATH_MAX]
Definition: log_global.c:90
#define LOG_GROUP_COMMIT_INFO_INITIALIZER
Definition: log_impl.h:323
char log_Name_removed_archive[PATH_MAX]
Definition: log_global.c:95
int log_Tran_index
Definition: log_global.c:43
char log_Name_volinfo[PATH_MAX]
Definition: log_global.c:93
#define NULL_PAGEID
char log_Name_info[PATH_MAX]
Definition: log_global.c:91
char log_Prefix[PATH_MAX]
Definition: log_global.c:87
#define NULL
Definition: freelistheap.h:34
if(extra_options)
Definition: dynamic_load.c:958
#define SERVER_MODE
char log_Name_bkupinfo[PATH_MAX]
Definition: log_global.c:92
char log_Name_bg_archive[PATH_MAX]
Definition: log_global.c:94
logwr_info * writer_info
Definition: log_impl.h:680
log_global::log_global() char log_Path[PATH_MAX]
Definition: log_global.c:47
char log_Archive_path[PATH_MAX]
Definition: log_global.c:86
else
#define TRANTABLE_INITIALIZER
Definition: log_impl.h:598
const log_lsa NULL_LSA
Definition: log_lsa.hpp:59