minor changes
This commit is contained in:
parent
cb539ad5c8
commit
f4e648b7f9
|
@ -925,8 +925,7 @@ typedef struct {
|
||||||
int8_t reserved1[7];
|
int8_t reserved1[7];
|
||||||
char name[TSDB_STEP_NAME_LEN];
|
char name[TSDB_STEP_NAME_LEN];
|
||||||
char desc[TSDB_STEP_DESC_LEN];
|
char desc[TSDB_STEP_DESC_LEN];
|
||||||
char reserved2[64];
|
} SStartupMsg;
|
||||||
} SStartupStep;
|
|
||||||
|
|
||||||
// mq related
|
// mq related
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
|
|
@ -42,7 +42,7 @@ void dnodeCleanup();
|
||||||
|
|
||||||
EDnStat dnodeGetRunStat();
|
EDnStat dnodeGetRunStat();
|
||||||
void dnodeSetRunStat();
|
void dnodeSetRunStat();
|
||||||
void dnodeGetStartup(SStartupStep *);
|
void dnodeGetStartup(SStartupMsg *);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
|
|
@ -448,22 +448,27 @@ static void dnodeProcessConfigDnodeReq(SRpcMsg *pMsg) {
|
||||||
static void dnodeProcessStartupReq(SRpcMsg *pMsg) {
|
static void dnodeProcessStartupReq(SRpcMsg *pMsg) {
|
||||||
dInfo("startup msg is received, cont:%s", (char *)pMsg->pCont);
|
dInfo("startup msg is received, cont:%s", (char *)pMsg->pCont);
|
||||||
|
|
||||||
SStartupStep *pStep = rpcMallocCont(sizeof(SStartupStep));
|
SStartupMsg *pStartup = rpcMallocCont(sizeof(SStartupMsg));
|
||||||
dnodeGetStartup(pStep);
|
dnodeGetStartup(pStartup);
|
||||||
|
|
||||||
dInfo("startup msg is sent, step:%s desc:%s finished:%d", pStep->name, pStep->desc, pStep->finished);
|
dInfo("startup msg is sent, step:%s desc:%s finished:%d", pStartup->name, pStartup->desc, pStartup->finished);
|
||||||
|
|
||||||
SRpcMsg rpcRsp = {.handle = pMsg->handle, .pCont = pStep, .contLen = sizeof(SStartupStep)};
|
SRpcMsg rpcRsp = {.handle = pMsg->handle, .pCont = pStartup, .contLen = sizeof(SStartupMsg)};
|
||||||
rpcSendResponse(&rpcRsp);
|
rpcSendResponse(&rpcRsp);
|
||||||
rpcFreeCont(pMsg->pCont);
|
rpcFreeCont(pMsg->pCont);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void *dnodeThreadRoutine(void *param) {
|
static void *dnodeThreadRoutine(void *param) {
|
||||||
int32_t ms = tsStatusInterval * 1000;
|
int32_t ms = tsStatusInterval * 1000;
|
||||||
|
|
||||||
while (!tsDnode.threadStop) {
|
while (!tsDnode.threadStop) {
|
||||||
taosMsleep(ms);
|
if (dnodeGetRunStat() != DN_RUN_STAT_RUNNING) {
|
||||||
|
continue;
|
||||||
|
} else {
|
||||||
dnodeSendStatusMsg();
|
dnodeSendStatusMsg();
|
||||||
}
|
}
|
||||||
|
taosMsleep(ms);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t dnodeInitDnode() {
|
int32_t dnodeInitDnode() {
|
||||||
|
|
|
@ -26,30 +26,30 @@
|
||||||
#include "wal.h"
|
#include "wal.h"
|
||||||
|
|
||||||
static struct {
|
static struct {
|
||||||
EDnStat runStatus;
|
SStartupMsg startup;
|
||||||
SStartupStep startup;
|
EDnStat runStat;
|
||||||
SSteps *steps;
|
SSteps *steps;
|
||||||
} tsInt;
|
} tsInt;
|
||||||
|
|
||||||
EDnStat dnodeGetRunStat() { return tsInt.runStatus; }
|
EDnStat dnodeGetRunStat() { return tsInt.runStat; }
|
||||||
|
|
||||||
void dnodeSetRunStat(EDnStat stat) { tsInt.runStatus = stat; }
|
void dnodeSetRunStat(EDnStat stat) { tsInt.runStat = stat; }
|
||||||
|
|
||||||
static void dnodeReportStartup(char *name, char *desc) {
|
static void dnodeReportStartup(char *name, char *desc) {
|
||||||
SStartupStep *startup = &tsInt.startup;
|
SStartupMsg *pStartup = &tsInt.startup;
|
||||||
tstrncpy(startup->name, name, strlen(startup->name));
|
tstrncpy(pStartup->name, name, strlen(pStartup->name));
|
||||||
tstrncpy(startup->desc, desc, strlen(startup->desc));
|
tstrncpy(pStartup->desc, desc, strlen(pStartup->desc));
|
||||||
startup->finished = 0;
|
pStartup->finished = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void dnodeReportStartupFinished(char *name, char *desc) {
|
static void dnodeReportStartupFinished(char *name, char *desc) {
|
||||||
SStartupStep *startup = &tsInt.startup;
|
SStartupMsg *pStartup = &tsInt.startup;
|
||||||
tstrncpy(startup->name, name, strlen(startup->name));
|
tstrncpy(pStartup->name, name, strlen(pStartup->name));
|
||||||
tstrncpy(startup->desc, desc, strlen(startup->desc));
|
tstrncpy(pStartup->desc, desc, strlen(pStartup->desc));
|
||||||
startup->finished = 1;
|
pStartup->finished = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void dnodeGetStartup(SStartupStep *pStep) { memcpy(pStep, &tsInt.startup, sizeof(SStartupStep)); }
|
void dnodeGetStartup(SStartupMsg *pStartup) { memcpy(pStartup, &tsInt.startup, sizeof(SStartupMsg)); }
|
||||||
|
|
||||||
static int32_t dnodeCheckRunning(char *dir) {
|
static int32_t dnodeCheckRunning(char *dir) {
|
||||||
char filepath[256] = {0};
|
char filepath[256] = {0};
|
||||||
|
@ -99,7 +99,7 @@ static int32_t dnodeInitDir() {
|
||||||
}
|
}
|
||||||
|
|
||||||
static int32_t dnodeInitMain() {
|
static int32_t dnodeInitMain() {
|
||||||
tsInt.runStatus = DN_RUN_STAT_STOPPED;
|
tsInt.runStat = DN_RUN_STAT_STOPPED;
|
||||||
tscEmbedded = 1;
|
tscEmbedded = 1;
|
||||||
taosIgnSIGPIPE();
|
taosIgnSIGPIPE();
|
||||||
taosBlockSIGPIPE();
|
taosBlockSIGPIPE();
|
||||||
|
|
|
@ -338,7 +338,7 @@ void *taosNetInitRpc(char *secretEncrypt, char spi) {
|
||||||
return pRpcConn;
|
return pRpcConn;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int32_t taosNetCheckRpc(const char* serverFqdn, uint16_t port, uint16_t pktLen, char spi, SStartupStep *pStep) {
|
static int32_t taosNetCheckRpc(const char* serverFqdn, uint16_t port, uint16_t pktLen, char spi, SStartupMsg *pStep) {
|
||||||
SRpcEpSet epSet;
|
SRpcEpSet epSet;
|
||||||
SRpcMsg reqMsg;
|
SRpcMsg reqMsg;
|
||||||
SRpcMsg rspMsg;
|
SRpcMsg rspMsg;
|
||||||
|
@ -374,7 +374,7 @@ static int32_t taosNetCheckRpc(const char* serverFqdn, uint16_t port, uint16_t p
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t code = 0;
|
int32_t code = 0;
|
||||||
if (pStep != NULL && rspMsg.pCont != NULL && rspMsg.contLen > 0 && rspMsg.contLen <= sizeof(SStartupStep)) {
|
if (pStep != NULL && rspMsg.pCont != NULL && rspMsg.contLen > 0 && rspMsg.contLen <= sizeof(SStartupMsg)) {
|
||||||
memcpy(pStep, rspMsg.pCont, rspMsg.contLen);
|
memcpy(pStep, rspMsg.pCont, rspMsg.contLen);
|
||||||
code = 1;
|
code = 1;
|
||||||
}
|
}
|
||||||
|
@ -384,8 +384,8 @@ static int32_t taosNetCheckRpc(const char* serverFqdn, uint16_t port, uint16_t p
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int32_t taosNetParseStartup(SStartupStep *pCont) {
|
static int32_t taosNetParseStartup(SStartupMsg *pCont) {
|
||||||
SStartupStep *pStep = pCont;
|
SStartupMsg *pStep = pCont;
|
||||||
uInfo("step:%s desc:%s", pStep->name, pStep->desc);
|
uInfo("step:%s desc:%s", pStep->name, pStep->desc);
|
||||||
|
|
||||||
if (pStep->finished) {
|
if (pStep->finished) {
|
||||||
|
@ -398,7 +398,7 @@ static int32_t taosNetParseStartup(SStartupStep *pCont) {
|
||||||
static void taosNetTestStartup(char *host, int32_t port) {
|
static void taosNetTestStartup(char *host, int32_t port) {
|
||||||
uInfo("check startup, host:%s port:%d\n", host, port);
|
uInfo("check startup, host:%s port:%d\n", host, port);
|
||||||
|
|
||||||
SStartupStep *pStep = malloc(sizeof(SStartupStep));
|
SStartupMsg *pStep = malloc(sizeof(SStartupMsg));
|
||||||
while (1) {
|
while (1) {
|
||||||
int32_t code = taosNetCheckRpc(host, port + TSDB_PORT_DNODEDNODE, 20, 0, pStep);
|
int32_t code = taosNetCheckRpc(host, port + TSDB_PORT_DNODEDNODE, 20, 0, pStep);
|
||||||
if (code > 0) {
|
if (code > 0) {
|
||||||
|
|
Loading…
Reference in New Issue