enh: refactor unit test of parser and planner
This commit is contained in:
parent
80407933e3
commit
ab0e6896c5
|
@ -1675,11 +1675,12 @@ static int32_t checkDbRetentionsOption(STranslateContext* pCxt, SNodeList* pRete
|
||||||
return TSDB_CODE_SUCCESS;
|
return TSDB_CODE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int32_t checkOptionsDependency(STranslateContext* pCxt, const char* pDbName, SDatabaseOptions* pOptions,
|
static int32_t checkOptionsDependency(STranslateContext* pCxt, const char* pDbName, SDatabaseOptions* pOptions) {
|
||||||
bool alter) {
|
|
||||||
int32_t daysPerFile = pOptions->daysPerFile;
|
int32_t daysPerFile = pOptions->daysPerFile;
|
||||||
int32_t daysToKeep0 = pOptions->keep[0];
|
int32_t daysToKeep0 = pOptions->keep[0];
|
||||||
if (alter && (-1 == daysPerFile || -1 == daysToKeep0)) {
|
if (-1 == daysPerFile && -1 == daysToKeep0) {
|
||||||
|
return TSDB_CODE_SUCCESS;
|
||||||
|
} else if (-1 == daysPerFile || -1 == daysToKeep0) {
|
||||||
SDbCfgInfo dbCfg;
|
SDbCfgInfo dbCfg;
|
||||||
int32_t code = getDBCfg(pCxt, pDbName, &dbCfg);
|
int32_t code = getDBCfg(pCxt, pDbName, &dbCfg);
|
||||||
if (TSDB_CODE_SUCCESS != code) {
|
if (TSDB_CODE_SUCCESS != code) {
|
||||||
|
@ -1694,8 +1695,7 @@ static int32_t checkOptionsDependency(STranslateContext* pCxt, const char* pDbNa
|
||||||
return TSDB_CODE_SUCCESS;
|
return TSDB_CODE_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int32_t checkDatabaseOptions(STranslateContext* pCxt, const char* pDbName, SDatabaseOptions* pOptions,
|
static int32_t checkDatabaseOptions(STranslateContext* pCxt, const char* pDbName, SDatabaseOptions* pOptions) {
|
||||||
bool alter) {
|
|
||||||
int32_t code =
|
int32_t code =
|
||||||
checkRangeOption(pCxt, "buffer", pOptions->buffer, TSDB_MIN_BUFFER_PER_VNODE, TSDB_MAX_BUFFER_PER_VNODE);
|
checkRangeOption(pCxt, "buffer", pOptions->buffer, TSDB_MIN_BUFFER_PER_VNODE, TSDB_MAX_BUFFER_PER_VNODE);
|
||||||
if (TSDB_CODE_SUCCESS == code) {
|
if (TSDB_CODE_SUCCESS == code) {
|
||||||
|
@ -1752,13 +1752,13 @@ static int32_t checkDatabaseOptions(STranslateContext* pCxt, const char* pDbName
|
||||||
code = checkDbRetentionsOption(pCxt, pOptions->pRetentions);
|
code = checkDbRetentionsOption(pCxt, pOptions->pRetentions);
|
||||||
}
|
}
|
||||||
if (TSDB_CODE_SUCCESS == code) {
|
if (TSDB_CODE_SUCCESS == code) {
|
||||||
code = checkOptionsDependency(pCxt, pDbName, pOptions, alter);
|
code = checkOptionsDependency(pCxt, pDbName, pOptions);
|
||||||
}
|
}
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int32_t checkCreateDatabase(STranslateContext* pCxt, SCreateDatabaseStmt* pStmt) {
|
static int32_t checkCreateDatabase(STranslateContext* pCxt, SCreateDatabaseStmt* pStmt) {
|
||||||
return checkDatabaseOptions(pCxt, pStmt->dbName, pStmt->pOptions, false);
|
return checkDatabaseOptions(pCxt, pStmt->dbName, pStmt->pOptions);
|
||||||
}
|
}
|
||||||
|
|
||||||
typedef int32_t (*FSerializeFunc)(void* pBuf, int32_t bufLen, void* pReq);
|
typedef int32_t (*FSerializeFunc)(void* pBuf, int32_t bufLen, void* pReq);
|
||||||
|
@ -1825,7 +1825,7 @@ static void buildAlterDbReq(STranslateContext* pCxt, SAlterDatabaseStmt* pStmt,
|
||||||
}
|
}
|
||||||
|
|
||||||
static int32_t translateAlterDatabase(STranslateContext* pCxt, SAlterDatabaseStmt* pStmt) {
|
static int32_t translateAlterDatabase(STranslateContext* pCxt, SAlterDatabaseStmt* pStmt) {
|
||||||
int32_t code = checkDatabaseOptions(pCxt, pStmt->dbName, pStmt->pOptions, true);
|
int32_t code = checkDatabaseOptions(pCxt, pStmt->dbName, pStmt->pOptions);
|
||||||
if (TSDB_CODE_SUCCESS != code) {
|
if (TSDB_CODE_SUCCESS != code) {
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,7 +38,7 @@ TEST_F(ParserInitialATest, alterDnode) {
|
||||||
TEST_F(ParserInitialATest, alterDatabase) {
|
TEST_F(ParserInitialATest, alterDatabase) {
|
||||||
useDb("root", "test");
|
useDb("root", "test");
|
||||||
|
|
||||||
run("alter database wxy_db cachelast 1 fsync 200 keep 1440 wal 1");
|
run("alter database wxy_db cachelast 1 fsync 200 wal 1");
|
||||||
}
|
}
|
||||||
|
|
||||||
// todo alter local
|
// todo alter local
|
||||||
|
|
Loading…
Reference in New Issue