Fix some mem errors and add dmstop while verify failed.
This commit is contained in:
parent
dbaa4349ea
commit
cb50b1e52c
|
@ -892,6 +892,9 @@ static int32_t taosAddServerCfg(SConfig *pCfg) {
|
|||
TAOS_CHECK_RETURN(cfgAddInt32(pCfg, "cacheLazyLoadThreshold", tsCacheLazyLoadThreshold, 0, 100000, CFG_SCOPE_SERVER, CFG_DYN_ENT_SERVER,CFG_CATEGORY_GLOBAL));
|
||||
|
||||
TAOS_CHECK_RETURN(cfgAddFloat(pCfg, "fPrecision", tsFPrecision, 0.0f, 100000.0f, CFG_SCOPE_SERVER, CFG_DYN_NONE,CFG_CATEGORY_GLOBAL));
|
||||
SConfigItem *pItem = NULL;
|
||||
TAOS_CHECK_GET_CFG_ITEM(pCfg, pItem, "fPrecision");
|
||||
tsFPrecision = pItem->fval;
|
||||
TAOS_CHECK_RETURN(cfgAddFloat(pCfg, "dPrecision", tsDPrecision, 0.0f, 1000000.0f, CFG_SCOPE_SERVER, CFG_DYN_NONE,CFG_CATEGORY_GLOBAL));
|
||||
TAOS_CHECK_RETURN(cfgAddInt32(pCfg, "maxRange", tsMaxRange, 0, 65536, CFG_SCOPE_SERVER, CFG_DYN_SERVER_LAZY,CFG_CATEGORY_GLOBAL));
|
||||
TAOS_CHECK_RETURN(cfgAddInt32(pCfg, "curRange", tsCurRange, 0, 65536, CFG_SCOPE_SERVER, CFG_DYN_NONE,CFG_CATEGORY_GLOBAL));
|
||||
|
@ -1998,6 +2001,8 @@ int32_t cfgDeserialize(SArray *array, char *buf, bool isGlobal) {
|
|||
}
|
||||
}
|
||||
}
|
||||
_exit:
|
||||
cJSON_Delete(pRoot);
|
||||
return TSDB_CODE_SUCCESS;
|
||||
}
|
||||
|
||||
|
|
|
@ -315,6 +315,7 @@ static void dmProcessConfigRsp(SDnodeMgmt *pMgmt, SRpcMsg *pRsp) {
|
|||
} else {
|
||||
// log the difference configurations
|
||||
printConfigNotMatch(configRsp.array);
|
||||
dmStop();
|
||||
goto _exit;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -387,7 +387,8 @@ int32_t cfgUpdateItem(SConfigItem *pItem, SConfigObj *obj) {
|
|||
if (obj->str != NULL) {
|
||||
taosMemoryFree(pItem->str);
|
||||
pItem->str = taosMemoryMalloc(strlen(obj->str) + 1);
|
||||
tstrncpy(pItem->str, obj->str, strlen(obj->str) + 1);
|
||||
tstrncpy(pItem->str, obj->str, strlen(obj->str));
|
||||
pItem->str[strlen(obj->str)] = 0;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -107,32 +107,31 @@ int32_t cfgUpdateFromArray(SConfig *pCfg, SArray *pArgs) {
|
|||
(void)taosThreadMutexUnlock(&pCfg->lock);
|
||||
TAOS_RETURN(TSDB_CODE_CFG_NOT_FOUND);
|
||||
}
|
||||
char value[30];
|
||||
switch (pItemNew->dtype) {
|
||||
case CFG_DTYPE_BOOL:
|
||||
strncpy(value, pItemNew->bval ? "true" : "false", sizeof(value) - 1);
|
||||
pItemOld->bval = pItemNew->bval;
|
||||
break;
|
||||
case CFG_DTYPE_INT32:
|
||||
sprintf(value, "%d", pItemNew->i32);
|
||||
pItemOld->i32 = pItemNew->i32;
|
||||
break;
|
||||
case CFG_DTYPE_INT64:
|
||||
sprintf(value, "%" PRId64, pItemNew->i64);
|
||||
pItemOld->i64 = pItemNew->i64;
|
||||
break;
|
||||
case CFG_DTYPE_FLOAT:
|
||||
sprintf(value, "%f", pItemNew->fval);
|
||||
case CFG_DTYPE_DOUBLE:
|
||||
pItemOld->fval = pItemNew->fval;
|
||||
break;
|
||||
case CFG_DTYPE_STRING:
|
||||
case CFG_DTYPE_DIR:
|
||||
case CFG_DTYPE_LOCALE:
|
||||
case CFG_DTYPE_CHARSET:
|
||||
case CFG_DTYPE_TIMEZONE:
|
||||
strcpy(value, pItemNew->str);
|
||||
taosMemoryFree(pItemOld->str);
|
||||
pItemOld->str = taosStrdup(pItemNew->str);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
value[sizeof(value) - 1] = '\0';
|
||||
|
||||
TAOS_CHECK_RETURN(cfgSetItemVal(pItemOld, pItemNew->name, value, CFG_STYPE_ARG_LIST));
|
||||
|
||||
(void)taosThreadMutexUnlock(&pCfg->lock);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue