From ff47e1eab1d4c6a471a48ba651bc7792c0a515a9 Mon Sep 17 00:00:00 2001 From: kailixu Date: Wed, 12 Jun 2024 17:12:30 +0800 Subject: [PATCH] enh: support enable/disable tfs config entries --- source/common/src/tglobal.c | 2 -- source/libs/tfs/src/tfs.c | 5 +++++ tests/system-test/0-others/multilevel.py | 11 ++++++++--- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/source/common/src/tglobal.c b/source/common/src/tglobal.c index 169bcf56a5..0cdb1eb784 100644 --- a/source/common/src/tglobal.c +++ b/source/common/src/tglobal.c @@ -221,8 +221,6 @@ int32_t tsDiskCfgNum = 0; SDiskCfg tsDiskCfg[TFS_MAX_DISKS] = {0}; int64_t tsMinDiskFreeSize = TFS_MIN_DISK_FREE_SIZE; -int a = sizeof(tsDiskCfg); - // stream scheduler bool tsDeployOnSnode = true; diff --git a/source/libs/tfs/src/tfs.c b/source/libs/tfs/src/tfs.c index dd93b25186..e863f658e6 100644 --- a/source/libs/tfs/src/tfs.c +++ b/source/libs/tfs/src/tfs.c @@ -494,6 +494,11 @@ static int32_t tfsMount(STfs *pTfs, SDiskCfg *pCfg) { return -1; } + if (pCfg->enable == 0) { + fInfo("skip to mount disk %s to level %d since enable is %" PRIi8, pCfg->dir, pCfg->level, pCfg->enable); + return 0; + } + SDiskID did = {.level = pCfg->level}; STfsDisk *pDisk = tfsMountDiskToTier(TFS_TIER_AT(pTfs, did.level), pCfg); if (pDisk == NULL) { diff --git a/tests/system-test/0-others/multilevel.py b/tests/system-test/0-others/multilevel.py index 7b0ebb4b78..aaecbae50e 100644 --- a/tests/system-test/0-others/multilevel.py +++ b/tests/system-test/0-others/multilevel.py @@ -242,7 +242,7 @@ class TDTestCase: tdSql.execute('use dbtest') tdSql.execute('create table stb (ts timestamp,c0 int) tags(t0 int)') tdSql.execute('create table tb1 using stb tags(1)') - for i in range(10,30): + for i in range(1,600, 30): tdSql.execute(f'insert into tb1 values(now-{i}d,10)') tdSql.execute('flush database dbtest') time.sleep(3) @@ -250,21 +250,26 @@ class TDTestCase: tdDnodes.stop(1) cfg={ '/mnt/data1 0 1' : 'dataDir', - '/mnt/data2 1 0' : 'dataDir', - '/mnt/data3 2 0' : 'dataDir', + '/mnt/data2 1 0 1' : 'dataDir', + '/mnt/data3 1 0 0' : 'dataDir', + '/mnt/data4 1 0' : 'dataDir', } tdSql.createDir('/mnt/data2') tdSql.createDir('/mnt/data3') + tdSql.createDir('/mnt/data4') tdDnodes.deploy(1,cfg) tdDnodes.start(1) checkFiles('/mnt/data1/vnode/*/tsdb/v*',1) checkFiles('/mnt/data2/vnode/*/tsdb/v*',0) checkFiles('/mnt/data3/vnode/*/tsdb/v*',0) + checkFiles('/mnt/data4/vnode/*/tsdb/v*',0) tdSql.execute('alter database dbtest keep 10d,365d,3650d') tdSql.execute('trim database dbtest') time.sleep(3) checkFiles('/mnt/data1/vnode/*/tsdb/v*',1) checkFiles('/mnt/data2/vnode/*/tsdb/v*',1) + checkFiles('/mnt/data3/vnode/*/tsdb/v*',0) + checkFiles('/mnt/data4/vnode/*/tsdb/v*',1) def run(self): self.basic()