Merge pull request #12196 from taosdata/feature/vnode_refact1
fix: drop table if exists
This commit is contained in:
commit
ad50eaffb3
|
@ -201,7 +201,7 @@ int metaDropTable(SMeta *pMeta, int64_t version, SVDropTbReq *pReq) {
|
||||||
// search & delete the name idx
|
// search & delete the name idx
|
||||||
tdbDbcOpen(pMeta->pNameIdx, &pNameIdxc, &pMeta->txn);
|
tdbDbcOpen(pMeta->pNameIdx, &pNameIdxc, &pMeta->txn);
|
||||||
ret = tdbDbcMoveTo(pNameIdxc, pReq->name, strlen(pReq->name) + 1, &c);
|
ret = tdbDbcMoveTo(pNameIdxc, pReq->name, strlen(pReq->name) + 1, &c);
|
||||||
if (ret < 0 || c) {
|
if (ret < 0 || !tdbDbcIsValid(pNameIdxc) || c) {
|
||||||
tdbDbcClose(pNameIdxc);
|
tdbDbcClose(pNameIdxc);
|
||||||
terrno = TSDB_CODE_VND_TABLE_NOT_EXIST;
|
terrno = TSDB_CODE_VND_TABLE_NOT_EXIST;
|
||||||
return -1;
|
return -1;
|
||||||
|
|
|
@ -49,6 +49,7 @@ int tdbDbPGet(TDB *pDb, const void *pKey, int kLen, void **ppKey, int *pkLen, vo
|
||||||
// TDBC
|
// TDBC
|
||||||
int tdbDbcOpen(TDB *pDb, TDBC **ppDbc, TXN *pTxn);
|
int tdbDbcOpen(TDB *pDb, TDBC **ppDbc, TXN *pTxn);
|
||||||
int tdbDbcClose(TDBC *pDbc);
|
int tdbDbcClose(TDBC *pDbc);
|
||||||
|
int tdbDbcIsValid(TDBC *pDbc);
|
||||||
int tdbDbcMoveTo(TDBC *pDbc, const void *pKey, int kLen, int *c);
|
int tdbDbcMoveTo(TDBC *pDbc, const void *pKey, int kLen, int *c);
|
||||||
int tdbDbcMoveToFirst(TDBC *pDbc);
|
int tdbDbcMoveToFirst(TDBC *pDbc);
|
||||||
int tdbDbcMoveToLast(TDBC *pDbc);
|
int tdbDbcMoveToLast(TDBC *pDbc);
|
||||||
|
|
|
@ -1678,6 +1678,14 @@ int tdbBtcClose(SBTC *pBtc) {
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int tdbBtcIsValid(SBTC *pBtc) {
|
||||||
|
if (pBtc->idx < 0) {
|
||||||
|
return 0;
|
||||||
|
} else {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
// TDB_BTREE_CURSOR
|
// TDB_BTREE_CURSOR
|
||||||
|
|
||||||
// TDB_BTREE_DEBUG =====================
|
// TDB_BTREE_DEBUG =====================
|
||||||
|
|
|
@ -141,3 +141,5 @@ int tdbDbcClose(TDBC *pDbc) {
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int tdbDbcIsValid(TDBC *pDbc) { return tdbBtcIsValid(&pDbc->btc); }
|
|
@ -136,6 +136,7 @@ int tdbBtreePGet(SBTree *pBt, const void *pKey, int kLen, void **ppKey, int *pkL
|
||||||
// SBTC
|
// SBTC
|
||||||
int tdbBtcOpen(SBTC *pBtc, SBTree *pBt, TXN *pTxn);
|
int tdbBtcOpen(SBTC *pBtc, SBTree *pBt, TXN *pTxn);
|
||||||
int tdbBtcClose(SBTC *pBtc);
|
int tdbBtcClose(SBTC *pBtc);
|
||||||
|
int tdbBtcIsValid(SBTC *pBtc);
|
||||||
int tdbBtcMoveTo(SBTC *pBtc, const void *pKey, int kLen, int *pCRst);
|
int tdbBtcMoveTo(SBTC *pBtc, const void *pKey, int kLen, int *pCRst);
|
||||||
int tdbBtcMoveToFirst(SBTC *pBtc);
|
int tdbBtcMoveToFirst(SBTC *pBtc);
|
||||||
int tdbBtcMoveToLast(SBTC *pBtc);
|
int tdbBtcMoveToLast(SBTC *pBtc);
|
||||||
|
|
Loading…
Reference in New Issue