This commit is contained in:
slguan 2020-04-28 16:19:48 +08:00
parent 5362a0b15d
commit 3d2fdee8dc
34 changed files with 207 additions and 208 deletions

View File

@ -939,7 +939,7 @@ char *taos_errstr(TAOS *taos) {
void taos_config(int debug, char *log_path) {
uDebugFlag = debug;
strcpy(logDir, log_path);
strcpy(tsLogDir, log_path);
}
char *taos_get_server_info(TAOS *taos) {

View File

@ -220,7 +220,7 @@ int tscUpdateSubscription(STscObj* pObj, SSub* pSub) {
static int tscLoadSubscriptionProgress(SSub* pSub) {
char buf[TSDB_MAX_SQL_LEN];
sprintf(buf, "%s/subscribe/%s", dataDir, pSub->topic);
sprintf(buf, "%s/subscribe/%s", tsDataDir, pSub->topic);
FILE* fp = fopen(buf, "r");
if (fp == NULL) {
@ -281,12 +281,12 @@ void tscSaveSubscriptionProgress(void* sub) {
SSub* pSub = (SSub*)sub;
char path[256];
sprintf(path, "%s/subscribe", dataDir);
sprintf(path, "%s/subscribe", tsDataDir);
if (access(path, 0) != 0) {
mkdir(path, 0777);
}
sprintf(path, "%s/subscribe/%s", dataDir, pSub->topic);
sprintf(path, "%s/subscribe/%s", tsDataDir, pSub->topic);
FILE* fp = fopen(path, "w+");
if (fp == NULL) {
tscError("failed to create progress file for subscription: %s", pSub->topic);
@ -416,7 +416,7 @@ void taos_unsubscribe(TAOS_SUB *tsub, int keepProgress) {
tscSaveSubscriptionProgress(pSub);
} else {
char path[256];
sprintf(path, "%s/subscribe/%s", dataDir, pSub->topic);
sprintf(path, "%s/subscribe/%s", tsDataDir, pSub->topic);
remove(path);
}

View File

@ -121,11 +121,11 @@ void taos_init_imp() {
taosReadGlobalLogCfg();
// For log directory
if (stat(logDir, &dirstat) < 0) mkdir(logDir, 0755);
if (stat(tsLogDir, &dirstat) < 0) mkdir(tsLogDir, 0755);
sprintf(temp, "%s/taoslog", logDir);
sprintf(temp, "%s/taoslog", tsLogDir);
if (taosInitLog(temp, tsNumOfLogLines, 10) < 0) {
printf("failed to open log file in directory:%s\n", logDir);
printf("failed to open log file in directory:%s\n", tsLogDir);
}
taosReadGlobalCfg();

View File

@ -24,10 +24,10 @@ extern char configDir[];
extern char tsVnodeDir[];
extern char tsDnodeDir[];
extern char tsMnodeDir[];
extern char dataDir[];
extern char logDir[];
extern char scriptDir[];
extern char osName[];
extern char tsDataDir[];
extern char tsLogDir[];
extern char tsScriptDir[];
extern char tsOsName[];
// system info
extern int64_t tsPageSize;

View File

@ -30,9 +30,9 @@ char configDir[TSDB_FILENAME_LEN] = "/etc/taos";
char tsVnodeDir[TSDB_FILENAME_LEN] = {0};
char tsDnodeDir[TSDB_FILENAME_LEN] = {0};
char tsMnodeDir[TSDB_FILENAME_LEN] = {0};
char dataDir[TSDB_FILENAME_LEN] = "/var/lib/taos";
char scriptDir[TSDB_FILENAME_LEN] = "/etc/taos";
char osName[10] = "Linux";
char tsDataDir[TSDB_FILENAME_LEN] = "/var/lib/taos";
char tsScriptDir[TSDB_FILENAME_LEN] = "/etc/taos";
char tsOsName[10] = "Linux";
// system info, not configurable
int64_t tsPageSize;
@ -407,7 +407,7 @@ static void doInitGlobalConfig() {
taosInitConfigOption(cfg);
cfg.option = "logDir";
cfg.ptr = logDir;
cfg.ptr = tsLogDir;
cfg.valType = TAOS_CFG_VTYPE_DIRECTORY;
cfg.cfgType = TSDB_CFG_CTYPE_B_CONFIG | TSDB_CFG_CTYPE_B_CLIENT | TSDB_CFG_CTYPE_B_LOG;
cfg.minValue = 0;
@ -417,7 +417,7 @@ static void doInitGlobalConfig() {
taosInitConfigOption(cfg);
cfg.option = "scriptDir";
cfg.ptr = scriptDir;
cfg.ptr = tsScriptDir;
cfg.valType = TAOS_CFG_VTYPE_DIRECTORY;
cfg.cfgType = TSDB_CFG_CTYPE_B_CONFIG | TSDB_CFG_CTYPE_B_CLIENT;
cfg.minValue = 0;
@ -427,7 +427,7 @@ static void doInitGlobalConfig() {
taosInitConfigOption(cfg);
cfg.option = "dataDir";
cfg.ptr = dataDir;
cfg.ptr = tsDataDir;
cfg.valType = TAOS_CFG_VTYPE_DIRECTORY;
cfg.cfgType = TSDB_CFG_CTYPE_B_CONFIG;
cfg.minValue = 0;

View File

@ -144,12 +144,12 @@ static int32_t dnodeInitSystem() {
signal(SIGPIPE, SIG_IGN);
struct stat dirstat;
if (stat(logDir, &dirstat) < 0) {
mkdir(logDir, 0755);
if (stat(tsLogDir, &dirstat) < 0) {
mkdir(tsLogDir, 0755);
}
char temp[TSDB_FILENAME_LEN];
sprintf(temp, "%s/taosdlog", logDir);
sprintf(temp, "%s/taosdlog", tsLogDir);
if (taosInitLog(temp, tsNumOfLogLines, 1) < 0) {
printf("failed to init log file\n");
}
@ -218,13 +218,13 @@ static void dnodeCheckDataDirOpenned(char *dir) {
static int32_t dnodeInitStorage() {
struct stat dirstat;
if (stat(dataDir, &dirstat) < 0) {
mkdir(dataDir, 0755);
if (stat(tsDataDir, &dirstat) < 0) {
mkdir(tsDataDir, 0755);
}
sprintf(tsMnodeDir, "%s/mnode", dataDir);
sprintf(tsVnodeDir, "%s/vnode", dataDir);
sprintf(tsDnodeDir, "%s/dnode", dataDir);
sprintf(tsMnodeDir, "%s/mnode", tsDataDir);
sprintf(tsVnodeDir, "%s/vnode", tsDataDir);
sprintf(tsDnodeDir, "%s/dnode", tsDataDir);
mkdir(tsVnodeDir, 0755);
mkdir(tsDnodeDir, 0755);

View File

@ -265,6 +265,7 @@ typedef struct {
char tableId[TSDB_TABLE_ID_LEN + 1];
char db[TSDB_DB_NAME_LEN + 1];
int8_t igExists;
int8_t getMeta;
int16_t numOfTags;
int16_t numOfColumns;
int16_t sqlLen; // the length of SQL, it starts after schema , sql is a null-terminated string

View File

@ -40,7 +40,7 @@ History history;
*/
TAOS *shellInit(struct arguments *args) {
printf("\n");
printf(CLIENT_VERSION, osName, taos_get_client_info());
printf(CLIENT_VERSION, tsOsName, taos_get_client_info());
fflush(stdout);
// set options before initializing

View File

@ -770,11 +770,17 @@ static SDbCfg mgmtGetAlterDbOption(SDbObj *pDb, SCMAlterDbMsg *pAlter) {
mTrace("db:%s, replications:%d change to %d", pDb->name, pDb->cfg.replications, replications);
newCfg.replications = replications;
}
if (replications > mgmtGetDnodesNum()) {
mError("db:%s, no enough dnode to change replica:%d", pDb->name, replications);
terrno = TSDB_CODE_NO_ENOUGH_DNODES;
}
if (pDb->cfg.replications - replications >= 2) {
mError("db:%s, replica number can't change from 3 to 1", pDb->name, replications);
terrno = TSDB_CODE_INVALID_OPTION;
}
return newCfg;
}

View File

@ -336,7 +336,7 @@ void mgmtProcessDnodeStatusMsg(SRpcMsg *rpcMsg) {
if (pStatus->dnodeId == 0) {
mTrace("dnode:%d, first access, privateIp:%s, name:%s", pDnode->dnodeId, taosIpStr(pDnode->privateIp), pDnode->dnodeName);
} else {
//mTrace("dnode:%d, status received, access times %d", pDnode->dnodeId, pDnode->lastAccess);
mTrace("dnode:%d, status received, access times %d", pDnode->dnodeId, pDnode->lastAccess);
}
int32_t openVnodes = htons(pStatus->openVnodes);

View File

@ -745,16 +745,14 @@ void mgmtDropAllVgroups(SDbObj *pDropDb) {
void *pNode = NULL;
void *pLastNode = NULL;
int32_t numOfVgroups = 0;
int32_t dbNameLen = strlen(pDropDb->name);
SVgObj *pVgroup = NULL;
mPrint("db:%s, all vgroups will be dropped from sdb", pDropDb->name);
while (1) {
pNode = sdbFetchRow(tsVgroupSdb, pNode, (void **)&pVgroup);
if (pVgroup == NULL) break;
if (strncmp(pDropDb->name, pVgroup->dbName, dbNameLen) == 0) {
if (pVgroup->pDb == pDropDb) {
SSdbOper oper = {
.type = SDB_OPER_LOCAL,
.table = tsVgroupSdb,
@ -763,9 +761,9 @@ void mgmtDropAllVgroups(SDbObj *pDropDb) {
sdbDeleteRow(&oper);
pNode = pLastNode;
numOfVgroups++;
mgmtSendDropVgroupMsg(pVgroup, NULL);
}
mgmtSendDropVgroupMsg(pVgroup, NULL);
mgmtDecVgroupRef(pVgroup);
}

View File

@ -23,8 +23,8 @@ void osInit() {
strcpy(tsVnodeDir, "");
strcpy(tsDnodeDir, "");
strcpy(tsMnodeDir, "");
strcpy(dataDir, "/var/lib/taos");
strcpy(logDir, "~/TDengineLog");
strcpy(scriptDir, "/etc/taos");
strcpy(osName, "Darwin");
strcpy(tsDataDir, "/var/lib/taos");
strcpy(tsLogDir, "~/TDengineLog");
strcpy(tsScriptDir, "/etc/taos");
strcpy(tsOsName, "Darwin");
}

View File

@ -23,8 +23,8 @@ void osInit() {
strcpy(tsVnodeDir, "");
strcpy(tsDnodeDir, "");
strcpy(tsMnodeDir, "");
strcpy(dataDir, "/var/lib/taos");
strcpy(logDir, "/var/log/taos");
strcpy(scriptDir, "/etc/taos");
strcpy(osName, "Linux");
strcpy(tsDataDir, "/var/lib/taos");
strcpy(tsLogDir, "/var/log/taos");
strcpy(tsScriptDir, "/etc/taos");
strcpy(tsOsName, "Linux");
}

View File

@ -292,9 +292,10 @@ bool taosGetDisk() {
const double unit = 1024 * 1024 * 1024;
if (tscEmbedded) {
if (statvfs(dataDir, &info)) {
tsTotalDataDirGB = 0;
tsAvailDataDirGB = 0;
if (statvfs(tsDataDir, &info)) {
//tsTotalDataDirGB = 0;
//tsAvailDataDirGB = 0;
uError("failed to get disk size, dataDir:%s errno:%s", tsDataDir, strerror(errno));
return false;
} else {
tsTotalDataDirGB = (float)((double)info.f_blocks * (double)info.f_frsize / unit);
@ -302,9 +303,10 @@ bool taosGetDisk() {
}
}
if (statvfs(logDir, &info)) {
tsTotalLogDirGB = 0;
tsAvailLogDirGB = 0;
if (statvfs(tsLogDir, &info)) {
//tsTotalLogDirGB = 0;
//tsAvailLogDirGB = 0;
uError("failed to get disk size, logDir:%s errno:%s", tsLogDir, strerror(errno));
return false;
} else {
tsTotalLogDirGB = (float)((double)info.f_blocks * (double)info.f_frsize / unit);
@ -312,8 +314,9 @@ bool taosGetDisk() {
}
if (statvfs("/tmp", &info)) {
tsTotalTmpDirGB = 0;
tsAvailTmpDirGB = 0;
//tsTotalTmpDirGB = 0;
//tsAvailTmpDirGB = 0;
uError("failed to get disk size, tmpDir:/tmp errno:%s", strerror(errno));
return false;
} else {
tsTotalTmpDirGB = (float)((double)info.f_blocks * (double)info.f_frsize / unit);

View File

@ -23,8 +23,8 @@ void osInit() {
strcpy(tsVnodeDir, "C:/TDengine/data");
strcpy(tsDnodeDir, "");
strcpy(tsMnodeDir, "");
strcpy(dataDir, "C:/TDengine/data");
strcpy(logDir, "C:/TDengine/log");
strcpy(scriptDir, "C:/TDengine/script");
strcpy(osName, "Windows");
strcpy(tsDataDir, "C:/TDengine/data");
strcpy(tsLogDir, "C:/TDengine/log");
strcpy(tsScriptDir, "C:/TDengine/script");
strcpy(tsOsName, "Windows");
}

View File

@ -915,7 +915,7 @@ _exit:
}
static int tsdbCommitToFile(STsdbRepo *pRepo, int fid, SSkipListIterator **iters, SRWHelper *pHelper, SDataCols *pDataCols) {
char dataDir[128] = {0};
STsdbMeta * pMeta = pRepo->tsdbMeta;
STsdbFileH *pFileH = pRepo->tsdbFileH;
STsdbCfg * pCfg = &pRepo->config;

View File

@ -540,7 +540,7 @@ bool taosHashIterNext(SHashMutableIterator *pIter) {
}
size_t size = taosHashGetSize(pIter->pHashObj);
if (size == 0 || pIter->num >= size) {
if (size == 0) {
return false;
}

View File

@ -249,7 +249,7 @@ void taosReadGlobalLogCfg() {
}
wordfree(&full_path);
taosReadLogOption("logDir", logDir);
taosReadLogOption("tsLogDir", tsLogDir);
sprintf(fileName, "%s/taos.cfg", configDir);
fp = fopen(fileName, "r");

View File

@ -66,7 +66,7 @@ int32_t tsAsyncLog = 1;
float tsTotalLogDirGB = 0;
float tsAvailLogDirGB = 0;
float tsMinimalLogDirGB = 0.1;
char logDir[TSDB_FILENAME_LEN] = "/var/log/taos";
char tsLogDir[TSDB_FILENAME_LEN] = "/var/log/taos";
static SLogObj tsLogObj = { .fileNum = 1 };
static void * taosAsyncOutputLog(void *param);
@ -298,7 +298,7 @@ static int32_t taosOpenLogFile(char *fn, int32_t maxLines, int32_t maxFileNum) {
void taosPrintLog(const char *const flags, int32_t dflag, const char *const format, ...) {
if (tsTotalLogDirGB != 0 && tsAvailLogDirGB < tsMinimalLogDirGB) {
printf("server disk:%s space remain %.3f GB, total %.1f GB, stop print log.\n", logDir, tsAvailLogDirGB, tsTotalLogDirGB);
printf("server disk:%s space remain %.3f GB, total %.1f GB, stop print log.\n", tsLogDir, tsAvailLogDirGB, tsTotalLogDirGB);
fflush(stdout);
return;
}
@ -356,7 +356,7 @@ void taosPrintLog(const char *const flags, int32_t dflag, const char *const form
void taosDumpData(unsigned char *msg, int32_t len) {
if (tsTotalLogDirGB != 0 && tsAvailLogDirGB < tsMinimalLogDirGB) {
printf("server disk:%s space remain %.3f GB, total %.1f GB, stop dump log.\n", logDir, tsAvailLogDirGB, tsTotalLogDirGB);
printf("server disk:%s space remain %.3f GB, total %.1f GB, stop dump log.\n", tsLogDir, tsAvailLogDirGB, tsTotalLogDirGB);
fflush(stdout);
return;
}
@ -385,7 +385,7 @@ void taosDumpData(unsigned char *msg, int32_t len) {
void taosPrintLongString(const char *const flags, int32_t dflag, const char *const format, ...) {
if (tsTotalLogDirGB != 0 && tsAvailLogDirGB < tsMinimalLogDirGB) {
printf("server disk:%s space remain %.3f GB, total %.1f GB, stop write log.\n", logDir, tsAvailLogDirGB, tsTotalLogDirGB);
printf("server disk:%s space remain %.3f GB, total %.1f GB, stop write log.\n", tsLogDir, tsAvailLogDirGB, tsTotalLogDirGB);
fflush(stdout);
return;
}

View File

@ -27,10 +27,10 @@ void taosInitNote(int numOfNoteLines, int maxNotes, char* lable)
if (strcasecmp(lable, "http_note") == 0) {
pNote = &m_HttpNote;
sprintf(temp, "%s/httpnote", logDir);
sprintf(temp, "%s/httpnote", tsLogDir);
} else if (strcasecmp(lable, "tsc_note") == 0) {
pNote = &m_TscNote;
sprintf(temp, "%s/tscnote-%d", logDir, getpid());
sprintf(temp, "%s/tscnote-%d", tsLogDir, getpid());
} else {
return;
}

View File

@ -379,7 +379,8 @@ static int32_t vnodeSaveCfg(SMDCreateVnodeMsg *pVnodeCfg) {
sprintf(cfgFile, "%s/vnode%d/config.json", tsVnodeDir, pVnodeCfg->cfg.vgId);
FILE *fp = fopen(cfgFile, "w");
if (!fp) {
dError("vgId:%d, failed to open vnode cfg file for write, error:%s", pVnodeCfg->cfg.vgId, strerror(errno));
dError("vgId:%d, failed to open vnode cfg file for write, file:%s error:%s", pVnodeCfg->cfg.vgId, cfgFile,
strerror(errno));
return errno;
}
@ -444,7 +445,8 @@ static int32_t vnodeReadCfg(SVnodeObj *pVnode) {
sprintf(cfgFile, "%s/vnode%d/config.json", tsVnodeDir, pVnode->vgId);
FILE *fp = fopen(cfgFile, "r");
if (!fp) {
dError("pVnode:%p vgId:%d, failed to open vnode cfg file for read, error:%s", pVnode, pVnode->vgId, strerror(errno));
dError("pVnode:%p vgId:%d, failed to open vnode cfg file for read, file:%s, error:%s", pVnode, pVnode->vgId,
cfgFile, strerror(errno));
return errno;
}
@ -645,13 +647,13 @@ PARSE_OVER:
return ret;
}
static int32_t vnodeSaveVersion(SVnodeObj *pVnode) {
char versionFile[TSDB_FILENAME_LEN + 30] = {0};
sprintf(versionFile, "%s/vnode%d/version.json", tsVnodeDir, pVnode->vgId);
FILE *fp = fopen(versionFile, "w");
if (!fp) {
dError("pVnode:%p vgId:%d, failed to open vnode version file for write, error:%s", pVnode, pVnode->vgId, strerror(errno));
dError("pVnode:%p vgId:%d, failed to open vnode version file for write, file:%s error:%s", pVnode, pVnode->vgId,
versionFile, strerror(errno));
return errno;
}
@ -677,7 +679,8 @@ static bool vnodeReadVersion(SVnodeObj *pVnode) {
sprintf(versionFile, "%s/vnode%d/version.json", tsVnodeDir, pVnode->vgId);
FILE *fp = fopen(versionFile, "r");
if (!fp) {
dError("pVnode:%p vgId:%d, failed to open vnode version file for write, error:%s", pVnode, pVnode->vgId, strerror(errno));
dTrace("pVnode:%p vgId:%d, failed to open version file:%s error:%s", pVnode, pVnode->vgId,
versionFile, strerror(errno));
return false;
}

View File

@ -17,13 +17,13 @@ system sh/cfg.sh -n dnode2 -c mgmtEqualVnodeNum -v 4
system sh/cfg.sh -n dnode3 -c mgmtEqualVnodeNum -v 4
print ========= start dnode1 as master
system sh/exec.sh -n dnode1 -s start
system sh/exec_up.sh -n dnode1 -s start
sql connect
sleep 3000
print ========= start other dnodes
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 3000
print ======== step1 create db
@ -50,9 +50,9 @@ if $data01 != 40 then
endi
print ======== step2 stop dnode
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 5000
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 3000
sql select * from tb order by ts desc
@ -101,9 +101,9 @@ if $data01 != 40 then
endi
print ======== step5 stop dnode
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 5000
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 3000
sql select * from tb

View File

@ -20,12 +20,12 @@ system sh/cfg.sh -n dnode2 -c cacheBlockSize -v 200
system sh/cfg.sh -n dnode3 -c cacheBlockSize -v 200
print ========= start dnodes
system sh/exec.sh -n dnode1 -s start
system sh/exec_up.sh -n dnode1 -s start
sql connect
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec_up.sh -n dnode3 -s start
sleep 3000
print ======== step1

View File

@ -35,10 +35,10 @@ system sh/cfg.sh -n dnode3 -c tables -v 4
system sh/cfg.sh -n dnode4 -c tables -v 4
print ========= start dnodes
system sh/exec.sh -n dnode1 -s start
system sh/exec_up.sh -n dnode1 -s start
sql connect
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 3000
$loop = 0
@ -59,13 +59,13 @@ begin:
endw
print ======== step2
system sh/exec.sh -n dnode2 -s stop
system sh/exec_up.sh -n dnode2 -s stop
sql drop database $db
print ======== step3
sleep 3000
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 20000
print ===> test times : $loop

View File

@ -30,14 +30,14 @@ system sh/cfg.sh -n dnode3 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode4 -c numOfTotalVnodes -v 4
print ========= start dnodes
system sh/exec.sh -n dnode1 -s start
system sh/exec_up.sh -n dnode1 -s start
sql connect
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec_up.sh -n dnode3 -s start
sql create dnode 192.168.0.4
system sh/exec.sh -n dnode4 -s start
system sh/exec_up.sh -n dnode4 -s start
sleep 3000
print ======== step1
@ -81,7 +81,7 @@ sql alter database d1 replica 3
sql alter database d2 replica 3
sql alter database d3 replica 3
sql alter database d4 replica 3
sleep 12000
sleep 10000
print ======== step3
$x = 0
@ -93,29 +93,25 @@ show3:
endi
sql show dnodes
print dnode192.168.0.1 ==> openVnodes: $data2_192.168.0.1 freeVnodes: $data3_192.168.0.1
print dnode192.168.0.2 ==> openVnodes: $data2_192.168.0.2 freeVnodes: $data3_192.168.0.2
print dnode192.168.0.3 ==> openVnodes: $data2_192.168.0.3 freeVnodes: $data3_192.168.0.3
print dnode192.168.0.4 ==> openVnodes: $data2_192.168.0.4 freeVnodes: $data3_192.168.0.4
print dnode192.168.0.1 ==> openVnodes: $data3_1
print dnode192.168.0.2 ==> openVnodes: $data3_2
print dnode192.168.0.3 ==> openVnodes: $data3_3
print dnode192.168.0.4 ==> openVnodes: $data3_4
if $data2_192.168.0.1 != 0 then
goto show3
if $data3_1 != 0 then
return -1
endi
if $data3_192.168.0.1 != 4 then
goto show3
if $data3_2 != 4 then
return -1
endi
if $data3_192.168.0.2 != 0 then
goto show3
if $data3_3 != 4 then
return -1
endi
if $data3_192.168.0.3 != 0 then
goto show3
endi
if $data3_192.168.0.4 != 0 then
goto show3
if $data3_3 != 4 then
return -1
endi
print ======== step4
@ -145,9 +141,10 @@ if $rows != 2 then
endi
print ========= step5
sleep 10000
system sh/exec.sh -n dnode2 -s stop -x SIGINT
sleep 3000
sql reset query cache
sleep 1000
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 5000
sql insert into d1.t1 values(now, 3)
sql insert into d2.t2 values(now, 3)
@ -175,9 +172,9 @@ if $rows != 3 then
endi
print ========= step6
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 5000
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec_up.sh -n dnode3 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 4)
@ -206,9 +203,9 @@ if $rows != 4 then
endi
print ========= step7
system sh/exec.sh -n dnode3 -s start
system sh/exec_up.sh -n dnode3 -s start
sleep 5000
system sh/exec.sh -n dnode4 -s stop -x SIGINT
system sh/exec_up.sh -n dnode4 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 5)
@ -237,9 +234,9 @@ if $rows != 5 then
endi
print ========= step8
system sh/exec.sh -n dnode4 -s start
system sh/exec_up.sh -n dnode4 -s start
sleep 5000
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 6)

View File

@ -30,14 +30,14 @@ system sh/cfg.sh -n dnode3 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode4 -c numOfTotalVnodes -v 4
print ========= start dnodes
system sh/exec.sh -n dnode1 -s start
system sh/exec_up.sh -n dnode1 -s start
sql connect
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec_up.sh -n dnode3 -s start
sql create dnode 192.168.0.4
system sh/exec.sh -n dnode4 -s start
system sh/exec_up.sh -n dnode4 -s start
sleep 3000
print ======== step1
@ -81,7 +81,7 @@ sql alter database d1 replica 3
sql alter database d2 replica 3
sql alter database d3 replica 3
sql alter database d4 replica 3
sleep 12000
sleep 10000
print ======== step3
$x = 0
@ -93,41 +93,25 @@ show3:
endi
sql show dnodes
print dnode192.168.0.1 ==> openVnodes: $data2_192.168.0.1 freeVnodes: $data3_192.168.0.1
print dnode192.168.0.2 ==> openVnodes: $data2_192.168.0.2 freeVnodes: $data3_192.168.0.2
print dnode192.168.0.3 ==> openVnodes: $data2_192.168.0.3 freeVnodes: $data3_192.168.0.3
print dnode192.168.0.4 ==> openVnodes: $data2_192.168.0.4 freeVnodes: $data3_192.168.0.4
print dnode192.168.0.1 ==> openVnodes: $data3_1
print dnode192.168.0.2 ==> openVnodes: $data3_2
print dnode192.168.0.3 ==> openVnodes: $data3_3
print dnode192.168.0.4 ==> openVnodes: $data3_4
if $data2_192.168.0.1 != 0 then
goto show3
if $data3_1 != 0 then
return -1
endi
if $data2_192.168.0.2 != 4 then
goto show3
if $data3_2 != 4 then
return -1
endi
if $data2_192.168.0.3 != 4 then
goto show3
if $data3_3 != 4 then
return -1
endi
if $data2_192.168.0.4 != 4 then
goto show3
endi
if $data3_192.168.0.1 != 4 then
goto show3
endi
if $data3_192.168.0.2 != 0 then
goto show3
endi
if $data3_192.168.0.3 != 0 then
goto show3
endi
if $data3_192.168.0.4 != 0 then
goto show3
if $data3_3 != 4 then
return -1
endi
print ======== step4
@ -156,10 +140,12 @@ if $rows != 2 then
return -1
endi
sleep 10000
sql reset query cache
sleep 1000
print ========= step5
system sh/exec.sh -n dnode2 -s stop -x SIGINT
sleep 3000
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 5000
sql insert into d1.t1 values(now, 3)
sql insert into d2.t2 values(now, 3)
@ -187,10 +173,10 @@ if $rows != 3 then
endi
print ========= step6
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 5000
system sh/exec_up.sh -n dnode3 -s stop -x SIGINT
sleep 5000
system sh/exec.sh -n dnode3 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 4)
sql insert into d2.t2 values(now, 4)
@ -218,10 +204,10 @@ if $rows != 4 then
endi
print ========= step7
system sh/exec.sh -n dnode3 -s start
system sh/exec_up.sh -n dnode3 -s start
sleep 5000
system sh/exec_up.sh -n dnode4 -s stop -x SIGINT
sleep 5000
system sh/exec.sh -n dnode4 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 5)
sql insert into d2.t2 values(now, 5)
@ -249,10 +235,10 @@ if $rows != 5 then
endi
print ========= step8
system sh/exec.sh -n dnode4 -s start
system sh/exec_up.sh -n dnode4 -s start
sleep 5000
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 5000
system sh/exec.sh -n dnode2 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 6)
sql insert into d2.t2 values(now, 6)

View File

@ -20,12 +20,12 @@ system sh/cfg.sh -n dnode2 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode3 -c numOfTotalVnodes -v 4
print ========= start dnodes
system sh/exec.sh -n dnode1 -s start
system sh/exec_up.sh -n dnode1 -s start
sql connect
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec_up.sh -n dnode3 -s start
sleep 3000
print ======== step1
@ -65,7 +65,7 @@ if $rows != 1 then
endi
print ========= step2 alter db
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 3000
sql alter database d1 replica 2
sql alter database d2 replica 2
@ -74,7 +74,7 @@ sql alter database d4 replica 2
sleep 3000
print ========= step3
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 10000
print ========= step4
@ -104,7 +104,7 @@ if $rows != 2 then
endi
print ========= step5
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 3)
@ -133,9 +133,9 @@ if $rows != 3 then
endi
print ========= step6
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 5000
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec_up.sh -n dnode3 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 4)
@ -164,9 +164,9 @@ if $rows != 4 then
endi
print ========= step7
system sh/exec.sh -n dnode3 -s start
system sh/exec_up.sh -n dnode3 -s start
sleep 5000
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 5)

View File

@ -20,10 +20,10 @@ system sh/cfg.sh -n dnode2 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode3 -c numOfTotalVnodes -v 4
print ========= start dnodes
system sh/exec.sh -n dnode1 -s start
system sh/exec_up.sh -n dnode1 -s start
sql connect
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 3000
print ======== step1
@ -70,7 +70,7 @@ error1:
print ========= step3 alter d1
sql alter database d1 replica 1
sleep 8000
sleep 12000
print ========= step4 query d1
sql insert into d1.t1 values(now, 2)
@ -86,16 +86,12 @@ sql select * from d5.t5
if $rows != 1 then
return -1
endi
print ========= step6 alter d5
sql alter database d5 replica 2 -x error2
return -1
error2:
return
print ========= step7 drop d1
sql drop database d1
sleep 12000
sleep 5000
sql reset query cache
print ========= step8
sql insert into d5.t5 values(now, 2)
sql insert into d2.t2 values(now, 2)
@ -123,7 +119,7 @@ if $rows != 2 then
endi
print ======== step9 stop dnode2
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 3000
sql insert into d5.t5 values(now, 3)

View File

@ -20,12 +20,12 @@ system sh/cfg.sh -n dnode2 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode3 -c numOfTotalVnodes -v 4
print ========= start dnodes
system sh/exec.sh -n dnode1 -s start
system sh/exec_up.sh -n dnode1 -s start
sql connect
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec_up.sh -n dnode3 -s start
sleep 3000
print ======== step1
@ -39,8 +39,8 @@ sql create table d2.t2 (ts timestamp, i int)
sql create table d3.t3 (ts timestamp, i int)
sql create table d4.t4 (ts timestamp, i int)
sql insert into d2.t2 values(now, 1)
sql insert into d1.t1 values(now, 1)
sql insert into d2.t2 values(now, 1)
sql insert into d3.t3 values(now, 1)
sql insert into d4.t4 values(now, 1)
@ -65,9 +65,13 @@ if $rows != 1 then
endi
print ========= step2 alter db
sql alter database d1 replica 1
sql alter database d2 replica 1
sql alter database d3 replica 1
sql_error alter database d1 replica 1
sql_error alter database d2 replica 1
sql_error alter database d3 replica 1
sql alter database d1 replica 2
sql alter database d2 replica 2
sql alter database d3 replica 2
sleep 12000
print ========= step3
@ -128,7 +132,7 @@ if $rows != 3 then
endi
print ========= step4
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 4)
@ -158,9 +162,9 @@ endi
print ========= step5
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 5000
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec_up.sh -n dnode3 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 5)
@ -190,9 +194,9 @@ endi
print ========= step6
system sh/exec.sh -n dnode3 -s start
system sh/exec_up.sh -n dnode3 -s start
sleep 5000
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 6)
sql insert into d2.t2 values(now, 6)

View File

@ -20,12 +20,12 @@ system sh/cfg.sh -n dnode2 -c numOfTotalVnodes -v 4
system sh/cfg.sh -n dnode3 -c numOfTotalVnodes -v 4
print ========= start dnodes
system sh/exec.sh -n dnode1 -s start
system sh/exec_up.sh -n dnode1 -s start
sql connect
sql create dnode 192.168.0.2
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sql create dnode 192.168.0.3
system sh/exec.sh -n dnode3 -s start
system sh/exec_up.sh -n dnode3 -s start
sleep 3000
print ======== step1
@ -68,6 +68,7 @@ print ========= step2 alter db
sql alter database d1 replica 2
sql alter database d2 replica 2
sql alter database d3 replica 2
sql alter database d4 replica 2
sleep 12000
print ========= step3
@ -95,10 +96,11 @@ sql select * from d4.t4
if $rows != 2 then
return -1
endi
return
print ========= step4
system sh/exec.sh -n dnode2 -s stop -x SIGINT
sleep 3000
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 5000
sql insert into d1.t1 values(now, 3)
sql insert into d2.t2 values(now, 3)
@ -126,10 +128,13 @@ if $rows != 3 then
endi
print ========= step5
system sh/exec.sh -n dnode2 -s start
system sh/exec_up.sh -n dnode2 -s start
sleep 5000
system sh/exec.sh -n dnode3 -s stop -x SIGINT
sleep 3000
system sh/exec_up.sh -n dnode3 -s stop -x SIGINT
sleep 5000
sql reset query cache
sleep 1000
sql insert into d1.t1 values(now, 4)
sql insert into d2.t2 values(now, 4)
@ -157,9 +162,9 @@ if $rows != 4 then
endi
print ========= step6
system sh/exec.sh -n dnode3 -s start
system sh/exec_up.sh -n dnode3 -s start
sleep 5000
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec_up.sh -n dnode2 -s stop -x SIGINT
sleep 3000
sql insert into d1.t1 values(now, 5)

View File

@ -1,10 +1,10 @@
#run unique/db/commit.sim
run unique/db/delete.sim
#run unique/db/delete.sim
run unique/db/replica_add12.sim
run unique/db/replica_add13.sim
run unique/db/replica_add23.sim
run unique/db/replica_reduce21.sim
run unique/db/replica_reduce32.sim
run unique/db/replica_reduce31.sim
run unique/db/replica_part.sim
run unique/db/delete_part.sim
#run unique/db/replica_part.sim
#run unique/db/delete_part.sim

View File

@ -160,7 +160,7 @@ extern SCommand simCmdList[];
extern int simScriptPos;
extern int simScriptSucced;
extern int simDebugFlag;
extern char scriptDir[];
extern char tsScriptDir[];
extern bool simAsyncQuery;
SScript *simParseScript(char *fileName);

View File

@ -24,7 +24,7 @@
void simLogSql(char *sql) {
static FILE *fp = NULL;
char filename[256];
sprintf(filename, "%s/sim.sql", scriptDir);
sprintf(filename, "%s/sim.sql", tsScriptDir);
if (fp == NULL) {
fp = fopen(filename, "w");
if (fp == NULL) {
@ -270,7 +270,7 @@ bool simExecuteRunBackCmd(SScript *script, char *option) {
bool simExecuteSystemCmd(SScript *script, char *option) {
char buf[4096] = {0};
sprintf(buf, "cd %s; ", scriptDir);
sprintf(buf, "cd %s; ", tsScriptDir);
simVisuallizeOption(script, option, buf + strlen(buf));
int code = system(buf);
@ -306,9 +306,9 @@ void simStoreSystemContentResult(SScript *script, char *filename) {
bool simExecuteSystemContentCmd(SScript *script, char *option) {
char buf[4096] = {0};
char filename[400] = {0};
sprintf(filename, "%s/%s.tmp", scriptDir, script->fileName);
sprintf(filename, "%s/%s.tmp", tsScriptDir, script->fileName);
sprintf(buf, "cd %s; ", scriptDir);
sprintf(buf, "cd %s; ", tsScriptDir);
simVisuallizeOption(script, option, buf + strlen(buf));
sprintf(buf, "%s > %s 2>/dev/null", buf, filename);

View File

@ -186,7 +186,7 @@ SScript *simParseScript(char *fileName) {
if ((fileName[0] == '.') || (fileName[0] == '/')) {
strcpy(name, fileName);
} else {
sprintf(name, "%s/%s", scriptDir, fileName);
sprintf(name, "%s/%s", tsScriptDir, fileName);
}
if ((fd = fopen(name, "r")) == NULL) {