Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
7a47508c
TDengine
项目概览
taosdata
/
TDengine
大约 2 年 前同步成功
通知
1192
Star
22018
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看板
提交
7a47508c
编写于
2月 23, 2022
作者:
M
Minghao Li
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add sync io
上级
c2a01bfd
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
39 addition
and
17 deletion
+39
-17
source/libs/sync/inc/syncIO.h
source/libs/sync/inc/syncIO.h
+6
-1
source/libs/sync/src/syncIO.c
source/libs/sync/src/syncIO.c
+33
-16
未找到文件。
source/libs/sync/inc/syncIO.h
浏览文件 @
7a47508c
...
@@ -37,6 +37,11 @@ typedef struct SSyncIO {
...
@@ -37,6 +37,11 @@ typedef struct SSyncIO {
pthread_t
tid
;
pthread_t
tid
;
int8_t
isStart
;
int8_t
isStart
;
SEpSet
epSet
;
void
*
syncTimer
;
void
*
syncTimerManager
;
int32_t
(
*
start
)(
struct
SSyncIO
*
ths
);
int32_t
(
*
start
)(
struct
SSyncIO
*
ths
);
int32_t
(
*
stop
)(
struct
SSyncIO
*
ths
);
int32_t
(
*
stop
)(
struct
SSyncIO
*
ths
);
int32_t
(
*
ping
)(
struct
SSyncIO
*
ths
);
int32_t
(
*
ping
)(
struct
SSyncIO
*
ths
);
...
@@ -45,7 +50,7 @@ typedef struct SSyncIO {
...
@@ -45,7 +50,7 @@ typedef struct SSyncIO {
}
SSyncIO
;
}
SSyncIO
;
SSyncIO
*
syncIOCreate
();
SSyncIO
*
syncIOCreate
();
static
int32_t
syncIOStart
(
SSyncIO
*
io
);
static
int32_t
syncIOStart
(
SSyncIO
*
io
);
static
int32_t
syncIOStop
(
SSyncIO
*
io
);
static
int32_t
syncIOStop
(
SSyncIO
*
io
);
...
...
source/libs/sync/src/syncIO.c
浏览文件 @
7a47508c
...
@@ -17,8 +17,30 @@
...
@@ -17,8 +17,30 @@
#include <tep.h>
#include <tep.h>
#include "syncOnMessage.h"
#include "syncOnMessage.h"
#include "tglobal.h"
#include "tglobal.h"
#include "ttimer.h"
#include "tutil.h"
#include "tutil.h"
static
void
syncTick
(
void
*
param
,
void
*
tmrId
)
{
SSyncIO
*
io
=
(
SSyncIO
*
)
param
;
sDebug
(
"syncTick ... "
);
SRpcMsg
rpcMsg
;
rpcMsg
.
pCont
=
rpcMallocCont
(
10
);
snprintf
(
rpcMsg
.
pCont
,
10
,
"TICK"
);
rpcMsg
.
contLen
=
10
;
rpcMsg
.
handle
=
io
;
rpcMsg
.
msgType
=
2
;
SRpcMsg
*
pTemp
;
pTemp
=
taosAllocateQitem
(
sizeof
(
SRpcMsg
));
memcpy
(
pTemp
,
&
rpcMsg
,
sizeof
(
SRpcMsg
));
taosWriteQitem
(
io
->
pMsgQ
,
pTemp
);
io
->
syncTimer
=
taosTmrStart
(
syncTick
,
1000
,
io
,
io
->
syncTimerManager
);
}
void
*
syncConsumer
(
void
*
param
)
{
void
*
syncConsumer
(
void
*
param
)
{
SSyncIO
*
io
=
param
;
SSyncIO
*
io
=
param
;
...
@@ -58,6 +80,7 @@ void *syncConsumer(void *param) {
...
@@ -58,6 +80,7 @@ void *syncConsumer(void *param) {
}
}
taosFreeQall
(
qall
);
taosFreeQall
(
qall
);
return
NULL
;
}
}
static
int
retrieveAuthInfo
(
void
*
parent
,
char
*
meterId
,
char
*
spi
,
char
*
encrypt
,
char
*
secret
,
char
*
ckey
)
{
static
int
retrieveAuthInfo
(
void
*
parent
,
char
*
meterId
,
char
*
spi
,
char
*
encrypt
,
char
*
secret
,
char
*
ckey
)
{
...
@@ -68,17 +91,8 @@ static int retrieveAuthInfo(void *parent, char *meterId, char *spi, char *encryp
...
@@ -68,17 +91,8 @@ static int retrieveAuthInfo(void *parent, char *meterId, char *spi, char *encryp
}
}
static
void
processResponse
(
void
*
pParent
,
SRpcMsg
*
pMsg
,
SEpSet
*
pEpSet
)
{
static
void
processResponse
(
void
*
pParent
,
SRpcMsg
*
pMsg
,
SEpSet
*
pEpSet
)
{
/*
sDebug
(
"processResponse ... "
);
// SInfo *pInfo = (SInfo *)pMsg->ahandle;
rpcFreeCont
(
pMsg
->
pCont
);
sDebug("thread:%d, response is received, type:%d contLen:%d code:0x%x", pInfo->index, pMsg->msgType, pMsg->contLen,
pMsg->code);
if (pEpSet) pInfo->epSet = *pEpSet;
rpcFreeCont(pMsg->pCont);
// tsem_post(&pInfo->rspSem);
tsem_post(&pInfo->rspSem);
*/
}
}
static
void
processRequestMsg
(
void
*
pParent
,
SRpcMsg
*
pMsg
,
SEpSet
*
pEpSet
)
{
static
void
processRequestMsg
(
void
*
pParent
,
SRpcMsg
*
pMsg
,
SEpSet
*
pEpSet
)
{
...
@@ -158,6 +172,9 @@ static int32_t syncIOStart(SSyncIO *io) {
...
@@ -158,6 +172,9 @@ static int32_t syncIOStart(SSyncIO *io) {
}
}
}
}
io
->
epSet
.
inUse
=
0
;
addEpIntoEpSet
(
&
io
->
epSet
,
"127.0.0.1"
,
38000
);
// start consumer thread
// start consumer thread
{
{
if
(
pthread_create
(
&
io
->
tid
,
NULL
,
syncConsumer
,
io
)
!=
0
)
{
if
(
pthread_create
(
&
io
->
tid
,
NULL
,
syncConsumer
,
io
)
!=
0
)
{
...
@@ -167,6 +184,10 @@ static int32_t syncIOStart(SSyncIO *io) {
...
@@ -167,6 +184,10 @@ static int32_t syncIOStart(SSyncIO *io) {
}
}
}
}
// start tmr thread
io
->
syncTimerManager
=
taosTmrInit
(
1000
,
50
,
10000
,
"SYNC"
);
io
->
syncTimer
=
taosTmrStart
(
syncTick
,
1000
,
io
,
io
->
syncTimerManager
);
return
0
;
return
0
;
}
}
...
@@ -185,11 +206,7 @@ static int32_t syncIOPing(SSyncIO *io) {
...
@@ -185,11 +206,7 @@ static int32_t syncIOPing(SSyncIO *io) {
rpcMsg
.
handle
=
io
;
rpcMsg
.
handle
=
io
;
rpcMsg
.
msgType
=
1
;
rpcMsg
.
msgType
=
1
;
SEpSet
epSet
;
rpcSendRequest
(
io
->
clientRpc
,
&
io
->
epSet
,
&
rpcMsg
,
NULL
);
epSet
.
inUse
=
0
;
addEpIntoEpSet
(
&
epSet
,
"127.0.0.1"
,
38000
);
rpcSendRequest
(
io
->
clientRpc
,
&
epSet
,
&
rpcMsg
,
NULL
);
return
0
;
return
0
;
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录