fix: return error if stable's name duplicate with child table

This commit is contained in:
Minglei Jin 2022-08-16 17:04:35 +08:00
parent 393ee81e32
commit 7c82b1221f
1 changed files with 10 additions and 0 deletions

View File

@ -176,6 +176,15 @@ int metaCreateSTable(SMeta *pMeta, int64_t version, SVCreateStbReq *pReq) {
// validate req // validate req
metaReaderInit(&mr, pMeta, 0); metaReaderInit(&mr, pMeta, 0);
if (metaGetTableEntryByName(&mr, pReq->name) == 0) { if (metaGetTableEntryByName(&mr, pReq->name) == 0) {
if (mr.me.type == TSDB_SUPER_TABLE) {
metaReaderClear(&mr);
return 0;
} else {
terrno = TSDB_CODE_TDB_STB_ALREADY_EXIST;
metaReaderClear(&mr);
return -1;
}
/*
// TODO: just for pass case // TODO: just for pass case
#if 0 #if 0
terrno = TSDB_CODE_TDB_STB_ALREADY_EXIST; terrno = TSDB_CODE_TDB_STB_ALREADY_EXIST;
@ -185,6 +194,7 @@ int metaCreateSTable(SMeta *pMeta, int64_t version, SVCreateStbReq *pReq) {
metaReaderClear(&mr); metaReaderClear(&mr);
return 0; return 0;
#endif #endif
*/
} }
metaReaderClear(&mr); metaReaderClear(&mr);