Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
894ff930
T
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1185
Star
22016
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
894ff930
编写于
12月 20, 2021
作者:
L
Liu Jicong
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add mock interface
上级
0e690344
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
20 addition
and
6 deletion
+20
-6
include/dnode/vnode/tq/tq.h
include/dnode/vnode/tq/tq.h
+17
-5
source/dnode/vnode/tq/src/tq.c
source/dnode/vnode/tq/src/tq.c
+3
-1
未找到文件。
include/dnode/vnode/tq/tq.h
浏览文件 @
894ff930
...
@@ -95,14 +95,24 @@ typedef struct STqTopicVhandle {
...
@@ -95,14 +95,24 @@ typedef struct STqTopicVhandle {
#define TQ_BUFFER_SIZE 8
#define TQ_BUFFER_SIZE 8
typedef
struct
STqExec
{
void
*
runtimeEnv
;
// return type will be SSDataBlock
void
*
(
*
exec
)(
void
*
runtimeEnv
);
// inputData type will be submitblk
void
*
(
*
assign
)(
void
*
runtimeEnv
,
void
*
inputData
);
char
*
(
*
serialize
)(
struct
STqExec
*
);
struct
STqExec
*
(
*
deserialize
)(
char
*
);
}
STqExec
;
typedef
struct
STqBufferItem
{
typedef
struct
STqBufferItem
{
int64_t
offset
;
int64_t
offset
;
// executors are identical but not concurrent
// executors are identical but not concurrent
// so there must be a copy in each item
// so there must be a copy in each item
void
*
executor
;
STqExec
*
executor
;
int32_t
status
;
int32_t
status
;
int64_t
size
;
int64_t
size
;
void
*
content
;
void
*
content
;
}
STqMsgItem
;
}
STqMsgItem
;
typedef
struct
STqTopic
{
typedef
struct
STqTopic
{
...
@@ -248,10 +258,12 @@ typedef struct STQ {
...
@@ -248,10 +258,12 @@ typedef struct STQ {
STqLogReader
*
tqLogReader
;
STqLogReader
*
tqLogReader
;
STqMemRef
tqMemRef
;
STqMemRef
tqMemRef
;
STqMetaStore
*
tqMeta
;
STqMetaStore
*
tqMeta
;
STqExec
*
tqExec
;
}
STQ
;
}
STQ
;
// open in each vnode
// open in each vnode
STQ
*
tqOpen
(
const
char
*
path
,
STqCfg
*
tqConfig
,
STqLogReader
*
tqLogReader
,
SMemAllocatorFactory
*
allocFac
);
STQ
*
tqOpen
(
const
char
*
path
,
STqCfg
*
tqConfig
,
STqLogReader
*
tqLogReader
,
SMemAllocatorFactory
*
allocFac
,
STqExec
*
tqExec
);
void
tqClose
(
STQ
*
);
void
tqClose
(
STQ
*
);
// void* will be replace by a msg type
// void* will be replace by a msg type
...
...
source/dnode/vnode/tq/src/tq.c
浏览文件 @
894ff930
...
@@ -35,7 +35,8 @@ void* tqSerializeItem(STqMsgItem* pItem, void* ptr);
...
@@ -35,7 +35,8 @@ void* tqSerializeItem(STqMsgItem* pItem, void* ptr);
const
void
*
tqDeserializeTopic
(
const
void
*
pBytes
,
STqTopic
*
pTopic
);
const
void
*
tqDeserializeTopic
(
const
void
*
pBytes
,
STqTopic
*
pTopic
);
const
void
*
tqDeserializeItem
(
const
void
*
pBytes
,
STqMsgItem
*
pItem
);
const
void
*
tqDeserializeItem
(
const
void
*
pBytes
,
STqMsgItem
*
pItem
);
STQ
*
tqOpen
(
const
char
*
path
,
STqCfg
*
tqConfig
,
STqLogReader
*
tqLogReader
,
SMemAllocatorFactory
*
allocFac
)
{
STQ
*
tqOpen
(
const
char
*
path
,
STqCfg
*
tqConfig
,
STqLogReader
*
tqLogReader
,
SMemAllocatorFactory
*
allocFac
,
STqExec
*
tqExec
)
{
STQ
*
pTq
=
malloc
(
sizeof
(
STQ
));
STQ
*
pTq
=
malloc
(
sizeof
(
STQ
));
if
(
pTq
==
NULL
)
{
if
(
pTq
==
NULL
)
{
// TODO: memory error
// TODO: memory error
...
@@ -54,6 +55,7 @@ STQ* tqOpen(const char* path, STqCfg* tqConfig, STqLogReader* tqLogReader, SMemA
...
@@ -54,6 +55,7 @@ STQ* tqOpen(const char* path, STqCfg* tqConfig, STqLogReader* tqLogReader, SMemA
// TODO: free STQ
// TODO: free STQ
return
NULL
;
return
NULL
;
}
}
pTq
->
tqExec
=
tqExec
;
return
pTq
;
return
pTq
;
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录