diff --git a/source/common/src/tglobal.c b/source/common/src/tglobal.c index 7457fe7eb6..54b478f33f 100644 --- a/source/common/src/tglobal.c +++ b/source/common/src/tglobal.c @@ -185,7 +185,7 @@ char tsCompressor[32] = "ZSTD_COMPRESSOR"; // ZSTD_COMPRESSOR or GZIP_COMPR bool tsStartUdfd = true; // internal -int32_t tsTransPullupInterval = 6; +int32_t tsTransPullupInterval = 2; int32_t tsMqRebalanceInterval = 2; void taosAddDataDir(int32_t index, char *v1, int32_t level, int32_t primary) { diff --git a/source/dnode/mnode/impl/src/mndSync.c b/source/dnode/mnode/impl/src/mndSync.c index 3a023bcece..07f65b2a90 100644 --- a/source/dnode/mnode/impl/src/mndSync.c +++ b/source/dnode/mnode/impl/src/mndSync.c @@ -68,8 +68,9 @@ void mndSyncCommitMsg(struct SSyncFSM *pFsm, const SRpcMsg *pMsg, SFsmCbMeta cbM mndTransExecute(pMnode, pTrans); mndReleaseTrans(pMnode, pTrans); } - +#if 0 sdbWriteFile(pMnode->pSdb, SDB_WRITE_DELTA); +#endif } } diff --git a/source/dnode/mnode/impl/src/mndTrans.c b/source/dnode/mnode/impl/src/mndTrans.c index 31a955b030..30e46af03c 100644 --- a/source/dnode/mnode/impl/src/mndTrans.c +++ b/source/dnode/mnode/impl/src/mndTrans.c @@ -804,7 +804,7 @@ static void mndTransSendRpcRsp(SMnode *pMnode, STrans *pTrans) { sendRsp = true; } } else { - if (pTrans->stage == TRN_STAGE_REDO_ACTION && pTrans->failedTimes > 2) { + if (pTrans->stage == TRN_STAGE_REDO_ACTION && pTrans->failedTimes > 3) { if (code == 0) code = TSDB_CODE_MND_TRANS_UNKNOW_ERROR; sendRsp = true; } @@ -1127,6 +1127,7 @@ static int32_t mndTransExecuteRedoActionsSerial(SMnode *pMnode, STrans *pTrans) } if (code == 0) { + pTrans->failedTimes = 0; pTrans->lastAction = action; pTrans->lastMsgType = 0; pTrans->lastErrorNo = 0; @@ -1430,8 +1431,7 @@ void mndTransPullup(SMnode *pMnode) { mndReleaseTrans(pMnode, pTrans); } - // todo, set to SDB_WRITE_DELTA - sdbWriteFile(pMnode->pSdb, 0); + sdbWriteFile(pMnode->pSdb, SDB_WRITE_DELTA); taosArrayDestroy(pArray); } diff --git a/source/dnode/mnode/sdb/inc/sdb.h b/source/dnode/mnode/sdb/inc/sdb.h index 1bd09aef63..3b1c4000a8 100644 --- a/source/dnode/mnode/sdb/inc/sdb.h +++ b/source/dnode/mnode/sdb/inc/sdb.h @@ -37,7 +37,7 @@ extern "C" { #define mTrace(...) { if (mDebugFlag & DEBUG_TRACE) { taosPrintLog("MND ", DEBUG_TRACE, mDebugFlag, __VA_ARGS__); }} // clang-format on -#define SDB_WRITE_DELTA 100 +#define SDB_WRITE_DELTA 20 #define SDB_GET_VAL(pData, dataPos, val, pos, func, type) \ { \ diff --git a/source/dnode/mnode/sdb/src/sdb.c b/source/dnode/mnode/sdb/src/sdb.c index c44f1670c3..fbf66da632 100644 --- a/source/dnode/mnode/sdb/src/sdb.c +++ b/source/dnode/mnode/sdb/src/sdb.c @@ -161,9 +161,11 @@ static int32_t sdbCreateDir(SSdb *pSdb) { } void sdbSetApplyInfo(SSdb *pSdb, int64_t index, int64_t term, int64_t config) { - mTrace("mnode apply info changed, from index:%" PRId64 " term:%" PRId64 " config:%" PRId64 ", to index:%" PRId64 +#if 1 + mTrace("mnode apply info changed from index:%" PRId64 " term:%" PRId64 " config:%" PRId64 " to index:%" PRId64 " term:%" PRId64 " config:%" PRId64, pSdb->applyIndex, pSdb->applyTerm, pSdb->applyConfig, index, term, config); +#endif pSdb->applyIndex = index; pSdb->applyTerm = term; pSdb->applyConfig = config; @@ -173,7 +175,9 @@ void sdbGetCommitInfo(SSdb *pSdb, int64_t *index, int64_t *term, int64_t *config *index = pSdb->commitIndex; *term = pSdb->commitTerm; *config = pSdb->commitConfig; +#if 0 mTrace("mnode current info, apply index:%" PRId64 " term:%" PRId64 " config:%" PRId64 ", commit index:%" PRId64 " term:%" PRId64 " config:%" PRId64, pSdb->applyIndex, pSdb->applyTerm, pSdb->applyConfig, *index, *term, *config); +#endif } diff --git a/tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim b/tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim index 7b52b51306..e9dd82cad9 100644 --- a/tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim +++ b/tests/script/tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim @@ -53,31 +53,10 @@ endi if $data(4)[4] != ready then goto step1 endi -#if $data(5)[4] != ready then -# goto step1 -#endi print =============== step2: create db sql create database d1 vgroups 1 replica 3 -# dnode not exist -sql_error redistribute vgroup 3 dnode 6 dnode 3 dnode 4 -# vgroup not exist -sql_error redistribute vgroup 3 dnode 5 dnode 3 dnode 4 -# un changed -sql_error redistribute vgroup 2 dnode 2 dnode 3 dnode 4 -# no enought vnodes -sql_error redistribute vgroup 2 dnode 1 dnode 3 dnode 4 -# offline vnodes -sql_error redistribute vgroup 2 dnode 5 dnode 3 dnode 4 -# Invalid replica -sql_error redistribute vgroup 2 dnode 5 -sql_error redistribute vgroup 2 dnode 5 dnode 3 -sql_error redistribute vgroup 2 dnode 2 dnode 3 -sql_error redistribute vgroup 2 dnode 2 dnode 2 -sql_error redistribute vgroup 3 dnode 2 dnode 2 -sql_error redistribute vgroup 2 dnode 2 dnode 2 dnode 3 - system sh/exec.sh -n dnode5 -s start $x = 0 step2: