[TD-369] fix bug while alter db
This commit is contained in:
parent
573f193351
commit
b3db7efcbb
|
@ -4823,7 +4823,7 @@ static int32_t setTimePrecision(SSqlCmd* pCmd, SCMCreateDbMsg* pMsg, SCreateDBIn
|
||||||
static void setCreateDBOption(SCMCreateDbMsg* pMsg, SCreateDBInfo* pCreateDb) {
|
static void setCreateDBOption(SCMCreateDbMsg* pMsg, SCreateDBInfo* pCreateDb) {
|
||||||
pMsg->maxTables = htonl(pCreateDb->maxTablesPerVnode);
|
pMsg->maxTables = htonl(pCreateDb->maxTablesPerVnode);
|
||||||
pMsg->cacheBlockSize = htonl(pCreateDb->cacheBlockSize);
|
pMsg->cacheBlockSize = htonl(pCreateDb->cacheBlockSize);
|
||||||
pMsg->numOfBlocks = htonl(pCreateDb->numOfBlocks);
|
pMsg->totalBlocks = htonl(pCreateDb->numOfBlocks);
|
||||||
pMsg->daysPerFile = htonl(pCreateDb->daysPerFile);
|
pMsg->daysPerFile = htonl(pCreateDb->daysPerFile);
|
||||||
pMsg->commitTime = htonl(pCreateDb->commitTime);
|
pMsg->commitTime = htonl(pCreateDb->commitTime);
|
||||||
pMsg->minRowsPerFileBlock = htonl(pCreateDb->minRowsPerBlock);
|
pMsg->minRowsPerFileBlock = htonl(pCreateDb->minRowsPerBlock);
|
||||||
|
|
|
@ -485,20 +485,20 @@ typedef struct {
|
||||||
typedef struct {
|
typedef struct {
|
||||||
char acct[TSDB_USER_LEN + 1];
|
char acct[TSDB_USER_LEN + 1];
|
||||||
char db[TSDB_DB_NAME_LEN + 1];
|
char db[TSDB_DB_NAME_LEN + 1];
|
||||||
int32_t maxTables;
|
|
||||||
int32_t cacheBlockSize; //MB
|
int32_t cacheBlockSize; //MB
|
||||||
int32_t numOfBlocks;
|
int32_t totalBlocks;
|
||||||
|
int32_t maxTables;
|
||||||
int32_t daysPerFile;
|
int32_t daysPerFile;
|
||||||
|
int32_t daysToKeep;
|
||||||
int32_t daysToKeep1;
|
int32_t daysToKeep1;
|
||||||
int32_t daysToKeep2;
|
int32_t daysToKeep2;
|
||||||
int32_t daysToKeep;
|
|
||||||
int32_t commitTime;
|
|
||||||
int32_t minRowsPerFileBlock;
|
int32_t minRowsPerFileBlock;
|
||||||
int32_t maxRowsPerFileBlock;
|
int32_t maxRowsPerFileBlock;
|
||||||
|
int32_t commitTime;
|
||||||
|
uint8_t precision; // time resolution
|
||||||
int8_t compression;
|
int8_t compression;
|
||||||
int8_t walLevel;
|
int8_t walLevel;
|
||||||
int8_t replications;
|
int8_t replications;
|
||||||
uint8_t precision; // time resolution
|
|
||||||
int8_t ignoreExist;
|
int8_t ignoreExist;
|
||||||
} SCMCreateDbMsg, SCMAlterDbMsg;
|
} SCMCreateDbMsg, SCMAlterDbMsg;
|
||||||
|
|
||||||
|
@ -563,9 +563,9 @@ typedef struct {
|
||||||
typedef struct {
|
typedef struct {
|
||||||
uint32_t vgId;
|
uint32_t vgId;
|
||||||
int32_t cfgVersion;
|
int32_t cfgVersion;
|
||||||
|
int32_t maxTables;
|
||||||
int32_t cacheBlockSize;
|
int32_t cacheBlockSize;
|
||||||
int32_t totalBlocks;
|
int32_t totalBlocks;
|
||||||
int32_t maxTables;
|
|
||||||
int32_t daysPerFile;
|
int32_t daysPerFile;
|
||||||
int32_t daysToKeep;
|
int32_t daysToKeep;
|
||||||
int32_t daysToKeep1;
|
int32_t daysToKeep1;
|
||||||
|
|
|
@ -187,11 +187,13 @@ static int32_t mgmtCheckDbCfg(SDbCfg *pCfg) {
|
||||||
if (pCfg->cacheBlockSize < TSDB_MIN_CACHE_BLOCK_SIZE || pCfg->cacheBlockSize > TSDB_MAX_CACHE_BLOCK_SIZE) {
|
if (pCfg->cacheBlockSize < TSDB_MIN_CACHE_BLOCK_SIZE || pCfg->cacheBlockSize > TSDB_MAX_CACHE_BLOCK_SIZE) {
|
||||||
mError("invalid db option cacheBlockSize:%d valid range: [%d, %d]", pCfg->cacheBlockSize, TSDB_MIN_CACHE_BLOCK_SIZE,
|
mError("invalid db option cacheBlockSize:%d valid range: [%d, %d]", pCfg->cacheBlockSize, TSDB_MIN_CACHE_BLOCK_SIZE,
|
||||||
TSDB_MAX_CACHE_BLOCK_SIZE);
|
TSDB_MAX_CACHE_BLOCK_SIZE);
|
||||||
|
return TSDB_CODE_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pCfg->totalBlocks < TSDB_MIN_TOTAL_BLOCKS || pCfg->totalBlocks > TSDB_MAX_TOTAL_BLOCKS) {
|
if (pCfg->totalBlocks < TSDB_MIN_TOTAL_BLOCKS || pCfg->totalBlocks > TSDB_MAX_TOTAL_BLOCKS) {
|
||||||
mError("invalid db option totalBlocks:%d valid range: [%d, %d]", pCfg->totalBlocks, TSDB_MIN_TOTAL_BLOCKS,
|
mError("invalid db option totalBlocks:%d valid range: [%d, %d]", pCfg->totalBlocks, TSDB_MIN_TOTAL_BLOCKS,
|
||||||
TSDB_MAX_TOTAL_BLOCKS);
|
TSDB_MAX_TOTAL_BLOCKS);
|
||||||
|
return TSDB_CODE_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pCfg->maxTables < TSDB_MIN_TABLES || pCfg->maxTables > TSDB_MAX_TABLES) {
|
if (pCfg->maxTables < TSDB_MIN_TABLES || pCfg->maxTables > TSDB_MAX_TABLES) {
|
||||||
|
@ -206,18 +208,22 @@ static int32_t mgmtCheckDbCfg(SDbCfg *pCfg) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pCfg->daysToKeep < TSDB_MIN_KEEP || pCfg->daysToKeep > TSDB_MAX_KEEP) {
|
if (pCfg->daysToKeep < TSDB_MIN_KEEP || pCfg->daysToKeep > TSDB_MAX_KEEP) {
|
||||||
mError("invalid db option daysToKeep:%d", pCfg->daysToKeep);
|
mError("invalid db option daysToKeep:%d valid range: [%d, %d]", pCfg->daysToKeep, TSDB_MIN_KEEP, TSDB_MAX_KEEP);
|
||||||
return TSDB_CODE_INVALID_OPTION;
|
return TSDB_CODE_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pCfg->daysToKeep < pCfg->daysPerFile) {
|
if (pCfg->daysToKeep < pCfg->daysPerFile) {
|
||||||
mError("invalid db option daysToKeep:%d daysPerFile:%d", pCfg->daysToKeep, pCfg->daysPerFile);
|
mError("invalid db option daysToKeep:%d should larger than daysPerFile:%d", pCfg->daysToKeep, pCfg->daysPerFile);
|
||||||
return TSDB_CODE_INVALID_OPTION;
|
return TSDB_CODE_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pCfg->minRowsPerFileBlock < TSDB_MIN_MIN_ROW_FBLOCK || pCfg->minRowsPerFileBlock > TSDB_MAX_MIN_ROW_FBLOCK) {
|
if (pCfg->daysToKeep2 < TSDB_MIN_KEEP || pCfg->daysToKeep2 > pCfg->daysToKeep) {
|
||||||
mError("invalid db option minRowsPerFileBlock:%d valid range: [%d, %d]", pCfg->minRowsPerFileBlock,
|
mError("invalid db option daysToKeep2:%d valid range: [%d, %d]", pCfg->daysToKeep, TSDB_MIN_KEEP, pCfg->daysToKeep);
|
||||||
TSDB_MIN_MIN_ROW_FBLOCK, TSDB_MAX_MIN_ROW_FBLOCK);
|
return TSDB_CODE_INVALID_OPTION;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pCfg->daysToKeep1 < TSDB_MIN_KEEP || pCfg->daysToKeep1 > pCfg->daysToKeep2) {
|
||||||
|
mError("invalid db option daysToKeep1:%d valid range: [%d, %d]", pCfg->daysToKeep1, TSDB_MIN_KEEP, pCfg->daysToKeep2);
|
||||||
return TSDB_CODE_INVALID_OPTION;
|
return TSDB_CODE_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -227,9 +233,9 @@ static int32_t mgmtCheckDbCfg(SDbCfg *pCfg) {
|
||||||
return TSDB_CODE_INVALID_OPTION;
|
return TSDB_CODE_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pCfg->minRowsPerFileBlock > pCfg->maxRowsPerFileBlock) {
|
if (pCfg->minRowsPerFileBlock < TSDB_MIN_MAX_ROW_FBLOCK || pCfg->minRowsPerFileBlock > pCfg->maxRowsPerFileBlock) {
|
||||||
mError("invalid db option minRowsPerFileBlock:%d maxRowsPerFileBlock:%d", pCfg->minRowsPerFileBlock,
|
mError("invalid db option minRowsPerFileBlock:%d valid range: [%d, %d]", pCfg->minRowsPerFileBlock,
|
||||||
pCfg->maxRowsPerFileBlock);
|
TSDB_MIN_MAX_ROW_FBLOCK, pCfg->maxRowsPerFileBlock);
|
||||||
return TSDB_CODE_INVALID_OPTION;
|
return TSDB_CODE_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -252,7 +258,7 @@ static int32_t mgmtCheckDbCfg(SDbCfg *pCfg) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pCfg->walLevel < TSDB_MIN_WAL_LEVEL || pCfg->walLevel > TSDB_MAX_WAL_LEVEL) {
|
if (pCfg->walLevel < TSDB_MIN_WAL_LEVEL || pCfg->walLevel > TSDB_MAX_WAL_LEVEL) {
|
||||||
mError("invalid db option walLevel:%d, only 0-2 allowed", pCfg->walLevel);
|
mError("invalid db option walLevel:%d, valid range: [%d, %d]", pCfg->walLevel, TSDB_MIN_WAL_LEVEL, TSDB_MAX_WAL_LEVEL);
|
||||||
return TSDB_CODE_INVALID_OPTION;
|
return TSDB_CODE_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -262,6 +268,11 @@ static int32_t mgmtCheckDbCfg(SDbCfg *pCfg) {
|
||||||
return TSDB_CODE_INVALID_OPTION;
|
return TSDB_CODE_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (pCfg->replications > 1 && pCfg->walLevel <= TSDB_MIN_WAL_LEVEL) {
|
||||||
|
mError("invalid db option walLevel:%d must > 0, while replica:%d > 1", pCfg->walLevel, pCfg->replications);
|
||||||
|
return TSDB_CODE_INVALID_OPTION;
|
||||||
|
}
|
||||||
|
|
||||||
#ifndef _SYNC
|
#ifndef _SYNC
|
||||||
if (pCfg->replications != 1) {
|
if (pCfg->replications != 1) {
|
||||||
mError("invalid db option replications:%d can only be 1 in this version", pCfg->replications);
|
mError("invalid db option replications:%d can only be 1 in this version", pCfg->replications);
|
||||||
|
@ -314,13 +325,13 @@ static int32_t mgmtCreateDb(SAcctObj *pAcct, SCMCreateDbMsg *pCreate) {
|
||||||
pDb->createdTime = taosGetTimestampMs();
|
pDb->createdTime = taosGetTimestampMs();
|
||||||
pDb->cfg = (SDbCfg) {
|
pDb->cfg = (SDbCfg) {
|
||||||
.cacheBlockSize = pCreate->cacheBlockSize,
|
.cacheBlockSize = pCreate->cacheBlockSize,
|
||||||
.totalBlocks = pCreate->numOfBlocks,
|
.totalBlocks = pCreate->totalBlocks,
|
||||||
.maxTables = pCreate->maxTables,
|
.maxTables = pCreate->maxTables,
|
||||||
.daysPerFile = pCreate->daysPerFile,
|
.daysPerFile = pCreate->daysPerFile,
|
||||||
.daysToKeep = pCreate->daysToKeep,
|
.daysToKeep = pCreate->daysToKeep,
|
||||||
.daysToKeep1 = pCreate->daysToKeep1,
|
.daysToKeep1 = pCreate->daysToKeep1,
|
||||||
.daysToKeep2 = pCreate->daysToKeep2,
|
.daysToKeep2 = pCreate->daysToKeep2,
|
||||||
.minRowsPerFileBlock = pCreate->maxRowsPerFileBlock,
|
.minRowsPerFileBlock = pCreate->minRowsPerFileBlock,
|
||||||
.maxRowsPerFileBlock = pCreate->maxRowsPerFileBlock,
|
.maxRowsPerFileBlock = pCreate->maxRowsPerFileBlock,
|
||||||
.commitTime = pCreate->commitTime,
|
.commitTime = pCreate->commitTime,
|
||||||
.precision = pCreate->precision,
|
.precision = pCreate->precision,
|
||||||
|
@ -735,7 +746,7 @@ static void mgmtProcessCreateDbMsg(SQueuedMsg *pMsg) {
|
||||||
|
|
||||||
pCreate->maxTables = htonl(pCreate->maxTables);
|
pCreate->maxTables = htonl(pCreate->maxTables);
|
||||||
pCreate->cacheBlockSize = htonl(pCreate->cacheBlockSize);
|
pCreate->cacheBlockSize = htonl(pCreate->cacheBlockSize);
|
||||||
pCreate->numOfBlocks = htonl(pCreate->numOfBlocks);
|
pCreate->totalBlocks = htonl(pCreate->totalBlocks);
|
||||||
pCreate->daysPerFile = htonl(pCreate->daysPerFile);
|
pCreate->daysPerFile = htonl(pCreate->daysPerFile);
|
||||||
pCreate->daysToKeep = htonl(pCreate->daysToKeep);
|
pCreate->daysToKeep = htonl(pCreate->daysToKeep);
|
||||||
pCreate->daysToKeep1 = htonl(pCreate->daysToKeep1);
|
pCreate->daysToKeep1 = htonl(pCreate->daysToKeep1);
|
||||||
|
@ -763,37 +774,47 @@ static void mgmtProcessCreateDbMsg(SQueuedMsg *pMsg) {
|
||||||
|
|
||||||
static SDbCfg mgmtGetAlterDbOption(SDbObj *pDb, SCMAlterDbMsg *pAlter) {
|
static SDbCfg mgmtGetAlterDbOption(SDbObj *pDb, SCMAlterDbMsg *pAlter) {
|
||||||
SDbCfg newCfg = pDb->cfg;
|
SDbCfg newCfg = pDb->cfg;
|
||||||
int32_t cacheBlockSize = htonl(pAlter->daysToKeep);
|
int32_t maxTables = htonl(pAlter->maxTables);
|
||||||
int32_t totalBlocks = htonl(pAlter->numOfBlocks);
|
int32_t cacheBlockSize = htonl(pAlter->cacheBlockSize);
|
||||||
int32_t maxTables = htonl(pAlter->maxTables);
|
int32_t totalBlocks = htonl(pAlter->totalBlocks);
|
||||||
int32_t daysToKeep = htonl(pAlter->daysToKeep);
|
int32_t daysPerFile = htonl(pAlter->daysPerFile);
|
||||||
int32_t daysToKeep1 = htonl(pAlter->daysToKeep1);
|
int32_t daysToKeep = htonl(pAlter->daysToKeep);
|
||||||
int32_t daysToKeep2 = htonl(pAlter->daysToKeep2);
|
int32_t daysToKeep1 = htonl(pAlter->daysToKeep1);
|
||||||
int8_t compression = pAlter->compression;
|
int32_t daysToKeep2 = htonl(pAlter->daysToKeep2);
|
||||||
int8_t replications = pAlter->replications;
|
int32_t minRows = htonl(pAlter->minRowsPerFileBlock);
|
||||||
int8_t walLevel = pAlter->walLevel;
|
int32_t maxRows = htonl(pAlter->maxRowsPerFileBlock);
|
||||||
|
int32_t commitTime = htonl(pAlter->commitTime);
|
||||||
|
int8_t compression = pAlter->compression;
|
||||||
|
int8_t walLevel = pAlter->walLevel;
|
||||||
|
int8_t replications = pAlter->replications;
|
||||||
|
int8_t precision = pAlter->precision;
|
||||||
|
|
||||||
terrno = TSDB_CODE_SUCCESS;
|
terrno = TSDB_CODE_SUCCESS;
|
||||||
|
|
||||||
if (cacheBlockSize > 0 && cacheBlockSize != pDb->cfg.cacheBlockSize) {
|
if (cacheBlockSize > 0 && cacheBlockSize != pDb->cfg.cacheBlockSize) {
|
||||||
mTrace("db:%s, cache:%d change to %d", pDb->name, pDb->cfg.cacheBlockSize, cacheBlockSize);
|
mError("db:%s, can't alter cache option", pDb->name);
|
||||||
newCfg.cacheBlockSize = cacheBlockSize;
|
terrno = TSDB_CODE_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (totalBlocks > 0 && totalBlocks != pDb->cfg.totalBlocks) {
|
if (totalBlocks > 0 && totalBlocks != pDb->cfg.totalBlocks) {
|
||||||
mTrace("db:%s, blocks:%d change to %d", pDb->name, pDb->cfg.totalBlocks, totalBlocks);
|
mPrint("db:%s, blocks:%d change to %d", pDb->name, pDb->cfg.totalBlocks, totalBlocks);
|
||||||
newCfg.totalBlocks = totalBlocks;
|
newCfg.totalBlocks = totalBlocks;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (maxTables > 0 && maxTables != pDb->cfg.maxTables) {
|
if (maxTables > 0) {
|
||||||
mTrace("db:%s, tables:%d change to %d", pDb->name, pDb->cfg.maxTables, maxTables);
|
mPrint("db:%s, maxTables:%d change to %d", pDb->name, pDb->cfg.maxTables, maxTables);
|
||||||
newCfg.maxTables = maxTables;
|
newCfg.maxTables = maxTables;
|
||||||
if (newCfg.maxTables < pDb->cfg.maxTables) {
|
if (newCfg.maxTables < pDb->cfg.maxTables) {
|
||||||
mTrace("db:%s, tables:%d should larger than origin:%d", pDb->name, newCfg.maxTables, pDb->cfg.maxTables);
|
mError("db:%s, tables:%d should larger than origin:%d", pDb->name, newCfg.maxTables, pDb->cfg.maxTables);
|
||||||
terrno = TSDB_CODE_INVALID_OPTION;
|
terrno = TSDB_CODE_INVALID_OPTION;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (daysPerFile > 0 && daysPerFile != pDb->cfg.daysPerFile) {
|
||||||
|
mError("db:%s, can't alter days option", pDb->name);
|
||||||
|
terrno = TSDB_CODE_INVALID_OPTION;
|
||||||
|
}
|
||||||
|
|
||||||
if (daysToKeep > 0 && daysToKeep != pDb->cfg.daysToKeep) {
|
if (daysToKeep > 0 && daysToKeep != pDb->cfg.daysToKeep) {
|
||||||
mTrace("db:%s, daysToKeep:%d change to %d", pDb->name, pDb->cfg.daysToKeep, daysToKeep);
|
mTrace("db:%s, daysToKeep:%d change to %d", pDb->name, pDb->cfg.daysToKeep, daysToKeep);
|
||||||
newCfg.daysToKeep = daysToKeep;
|
newCfg.daysToKeep = daysToKeep;
|
||||||
|
@ -809,15 +830,45 @@ static SDbCfg mgmtGetAlterDbOption(SDbObj *pDb, SCMAlterDbMsg *pAlter) {
|
||||||
newCfg.daysToKeep2 = daysToKeep2;
|
newCfg.daysToKeep2 = daysToKeep2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (minRows > 0 && minRows != pDb->cfg.minRowsPerFileBlock) {
|
||||||
|
mError("db:%s, can't alter minRows option", pDb->name);
|
||||||
|
terrno = TSDB_CODE_INVALID_OPTION;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (maxRows > 0 && maxRows != pDb->cfg.maxRowsPerFileBlock) {
|
||||||
|
mError("db:%s, can't alter maxRows option", pDb->name);
|
||||||
|
terrno = TSDB_CODE_INVALID_OPTION;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (commitTime > 0 && commitTime != pDb->cfg.commitTime) {
|
||||||
|
mError("db:%s, can't alter commitTime option", pDb->name);
|
||||||
|
terrno = TSDB_CODE_INVALID_OPTION;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (precision > 0 && precision != pDb->cfg.precision) {
|
||||||
|
mError("db:%s, can't alter precision option", pDb->name);
|
||||||
|
terrno = TSDB_CODE_INVALID_OPTION;
|
||||||
|
}
|
||||||
|
|
||||||
if (compression >= 0 && compression != pDb->cfg.compression) {
|
if (compression >= 0 && compression != pDb->cfg.compression) {
|
||||||
mTrace("db:%s, compression:%d change to %d", pDb->name, pDb->cfg.compression, compression);
|
mTrace("db:%s, compression:%d change to %d", pDb->name, pDb->cfg.compression, compression);
|
||||||
newCfg.compression = compression;
|
newCfg.compression = compression;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (walLevel > 0 && walLevel != pDb->cfg.walLevel) {
|
||||||
|
mError("db:%s, can't alter walLevel option", pDb->name);
|
||||||
|
terrno = TSDB_CODE_INVALID_OPTION;
|
||||||
|
}
|
||||||
|
|
||||||
if (replications > 0 && replications != pDb->cfg.replications) {
|
if (replications > 0 && replications != pDb->cfg.replications) {
|
||||||
mTrace("db:%s, replications:%d change to %d", pDb->name, pDb->cfg.replications, replications);
|
mTrace("db:%s, replications:%d change to %d", pDb->name, pDb->cfg.replications, replications);
|
||||||
newCfg.replications = replications;
|
newCfg.replications = replications;
|
||||||
|
|
||||||
|
if (replications > 1 && pDb->cfg.walLevel <= TSDB_MIN_WAL_LEVEL) {
|
||||||
|
mError("db:%s, walLevel:%d must > 0, while replica:%d > 1", pDb->name, pDb->cfg.walLevel, replications);
|
||||||
|
terrno = TSDB_CODE_INVALID_OPTION;
|
||||||
|
}
|
||||||
|
|
||||||
if (replications > mgmtGetDnodesNum()) {
|
if (replications > mgmtGetDnodesNum()) {
|
||||||
mError("db:%s, no enough dnode to change replica:%d", pDb->name, replications);
|
mError("db:%s, no enough dnode to change replica:%d", pDb->name, replications);
|
||||||
terrno = TSDB_CODE_NO_ENOUGH_DNODES;
|
terrno = TSDB_CODE_NO_ENOUGH_DNODES;
|
||||||
|
@ -829,11 +880,6 @@ static SDbCfg mgmtGetAlterDbOption(SDbObj *pDb, SCMAlterDbMsg *pAlter) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (walLevel >= 0 && (walLevel < TSDB_MIN_WAL_LEVEL || walLevel > TSDB_MAX_WAL_LEVEL)) {
|
|
||||||
mError("db:%s, wal level %d should be between 0-2, origin:%d", pDb->name, walLevel, pDb->cfg.walLevel);
|
|
||||||
terrno = TSDB_CODE_INVALID_OPTION;
|
|
||||||
}
|
|
||||||
|
|
||||||
return newCfg;
|
return newCfg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,69 @@
|
||||||
|
system sh/stop_dnodes.sh
|
||||||
|
system sh/deploy.sh -n dnode1 -i 1
|
||||||
|
system sh/cfg.sh -n dnode1 -c wallevel -v 0
|
||||||
|
system sh/cfg.sh -n dnode1 -c numOfTotalVnodes -v 4
|
||||||
|
system sh/cfg.sh -n dnode1 -c maxtablesPerVnode -v 1000
|
||||||
|
|
||||||
|
system sh/exec.sh -n dnode1 -s start
|
||||||
|
|
||||||
|
sleep 3000
|
||||||
|
sql connect
|
||||||
|
print ============================ dnode1 start
|
||||||
|
|
||||||
|
sql create database db maxTables 500 cache 2 blocks 4 days 10 keep 20 minRows 300 maxRows 400 ctime 120 precision 'ms' comp 2 wal 1 replica 1
|
||||||
|
sql show databases
|
||||||
|
print $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
|
||||||
|
if $data00 != db then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
if $data02 != 0 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
if $data03 != 0 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
if $data04 != 1 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
if $data05 != 10 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
if $data06 != 20,20,20 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
if $data07 != 500 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
if $data08 != 2 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
if $data09 != 4 then
|
||||||
|
return -1
|
||||||
|
endi
|
||||||
|
|
||||||
|
print =============== step2
|
||||||
|
system sh/exec.sh -n dnode1 -s stop -x SIGINT
|
||||||
|
return
|
||||||
|
sql_error alter database db cache 256
|
||||||
|
sql_error alter database db blocks 1
|
||||||
|
sql_error alter database db maxTables 10
|
||||||
|
sql_error alter database db days 10
|
||||||
|
sql_error alter database db keep 10
|
||||||
|
sql_error alter database db minRows 350
|
||||||
|
sql_error alter database db minRows 550
|
||||||
|
sql_error alter database db ctime 5000
|
||||||
|
sql_error alter database db precision "us"
|
||||||
|
sql_error alter database db comp 3
|
||||||
|
sql_error alter database db walLevel 1
|
||||||
|
sql_error alter database db replica 2
|
||||||
|
|
||||||
|
|
||||||
|
print ============== step3
|
||||||
|
sql alter database db maxTables 1000
|
||||||
|
sql alter database db comp 1
|
||||||
|
sql alter database db blocks 40
|
||||||
|
sql alter database db keep 30
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#system sh/exec.sh -n dnode1 -s stop -x SIGINT
|
|
@ -43,23 +43,24 @@ cd ../../../debug; make
|
||||||
./test.sh -f general/compute/sum.sim
|
./test.sh -f general/compute/sum.sim
|
||||||
./test.sh -f general/compute/top.sim
|
./test.sh -f general/compute/top.sim
|
||||||
|
|
||||||
|
./test.sh -f general/db/alter_option.sim
|
||||||
./test.sh -f general/db/basic.sim
|
./test.sh -f general/db/basic.sim
|
||||||
./test.sh -f general/db/basic1.sim
|
./test.sh -f general/db/basic1.sim
|
||||||
./test.sh -f general/db/basic2.sim
|
./test.sh -f general/db/basic2.sim
|
||||||
./test.sh -f general/db/basic3.sim
|
./test.sh -f general/db/basic3.sim
|
||||||
./test.sh -f general/db/basic4.sim
|
./test.sh -f general/db/basic4.sim
|
||||||
./test.sh -f general/db/basic5.sim
|
./test.sh -f general/db/basic5.sim
|
||||||
./test.sh -f general/db/delete.sim
|
|
||||||
./test.sh -f general/db/delete_reuse1.sim
|
./test.sh -f general/db/delete_reuse1.sim
|
||||||
./test.sh -f general/db/delete_reuse2.sim
|
./test.sh -f general/db/delete_reuse2.sim
|
||||||
./test.sh -f general/db/delete_reusevnode.sim
|
./test.sh -f general/db/delete_reusevnode.sim
|
||||||
#hongze ./test.sh -f general/db/delete_reusevnode2.sim
|
#hongze ./test.sh -f general/db/delete_reusevnode2.sim
|
||||||
./test.sh -f general/db/delete_writing1.sim
|
./test.sh -f general/db/delete_writing1.sim
|
||||||
./test.sh -f general/db/delete_writing2.sim
|
./test.sh -f general/db/delete_writing2.sim
|
||||||
|
./test.sh -f general/db/delete.sim
|
||||||
./test.sh -f general/db/len.sim
|
./test.sh -f general/db/len.sim
|
||||||
#liao ./test.sh -f general/db/vnodes.sim
|
|
||||||
./test.sh -f general/db/repeat.sim
|
./test.sh -f general/db/repeat.sim
|
||||||
./test.sh -f general/db/tables.sim
|
./test.sh -f general/db/tables.sim
|
||||||
|
#liao ./test.sh -f general/db/vnodes.sim
|
||||||
|
|
||||||
./test.sh -f general/field/2.sim
|
./test.sh -f general/field/2.sim
|
||||||
./test.sh -f general/field/3.sim
|
./test.sh -f general/field/3.sim
|
||||||
|
@ -250,17 +251,17 @@ cd ../../../debug; make
|
||||||
./test.sh -u -f unique/cluster/balance3.sim
|
./test.sh -u -f unique/cluster/balance3.sim
|
||||||
./test.sh -u -f unique/cluster/cache.sim
|
./test.sh -u -f unique/cluster/cache.sim
|
||||||
|
|
||||||
#jeff ./test.sh -u -f unique/column/replica3.sim
|
./test.sh -u -f unique/column/replica3.sim
|
||||||
|
|
||||||
#liao wait ./test.sh -u -f unique/db/commit.sim
|
#liao wait ./test.sh -u -f unique/db/commit.sim
|
||||||
./test.sh -u -f unique/db/delete.sim
|
./test.sh -u -f unique/db/delete.sim
|
||||||
./test.sh -u -f unique/db/delete_part.sim
|
./test.sh -u -f unique/db/delete_part.sim
|
||||||
./test.sh -u -f unique/db/replica_add12.sim
|
./test.sh -u -f unique/db/replica_add12.sim
|
||||||
#hongze ./test.sh -u -f unique/db/replica_add13.sim
|
./test.sh -u -f unique/db/replica_add13.sim
|
||||||
#hongze wait ./test.sh -u -f unique/db/replica_add23.sim
|
#hongze wait ./test.sh -u -f unique/db/replica_add23.sim
|
||||||
#hongze wait ./test.sh -u -f unique/db/replica_reduce21.sim
|
./test.sh -u -f unique/db/replica_reduce21.sim
|
||||||
./test.sh -u -f unique/db/replica_reduce32.sim
|
./test.sh -u -f unique/db/replica_reduce32.sim
|
||||||
#hongze wait /test.sh -u -f unique/db/replica_reduce31.sim
|
./test.sh -u -f unique/db/replica_reduce31.sim
|
||||||
./test.sh -u -f unique/db/replica_part.sim
|
./test.sh -u -f unique/db/replica_part.sim
|
||||||
|
|
||||||
./test.sh -u -f unique/dnode/balance1.sim
|
./test.sh -u -f unique/dnode/balance1.sim
|
||||||
|
@ -302,4 +303,4 @@ cd ../../../debug; make
|
||||||
./test.sh -u -f unique/vnode/replica2_repeat.sim
|
./test.sh -u -f unique/vnode/replica2_repeat.sim
|
||||||
./test.sh -u -f unique/vnode/replica3_basic.sim
|
./test.sh -u -f unique/vnode/replica3_basic.sim
|
||||||
./test.sh -u -f unique/vnode/replica3_repeat.sim
|
./test.sh -u -f unique/vnode/replica3_repeat.sim
|
||||||
#jeff ./test.sh -u -f unique/vnode/replica3_vgroup.sim
|
./test.sh -u -f unique/vnode/replica3_vgroup.sim
|
||||||
|
|
Loading…
Reference in New Issue