Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
5e8cb50a
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看板
提交
5e8cb50a
编写于
1月 20, 2022
作者:
dengyihao
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor rpc
上级
37dcc3de
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
38 addition
and
5 deletion
+38
-5
source/libs/transport/inc/transComm.h
source/libs/transport/inc/transComm.h
+2
-0
source/libs/transport/src/transCli.c
source/libs/transport/src/transCli.c
+19
-5
source/libs/transport/src/transComm.c
source/libs/transport/src/transComm.c
+5
-0
source/libs/transport/src/transSrv.c
source/libs/transport/src/transSrv.c
+12
-0
未找到文件。
source/libs/transport/inc/transComm.h
浏览文件 @
5e8cb50a
...
...
@@ -199,4 +199,6 @@ void transBuildAuthHead(void* pMsg, int msgLen, void* pAuth, void* pKey);
bool
transCompressMsg
(
char
*
msg
,
int32_t
len
,
int32_t
*
flen
);
bool
transDecompressMsg
(
char
*
msg
,
int32_t
len
,
int32_t
*
flen
);
void
transConnCtxDestroy
(
STransConnCtx
*
ctx
);
#endif
source/libs/transport/src/transCli.c
浏览文件 @
5e8cb50a
...
...
@@ -63,6 +63,8 @@ static void clientAsyncCb(uv_async_t* handle);
static
void
clientDestroy
(
uv_handle_t
*
handle
);
static
void
clientConnDestroy
(
SCliConn
*
pConn
);
static
void
clientMsgDestroy
(
SCliMsg
*
pMsg
);
static
void
*
clientThread
(
void
*
arg
);
static
void
clientHandleReq
(
SCliMsg
*
pMsg
,
SCliThrdObj
*
pThrd
);
...
...
@@ -235,9 +237,22 @@ void* taosInitClient(uint32_t ip, uint32_t port, char* label, int numOfThreads,
}
return
cli
;
}
static
void
clientMsgDestroy
(
SCliMsg
*
pMsg
)
{
// impl later
free
(
pMsg
);
}
void
taosCloseClient
(
void
*
arg
)
{
// impl later
SClientObj
*
cli
=
arg
;
for
(
int
i
=
0
;
i
<
cli
->
numOfThreads
;
i
++
)
{
SCliThrdObj
*
pThrd
=
cli
->
pThreadObj
[
i
];
pthread_join
(
pThrd
->
thread
,
NULL
);
pthread_mutex_destroy
(
&
pThrd
->
msgMtx
);
free
(
pThrd
->
loop
);
free
(
pThrd
);
}
free
(
cli
->
pThreadObj
);
free
(
cli
);
}
void
rpcSendRequest
(
void
*
shandle
,
const
SEpSet
*
pEpSet
,
SRpcMsg
*
pMsg
,
int64_t
*
pRid
)
{
...
...
@@ -247,19 +262,18 @@ void rpcSendRequest(void* shandle, const SEpSet* pEpSet, SRpcMsg* pMsg, int64_t*
SRpcInfo
*
pRpc
=
(
SRpcInfo
*
)
shandle
;
int
len
=
rpcCompressRpcMsg
(
pMsg
->
pCont
,
pMsg
->
contLen
);
int32_t
flen
=
0
;
if
(
transCompressMsg
(
pMsg
->
pCont
,
pMsg
->
contLen
,
&
flen
))
{
// imp later
}
STransConnCtx
*
pCtx
=
calloc
(
1
,
sizeof
(
STransConnCtx
));
pCtx
->
pRpc
=
(
SRpcInfo
*
)
shandle
;
pCtx
->
ahandle
=
pMsg
->
ahandle
;
// pContext->contLen = len;
// pContext->pCont = pMsg->pCont;
pCtx
->
msgType
=
pMsg
->
msgType
;
pCtx
->
ip
=
strdup
(
ip
);
pCtx
->
port
=
port
;
// pContext->epSet = *pEpSet;
// pContext->oldInUse = pEpSet->inUse;
assert
(
pRpc
->
connType
==
TAOS_CONN_CLIENT
);
// atomic or not
...
...
source/libs/transport/src/transComm.c
浏览文件 @
5e8cb50a
...
...
@@ -107,6 +107,7 @@ int32_t rpcCompressRpcMsg(char* pCont, int32_t contLen) {
}
bool
transCompressMsg
(
char
*
msg
,
int32_t
len
,
int32_t
*
flen
)
{
return
false
;
// SRpcHead* pHead = rpcHeadFromCont(pCont);
bool
succ
=
false
;
int
overhead
=
sizeof
(
STransCompMsg
);
...
...
@@ -186,4 +187,8 @@ SRpcHead* rpcDecompressRpcMsg(SRpcHead* pHead) {
return
pHead
;
}
void
transConnCtxDestroy
(
STransConnCtx
*
ctx
)
{
free
(
ctx
->
ip
);
free
(
ctx
);
}
#endif
source/libs/transport/src/transSrv.c
浏览文件 @
5e8cb50a
...
...
@@ -496,6 +496,7 @@ void* taosInitServer(uint32_t ip, uint32_t port, char* label, int numOfThreads,
for
(
int
i
=
0
;
i
<
srv
->
numOfThreads
;
i
++
)
{
SWorkThrdObj
*
thrd
=
(
SWorkThrdObj
*
)
calloc
(
1
,
sizeof
(
SWorkThrdObj
));
srv
->
pipe
[
i
]
=
(
uv_pipe_t
*
)
calloc
(
2
,
sizeof
(
uv_pipe_t
));
int
fds
[
2
];
if
(
uv_socketpair
(
AF_UNIX
,
SOCK_STREAM
,
fds
,
UV_NONBLOCK_PIPE
,
UV_NONBLOCK_PIPE
)
!=
0
)
{
...
...
@@ -530,6 +531,17 @@ void* taosInitServer(uint32_t ip, uint32_t port, char* label, int numOfThreads,
void
taosCloseServer
(
void
*
arg
)
{
// impl later
SServerObj
*
srv
=
arg
;
for
(
int
i
=
0
;
i
<
srv
->
numOfThreads
;
i
++
)
{
SWorkThrdObj
*
pThrd
=
srv
->
pThreadObj
[
i
];
pthread_join
(
pThrd
->
thread
,
NULL
);
free
(
srv
->
pipe
[
i
]);
free
(
pThrd
->
loop
);
free
(
pThrd
);
}
free
(
srv
->
loop
);
free
(
srv
->
pipe
);
free
(
srv
->
pThreadObj
);
pthread_join
(
srv
->
thread
,
NULL
);
}
void
rpcSendResponse
(
const
SRpcMsg
*
pMsg
)
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录