Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
14031ca6
T
TDengine
项目概览
taosdata
/
TDengine
接近 2 年 前同步成功
通知
1192
Star
22018
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看板
提交
14031ca6
编写于
3月 24, 2022
作者:
S
shenglian zhou
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add simple test
上级
8c12733e
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
86 addition
and
1 deletion
+86
-1
source/libs/function/CMakeLists.txt
source/libs/function/CMakeLists.txt
+21
-1
source/libs/function/test/runUdf.c
source/libs/function/test/runUdf.c
+45
-0
source/libs/function/test/udf1.c
source/libs/function/test/udf1.c
+20
-0
未找到文件。
source/libs/function/CMakeLists.txt
浏览文件 @
14031ca6
...
@@ -12,6 +12,25 @@ target_link_libraries(
...
@@ -12,6 +12,25 @@ target_link_libraries(
PRIVATE os util common nodes
PRIVATE os util common nodes
)
)
add_executable
(
runUdf test/runUdf.c
)
target_include_directories
(
runUdf
PUBLIC
"
${
CMAKE_SOURCE_DIR
}
/include/libs/function"
PRIVATE
"
${
CMAKE_CURRENT_SOURCE_DIR
}
/inc"
)
target_link_libraries
(
runUdf
PRIVATE os util common nodes function
)
add_library
(
udf1 MODULE test/udf1.c
)
target_include_directories
(
udf1
PUBLIC
"
${
CMAKE_SOURCE_DIR
}
/include/libs/function"
PRIVATE
"
${
CMAKE_CURRENT_SOURCE_DIR
}
/inc"
)
#SET(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/build/bin)
add_executable
(
udfd src/udfd.c
)
add_executable
(
udfd src/udfd.c
)
target_include_directories
(
target_include_directories
(
udfd
udfd
...
@@ -22,4 +41,5 @@ target_include_directories(
...
@@ -22,4 +41,5 @@ target_include_directories(
target_link_libraries
(
target_link_libraries
(
udfd
udfd
PRIVATE os util common nodes function
PRIVATE os util common nodes function
)
)
\ No newline at end of file
source/libs/function/test/runUdf.c
0 → 100644
浏览文件 @
14031ca6
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "uv.h"
#include "tudf.h"
int
main
(
int
argc
,
char
*
argv
[])
{
startUdfService
();
uv_sleep
(
1000
);
char
path
[
256
]
=
{
0
};
size_t
cwdSize
=
256
;
int
err
=
uv_cwd
(
path
,
&
cwdSize
);
if
(
err
!=
0
)
{
fprintf
(
stderr
,
"err cwd: %s
\n
"
,
uv_strerror
(
err
));
return
err
;
}
fprintf
(
stdout
,
"current working directory:%s
\n
"
,
path
);
strcat
(
path
,
"/libudf1.so"
);
SUdfInfo
udfInfo
=
{.
udfName
=
"udf1"
,
.
path
=
path
};
UdfHandle
handle
;
setupUdf
(
&
udfInfo
,
&
handle
);
//char state[5000000] = "state";
//char input[5000000] = "input";
int
dataSize
=
500
;
int
callCount
=
2
;
if
(
argc
>
1
)
dataSize
=
atoi
(
argv
[
1
]);
if
(
argc
>
2
)
callCount
=
atoi
(
argv
[
2
]);
char
*
state
=
malloc
(
dataSize
);
char
*
input
=
malloc
(
dataSize
);
SUdfDataBlock
blockInput
=
{.
data
=
input
,
.
size
=
dataSize
};
SUdfDataBlock
blockOutput
;
char
*
newState
;
int32_t
newStateSize
;
for
(
int
l
=
0
;
l
<
callCount
;
++
l
)
{
callUdf
(
handle
,
0
,
state
,
dataSize
,
blockInput
,
&
newState
,
&
newStateSize
,
&
blockOutput
);
}
free
(
state
);
free
(
input
);
teardownUdf
(
handle
);
stopUdfService
();
}
source/libs/function/test/udf1.c
0 → 100644
浏览文件 @
14031ca6
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include "tudf.h"
void
udf1
(
int8_t
step
,
char
*
state
,
int32_t
stateSize
,
SUdfDataBlock
input
,
char
**
newState
,
int32_t
*
newStateSize
,
SUdfDataBlock
*
output
)
{
fprintf
(
stdout
,
"%s, step:%d
\n
"
,
"udf function called"
,
step
);
char
*
newStateBuf
=
malloc
(
stateSize
);
memcpy
(
newStateBuf
,
state
,
stateSize
);
*
newState
=
newStateBuf
;
*
newStateSize
=
stateSize
;
char
*
outputBuf
=
malloc
(
input
.
size
);
memcpy
(
outputBuf
,
input
.
data
,
input
.
size
);
output
->
data
=
outputBuf
;
output
->
size
=
input
.
size
;
return
;
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录