Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
de2b9fdd
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看板
未验证
提交
de2b9fdd
编写于
9月 26, 2022
作者:
S
Shengliang Guan
提交者:
GitHub
9月 26, 2022
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #16999 from taosdata/feature/TD-14761
fix:modify end condition for schemaless
上级
1cd5543f
e6d616f5
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
14 addition
and
16 deletion
+14
-16
source/client/src/clientSml.c
source/client/src/clientSml.c
+14
-16
未找到文件。
source/client/src/clientSml.c
浏览文件 @
de2b9fdd
...
...
@@ -151,13 +151,14 @@ typedef struct {
typedef
struct
{
SRequestObj
*
request
;
tsem_t
sem
;
int32_t
cnt
;
int32_t
total
;
TdThreadSpinlock
lock
;
}
Params
;
typedef
struct
{
int64_t
id
;
Params
*
params
;
bool
isLast
;
SMLProtocolType
protocol
;
int8_t
precision
;
...
...
@@ -2449,28 +2450,26 @@ static void smlInsertCallback(void *param, void *res, int32_t code) {
int32_t
rows
=
taos_affected_rows
(
pRequest
);
uDebug
(
"SML:0x%"
PRIx64
" result. code:%d, msg:%s"
,
info
->
id
,
pRequest
->
code
,
pRequest
->
msgBuf
);
Params
*
pParam
=
info
->
params
;
// lock
taosThreadSpinLock
(
&
info
->
params
->
lock
);
taosThreadSpinLock
(
&
pParam
->
lock
);
pParam
->
cnt
++
;
if
(
code
!=
TSDB_CODE_SUCCESS
)
{
info
->
params
->
request
->
code
=
code
;
info
->
params
->
request
->
body
.
resInfo
.
numOfRows
+=
rows
;
pParam
->
request
->
code
=
code
;
pParam
->
request
->
body
.
resInfo
.
numOfRows
+=
rows
;
}
else
{
info
->
params
->
request
->
body
.
resInfo
.
numOfRows
+=
info
->
affectedRows
;
pParam
->
request
->
body
.
resInfo
.
numOfRows
+=
info
->
affectedRows
;
}
if
(
pParam
->
cnt
==
pParam
->
total
)
{
tsem_post
(
&
pParam
->
sem
);
}
taosThreadSpinUnlock
(
&
info
->
params
->
lock
);
taosThreadSpinUnlock
(
&
pParam
->
lock
);
// unlock
uDebug
(
"SML:0x%"
PRIx64
" insert finished, code: %d, rows: %d, total: %d"
,
info
->
id
,
code
,
rows
,
info
->
affectedRows
);
Params
*
pParam
=
info
->
params
;
bool
isLast
=
info
->
isLast
;
info
->
cost
.
endTime
=
taosGetTimestampUs
();
info
->
cost
.
code
=
code
;
smlPrintStatisticInfo
(
info
);
smlDestroyInfo
(
info
);
if
(
isLast
)
{
tsem_post
(
&
pParam
->
sem
);
}
}
/**
...
...
@@ -2512,7 +2511,7 @@ TAOS_RES* taos_schemaless_insert(TAOS* taos, char* lines[], int numLines, int pr
pTscObj
->
schemalessType
=
1
;
SSmlMsgBuf
msg
=
{
ERROR_MSG_BUF_DEFAULT_SIZE
,
request
->
msgBuf
};
Params
params
;
Params
params
=
{
0
}
;
params
.
request
=
request
;
tsem_init
(
&
params
.
sem
,
0
,
0
);
taosThreadSpinInit
(
&
(
params
.
lock
),
0
);
...
...
@@ -2557,6 +2556,7 @@ TAOS_RES* taos_schemaless_insert(TAOS* taos, char* lines[], int numLines, int pr
}
batchs
=
ceil
(((
double
)
numLines
)
/
LINE_BATCH
);
params
.
total
=
batchs
;
for
(
int
i
=
0
;
i
<
batchs
;
++
i
)
{
SRequestObj
*
req
=
(
SRequestObj
*
)
createRequest
(
pTscObj
->
id
,
TSDB_SQL_INSERT
);
if
(
!
req
){
...
...
@@ -2575,11 +2575,9 @@ TAOS_RES* taos_schemaless_insert(TAOS* taos, char* lines[], int numLines, int pr
if
(
numLines
>
perBatch
)
{
numLines
-=
perBatch
;
info
->
isLast
=
false
;
}
else
{
perBatch
=
numLines
;
numLines
=
0
;
info
->
isLast
=
true
;
}
info
->
params
=
&
params
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录