Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
c3920c46
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1185
Star
22016
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
c3920c46
编写于
3月 09, 2022
作者:
C
Cary Xu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
reset smsStatWindow
上级
3d248b72
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
28 addition
and
2 deletion
+28
-2
source/dnode/vnode/src/inc/tsdbFile.h
source/dnode/vnode/src/inc/tsdbFile.h
+2
-1
source/dnode/vnode/src/tsdb/tsdbSma.c
source/dnode/vnode/src/tsdb/tsdbSma.c
+24
-0
source/dnode/vnode/test/tsdbSmaTest.cpp
source/dnode/vnode/test/tsdbSmaTest.cpp
+2
-1
未找到文件。
source/dnode/vnode/src/inc/tsdbFile.h
浏览文件 @
c3920c46
...
...
@@ -58,8 +58,9 @@ typedef enum {
TSDB_FILE_META
,
// meta
TSDB_FILE_TSMA
,
// .tsma.${sma_index_name}, Time-range-wise SMA
TSDB_FILE_RSMA
,
// .rsma.${sma_index_name}, Time-range-wise Rollup SMA
}
TSDB_FILE_T
;
}
E_
TSDB_FILE_T
;
typedef
int32_t
TSDB_FILE_T
;
typedef
enum
{
TSDB_FS_VER_0
=
0
,
TSDB_FS_VER_MAX
,
...
...
source/dnode/vnode/src/tsdb/tsdbSma.c
浏览文件 @
c3920c46
...
...
@@ -203,6 +203,23 @@ int32_t tsdbUpdateExpiredWindow(STsdb *pTsdb, char *msg) {
return
TSDB_CODE_SUCCESS
;
}
static
int32_t
tsdbResetExpiredWindow
(
STsdb
*
pTsdb
,
const
char
*
indexName
,
void
*
timeWindow
)
{
SSmaStatItem
*
pItem
=
NULL
;
if
(
pTsdb
->
pSmaStat
&&
pTsdb
->
pSmaStat
->
smaStatItems
)
{
pItem
=
(
SSmaStatItem
*
)
taosHashGet
(
pTsdb
->
pSmaStat
->
smaStatItems
,
indexName
,
strlen
(
indexName
));
}
if
(
pItem
!=
NULL
)
{
// TODO: reset time windows for the sma data blocks
while
(
true
)
{
TSKEY
thisWindow
=
0
;
taosHashRemove
(
pItem
->
expiredWindows
,
&
thisWindow
,
sizeof
(
thisWindow
));
}
}
return
TSDB_CODE_SUCCESS
;
}
/**
* @brief Judge the tSma storage level
*
...
...
@@ -495,6 +512,9 @@ int32_t tsdbInsertTSmaDataImpl(STsdb *pTsdb, STSma *param, STSmaData *pData) {
return
terrno
;
}
// reset the SSmaStat
tsdbResetExpiredWindow
(
pTsdb
,
param
->
indexName
,
&
pData
->
tsWindow
);
return
TSDB_CODE_SUCCESS
;
}
...
...
@@ -542,6 +562,10 @@ int32_t tsdbInsertRSmaDataImpl(STsdb *pTsdb, SRSma *param, STSmaData *pData) {
TASSERT
(
0
);
return
TSDB_CODE_INVALID_PARA
;
}
// reset the SSmaStat
tsdbResetExpiredWindow
(
pTsdb
,
param
->
tsma
.
indexName
,
&
pData
->
tsWindow
);
// Step 4: finish
return
TSDB_CODE_SUCCESS
;
}
...
...
source/dnode/vnode/test/tsdbSmaTest.cpp
浏览文件 @
c3920c46
...
...
@@ -20,6 +20,7 @@
#include <metaDef.h>
#include <tmsg.h>
#include <tsdbDef.h>
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wwrite-strings"
...
...
@@ -209,7 +210,7 @@ TEST(testCase, tSma_DB_Put_Get_Del_Test) {
metaClose
(
pMeta
);
}
#if
0
#if
1
TEST
(
testCase
,
tSmaInsertTest
)
{
STSma
tSma
=
{
0
};
STSmaData
*
pSmaData
=
NULL
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录