Merge pull request #6284 from taosdata/feature/TD-1920
[TD-1920]load mininal modules,and disable sync wal when compact mnode wal
This commit is contained in:
commit
7af1fccb5d
|
@ -86,6 +86,17 @@ static SStep tsDnodeSteps[] = {
|
||||||
{"dnode-telemetry", dnodeInitTelemetry, dnodeCleanupTelemetry},
|
{"dnode-telemetry", dnodeInitTelemetry, dnodeCleanupTelemetry},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static SStep tsDnodeCompactSteps[] = {
|
||||||
|
{"dnode-tfile", tfInit, tfCleanup},
|
||||||
|
{"dnode-storage", dnodeInitStorage, dnodeCleanupStorage},
|
||||||
|
{"dnode-eps", dnodeInitEps, dnodeCleanupEps},
|
||||||
|
{"dnode-wal", walInit, walCleanUp},
|
||||||
|
{"dnode-mread", dnodeInitMRead, NULL},
|
||||||
|
{"dnode-mwrite", dnodeInitMWrite, NULL},
|
||||||
|
{"dnode-mpeer", dnodeInitMPeer, NULL},
|
||||||
|
{"dnode-modules", dnodeInitModules, dnodeCleanupModules},
|
||||||
|
};
|
||||||
|
|
||||||
static int dnodeCreateDir(const char *dir) {
|
static int dnodeCreateDir(const char *dir) {
|
||||||
if (mkdir(dir, 0755) != 0 && errno != EEXIST) {
|
if (mkdir(dir, 0755) != 0 && errno != EEXIST) {
|
||||||
return -1;
|
return -1;
|
||||||
|
@ -95,13 +106,23 @@ static int dnodeCreateDir(const char *dir) {
|
||||||
}
|
}
|
||||||
|
|
||||||
static void dnodeCleanupComponents() {
|
static void dnodeCleanupComponents() {
|
||||||
int32_t stepSize = sizeof(tsDnodeSteps) / sizeof(SStep);
|
if (!tsCompactMnodeWal) {
|
||||||
dnodeStepCleanup(tsDnodeSteps, stepSize);
|
int32_t stepSize = sizeof(tsDnodeSteps) / sizeof(SStep);
|
||||||
|
dnodeStepCleanup(tsDnodeSteps, stepSize);
|
||||||
|
} else {
|
||||||
|
int32_t stepSize = sizeof(tsDnodeCompactSteps) / sizeof(SStep);
|
||||||
|
dnodeStepCleanup(tsDnodeCompactSteps, stepSize);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int32_t dnodeInitComponents() {
|
static int32_t dnodeInitComponents() {
|
||||||
int32_t stepSize = sizeof(tsDnodeSteps) / sizeof(SStep);
|
if (!tsCompactMnodeWal) {
|
||||||
return dnodeStepInit(tsDnodeSteps, stepSize);
|
int32_t stepSize = sizeof(tsDnodeSteps) / sizeof(SStep);
|
||||||
|
return dnodeStepInit(tsDnodeSteps, stepSize);
|
||||||
|
} else {
|
||||||
|
int32_t stepSize = sizeof(tsDnodeCompactSteps) / sizeof(SStep);
|
||||||
|
return dnodeStepInit(tsDnodeCompactSteps, stepSize);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int32_t dnodeInitTmr() {
|
static int32_t dnodeInitTmr() {
|
||||||
|
|
|
@ -121,7 +121,7 @@ int32_t mnodeStartSystem() {
|
||||||
|
|
||||||
int32_t mnodeInitSystem() {
|
int32_t mnodeInitSystem() {
|
||||||
mnodeInitTimer();
|
mnodeInitTimer();
|
||||||
if (mnodeNeedStart()) {
|
if (mnodeNeedStart() || tsCompactMnodeWal) {
|
||||||
return mnodeStartSystem();
|
return mnodeStartSystem();
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -690,7 +690,7 @@ static int32_t sdbProcessWrite(void *wparam, void *hparam, int32_t qtype, void *
|
||||||
pthread_mutex_unlock(&tsSdbMgmt.mutex);
|
pthread_mutex_unlock(&tsSdbMgmt.mutex);
|
||||||
|
|
||||||
// from app, row is created
|
// from app, row is created
|
||||||
if (pRow != NULL) {
|
if (pRow != NULL && tsCompactMnodeWal != 1) {
|
||||||
// forward to peers
|
// forward to peers
|
||||||
pRow->processedCount = 0;
|
pRow->processedCount = 0;
|
||||||
int32_t syncCode = syncForwardToPeer(tsSdbMgmt.sync, pHead, pRow, TAOS_QTYPE_RPC, false);
|
int32_t syncCode = syncForwardToPeer(tsSdbMgmt.sync, pHead, pRow, TAOS_QTYPE_RPC, false);
|
||||||
|
@ -713,7 +713,9 @@ static int32_t sdbProcessWrite(void *wparam, void *hparam, int32_t qtype, void *
|
||||||
actStr[action], sdbGetKeyStr(pTable, pHead->cont), pHead->version);
|
actStr[action], sdbGetKeyStr(pTable, pHead->cont), pHead->version);
|
||||||
|
|
||||||
// even it is WAL/FWD, it shall be called to update version in sync
|
// even it is WAL/FWD, it shall be called to update version in sync
|
||||||
syncForwardToPeer(tsSdbMgmt.sync, pHead, pRow, TAOS_QTYPE_RPC, false);
|
if (tsCompactMnodeWal != 1) {
|
||||||
|
syncForwardToPeer(tsSdbMgmt.sync, pHead, pRow, TAOS_QTYPE_RPC, false);
|
||||||
|
}
|
||||||
|
|
||||||
// from wal or forward msg, row not created, should add into hash
|
// from wal or forward msg, row not created, should add into hash
|
||||||
if (action == SDB_ACTION_INSERT) {
|
if (action == SDB_ACTION_INSERT) {
|
||||||
|
|
|
@ -3375,7 +3375,7 @@ static int32_t mnodeCompactSuperTables() {
|
||||||
.rowSize = sizeof(SSTableObj) + schemaSize,
|
.rowSize = sizeof(SSTableObj) + schemaSize,
|
||||||
};
|
};
|
||||||
|
|
||||||
mInfo("compact super %" PRIu64, pTable->uid);
|
//mInfo("compact super %" PRIu64, pTable->uid);
|
||||||
|
|
||||||
sdbInsertCompactRow(&row);
|
sdbInsertCompactRow(&row);
|
||||||
}
|
}
|
||||||
|
@ -3401,7 +3401,7 @@ static int32_t mnodeCompactChildTables() {
|
||||||
.pTable = tsChildTableSdb,
|
.pTable = tsChildTableSdb,
|
||||||
};
|
};
|
||||||
|
|
||||||
mInfo("compact child %" PRIu64 ":%d", pTable->uid, pTable->tid);
|
//mInfo("compact child %" PRIu64 ":%d", pTable->uid, pTable->tid);
|
||||||
|
|
||||||
sdbInsertCompactRow(&row);
|
sdbInsertCompactRow(&row);
|
||||||
}
|
}
|
||||||
|
|
|
@ -430,6 +430,8 @@ static int32_t walRestoreWalFile(SWal *pWal, void *pVnode, FWalWrite writeFp, ch
|
||||||
pWal->vgId, fileId, pHead->version, pWal->version, pHead->len, offset);
|
pWal->vgId, fileId, pHead->version, pWal->version, pHead->len, offset);
|
||||||
|
|
||||||
pWal->version = pHead->version;
|
pWal->version = pHead->version;
|
||||||
|
|
||||||
|
//wInfo("writeFp: %ld", offset);
|
||||||
(*writeFp)(pVnode, pHead, TAOS_QTYPE_WAL, NULL);
|
(*writeFp)(pVnode, pHead, TAOS_QTYPE_WAL, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue