tglobal.h 5.2 KB
Newer Older
H
hzcheng 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
/*
 * Copyright (c) 2019 TAOS Data, Inc. <jhtao@taosdata.com>
 *
 * This program is free software: you can use, redistribute, and/or modify
 * it under the terms of the GNU Affero General Public License, version 3
 * or later ("AGPL"), as published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */

S
slguan 已提交
16 17
#ifndef TDENGINE_COMMON_GLOBAL_H
#define TDENGINE_COMMON_GLOBAL_H
H
hzcheng 已提交
18 19 20 21 22

#ifdef __cplusplus
extern "C" {
#endif

S
Shengliang Guan 已提交
23 24 25 26 27
// cluster
extern char     tsFirst[];
extern char     tsSecond[];
extern char     tsLocalFqdn[];
extern char     tsLocalEp[];
J
jtao1735 已提交
28
extern uint16_t tsServerPort;
S
slguan 已提交
29
extern uint16_t tsDnodeShellPort;
J
jtao1735 已提交
30
extern uint16_t tsDnodeDnodePort;
S
slguan 已提交
31
extern uint16_t tsSyncPort;
S
Shengliang Guan 已提交
32 33
extern int32_t  tsStatusInterval;
extern int32_t  tsNumOfMnodes;
H
Hui Li 已提交
34
extern int32_t  tsEnableVnodeBak;
S
Shengliang Guan 已提交
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64

// common
extern int      tsRpcTimer;
extern int      tsRpcMaxTime;
extern int32_t  tsMaxConnections;
extern int32_t  tsMaxShellConns;
extern int32_t  tsShellActivityTimer;
extern uint32_t tsMaxTmrCtrl;
extern float    tsNumOfThreadsPerCore;
extern float    tsRatioOfQueryThreads;
extern int8_t   tsDaylight;
extern char     tsTimezone[64];
extern char     tsLocale[64];
extern char     tsCharset[64];  // default encode string
extern int32_t  tsEnableCoreFile;
extern int32_t  tsCompressMsgSize;

// client
extern int32_t tsTableMetaKeepTimer;
extern int32_t tsMaxSQLStringLen;
extern int32_t tsTscEnableRecordSql;
extern int32_t tsMaxNumOfOrderedResults;
extern int32_t tsMinSlidingTime;
extern int32_t tsMinIntervalTime;
extern int32_t tsMaxStreamComputDelay;
extern int32_t tsStreamCompStartDelay;
extern int32_t tsStreamCompRetryDelay;
extern float   tsStreamComputDelayRatio;  // the delayed computing ration of the whole time window
extern int32_t tsProjectExecInterval;
extern int64_t tsMaxRetentWindow;
H
hzcheng 已提交
65

S
Shengliang Guan 已提交
66
// db parameters in client
S
slguan 已提交
67
extern int32_t tsCacheBlockSize;
H
hjxilinx 已提交
68
extern int32_t tsBlocksPerVnode;
69
extern int32_t tsMinTablePerVnode;
H
hjxilinx 已提交
70
extern int32_t tsMaxTablePerVnode;
71
extern int32_t tsTableIncStepPerVnode;
72
extern int32_t tsMaxVgroupsPerDb;
S
slguan 已提交
73 74
extern int16_t tsDaysPerFile;
extern int32_t tsDaysToKeep;
S
slguan 已提交
75 76
extern int32_t tsMinRowsInFileBlock;
extern int32_t tsMaxRowsInFileBlock;
S
slguan 已提交
77 78 79
extern int16_t tsCommitTime;  // seconds
extern int32_t tsTimePrecision;
extern int16_t tsCompression;
H
hjxilinx 已提交
80
extern int16_t tsWAL;
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
81
extern int32_t tsFsyncPeriod;
S
slguan 已提交
82 83
extern int32_t tsReplications;

S
Shengliang Guan 已提交
84 85 86
// balance
extern int32_t tsEnableBalance;
extern int32_t tsAlternativeRole;
S
slguan 已提交
87
extern int32_t tsBalanceInterval;
S
slguan 已提交
88
extern int32_t tsOfflineThreshold;
89
extern int32_t tsMnodeEqualVnodeNum;
S
slguan 已提交
90

S
Shengliang Guan 已提交
91 92 93
// restful
extern int32_t  tsEnableHttpModule;
extern int32_t  tsRestRowLimit;
L
lihui 已提交
94
extern uint16_t tsHttpPort;
S
slguan 已提交
95 96 97 98 99 100 101
extern int32_t  tsHttpCacheSessions;
extern int32_t  tsHttpSessionExpire;
extern int32_t  tsHttpMaxThreads;
extern int32_t  tsHttpEnableCompress;
extern int32_t  tsHttpEnableRecordSql;
extern int32_t  tsTelegrafUseFieldNum;

S
Shengliang Guan 已提交
102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122
// mqtt
extern int32_t tsEnableMqttModule;
extern char    tsMqttBrokerAddress[];
extern char    tsMqttBrokerClientId[];

// monitor
extern int32_t tsEnableMonitorModule;
extern char    tsMonitorDbName[];
extern char    tsInternalPass[];
extern int32_t tsMonitorInterval;

// internal
extern int32_t tscEmbedded;
extern char    configDir[];
extern char    tsVnodeDir[];
extern char    tsDnodeDir[];
extern char    tsMnodeDir[];
extern char    tsDataDir[];
extern char    tsLogDir[];
extern char    tsScriptDir[];
extern int64_t tsMsPerDay[3];
H
Hui Li 已提交
123
extern char    tsVnodeBakDir[];
S
Shengliang Guan 已提交
124 125 126 127 128 129 130 131 132 133 134

// system info
extern char    tsOsName[];
extern int64_t tsPageSize;
extern int64_t tsOpenMax;
extern int64_t tsStreamMax;
extern int32_t tsNumOfCores;
extern float   tsTotalLogDirGB;
extern float   tsTotalTmpDirGB;
extern float   tsTotalDataDirGB;
extern float   tsAvailLogDirGB;
H
Haojun Liao 已提交
135
extern float   tsAvailTmpDirectorySpace;
S
Shengliang Guan 已提交
136 137
extern float   tsAvailDataDirGB;
extern float   tsMinimalLogDirGB;
H
Haojun Liao 已提交
138
extern float   tsReservedTmpDirectorySpace;
S
Shengliang Guan 已提交
139 140 141
extern float   tsMinimalDataDirGB;
extern int32_t tsTotalMemoryMB;
extern int32_t tsVersion;
S
slguan 已提交
142

S
Shengliang Guan 已提交
143 144 145 146 147 148
// build info
extern char version[];
extern char compatible_version[];
extern char gitinfo[];
extern char gitinfoOfInternal[];
extern char buildinfo[];
S
slguan 已提交
149

S
Shengliang Guan 已提交
150
// log
S
slguan 已提交
151 152
extern int32_t tsAsyncLog;
extern int32_t tsNumOfLogLines;
153 154
extern int32_t dDebugFlag;
extern int32_t vDebugFlag;
guanshengliang's avatar
guanshengliang 已提交
155 156 157
extern int32_t mDebugFlag;
extern int32_t cDebugFlag;
extern int32_t jniDebugFlag;
S
slguan 已提交
158 159 160
extern int32_t tmrDebugFlag;
extern int32_t sdbDebugFlag;
extern int32_t httpDebugFlag;
161
extern int32_t mqttDebugFlag;
S
slguan 已提交
162 163 164
extern int32_t monitorDebugFlag;
extern int32_t uDebugFlag;
extern int32_t rpcDebugFlag;
guanshengliang's avatar
guanshengliang 已提交
165 166
extern int32_t odbcDebugFlag;
extern int32_t qDebugFlag;
S
Shengliang Guan 已提交
167
extern int32_t wDebugFlag;
168
extern int32_t debugFlag;
H
hzcheng 已提交
169

H
hjxilinx 已提交
170 171
#define NEEDTO_COMPRESSS_MSG(size) (tsCompressMsgSize != -1 && (size) > tsCompressMsgSize)

S
slguan 已提交
172 173 174 175
void taosInitGlobalCfg();
bool taosCheckGlobalCfg();
void taosSetAllDebugFlag();
bool taosCfgDynamicOptions(char *msg);
176
int  taosGetFqdnPortFromEp(const char *ep, char *fqdn, uint16_t *port);
S
Shengliang Guan 已提交
177
bool taosCheckBalanceCfgOptions(const char *option, int32_t *vnodeId, int32_t *dnodeId);
J
jtao1735 已提交
178
 
H
hzcheng 已提交
179 180 181 182
#ifdef __cplusplus
}
#endif

S
slguan 已提交
183
#endif