Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
慢慢CG
TDengine
提交
0ef47ab5
T
TDengine
项目概览
慢慢CG
/
TDengine
与 Fork 源项目一致
Fork自
taosdata / TDengine
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
0ef47ab5
编写于
10月 09, 2021
作者:
Z
zhaoyanggh
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[TD-10538]<feature>taosdemo support csv ts col
上级
b46a0521
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
50 addition
and
3 deletion
+50
-3
src/kit/taosdemo/taosdemo.c
src/kit/taosdemo/taosdemo.c
+50
-3
未找到文件。
src/kit/taosdemo/taosdemo.c
浏览文件 @
0ef47ab5
...
...
@@ -303,6 +303,7 @@ typedef struct SSuperTable_S {
uint64_t
lenOfTagOfOneRow
;
char
*
sampleDataBuf
;
bool
sampleTs
;
uint32_t
tagSource
;
// 0: rand, 1: tag sample
char
*
tagDataBuf
;
...
...
@@ -2761,6 +2762,8 @@ static int printfInsertMeta() {
g_Dbs
.
db
[
i
].
superTbls
[
j
].
sampleFormat
);
printf
(
" sampleFile:
\033
[33m%s
\033
[0m
\n
"
,
g_Dbs
.
db
[
i
].
superTbls
[
j
].
sampleFile
);
printf
(
" sampleTs:
\033
[33m%s
\033
[0m
\n
"
,
g_Dbs
.
db
[
i
].
superTbls
[
j
].
sampleTs
?
"yes"
:
"no"
);
printf
(
" tagsFile:
\033
[33m%s
\033
[0m
\n
"
,
g_Dbs
.
db
[
i
].
superTbls
[
j
].
tagsFile
);
printf
(
" columnCount:
\033
[33m%d
\033
[0m
\n
"
,
...
...
@@ -4795,6 +4798,23 @@ static int readTagFromCsvFileToMem(SSuperTable * stbInfo) {
return
0
;
}
static
void
getAndSetRowsFromCsvFile
(
SSuperTable
*
stbInfo
)
{
FILE
*
fp
=
fopen
(
stbInfo
->
sampleFile
,
"r"
);
int
line_count
=
0
;
if
(
fp
==
NULL
)
{
errorPrint
(
"Failed to open sample file: %s, reason:%s
\n
"
,
stbInfo
->
sampleFile
,
strerror
(
errno
));
exit
(
EXIT_FAILURE
);
}
char
*
buf
=
calloc
(
1
,
stbInfo
->
maxSqlLen
);
while
(
fgets
(
buf
,
stbInfo
->
maxSqlLen
,
fp
))
{
line_count
++
;
}
fclose
(
fp
);
tmfree
(
buf
);
stbInfo
->
insertRows
=
line_count
;
}
/*
Read 10000 lines at most. If more than 10000 lines, continue to read after using
*/
...
...
@@ -5688,6 +5708,23 @@ static bool getMetaFromInsertJsonFile(cJSON* root) {
goto
PARSE_OVER
;
}
cJSON
*
sampleTs
=
cJSON_GetObjectItem
(
stbInfo
,
"sample_ts"
);
if
(
sampleTs
&&
sampleTs
->
type
==
cJSON_String
&&
sampleTs
->
valuestring
!=
NULL
)
{
if
(
0
==
strncasecmp
(
sampleTs
->
valuestring
,
"yes"
,
3
))
{
g_Dbs
.
db
[
i
].
superTbls
[
j
].
sampleTs
=
true
;
}
else
if
(
0
==
strncasecmp
(
sampleTs
->
valuestring
,
"no"
,
2
)){
g_Dbs
.
db
[
i
].
superTbls
[
j
].
sampleTs
=
false
;
}
else
{
g_Dbs
.
db
[
i
].
superTbls
[
j
].
sampleTs
=
false
;
}
}
else
if
(
!
sampleTs
)
{
g_Dbs
.
db
[
i
].
superTbls
[
j
].
sampleTs
=
false
;
}
else
{
errorPrint
(
"%s"
,
"failed to read json, sample_ts not found
\n
"
);
goto
PARSE_OVER
;
}
cJSON
*
tagsFile
=
cJSON_GetObjectItem
(
stbInfo
,
"tags_file"
);
if
((
tagsFile
&&
tagsFile
->
type
==
cJSON_String
)
&&
(
tagsFile
->
valuestring
!=
NULL
))
{
...
...
@@ -6448,13 +6485,20 @@ static int getRowDataFromSample(
}
int
dataLen
=
0
;
if
(
stbInfo
->
sampleTs
)
{
dataLen
+=
snprintf
(
dataBuf
+
dataLen
,
maxLen
-
dataLen
,
"(%s"
,
stbInfo
->
sampleDataBuf
+
stbInfo
->
lenOfOneRow
*
(
*
sampleUsePos
));
}
else
{
dataLen
+=
snprintf
(
dataBuf
+
dataLen
,
maxLen
-
dataLen
,
"(%"
PRId64
", "
,
timestamp
);
dataLen
+=
snprintf
(
dataBuf
+
dataLen
,
maxLen
-
dataLen
,
"%s"
,
stbInfo
->
sampleDataBuf
+
stbInfo
->
lenOfOneRow
*
(
*
sampleUsePos
));
}
dataLen
+=
snprintf
(
dataBuf
+
dataLen
,
maxLen
-
dataLen
,
")"
);
(
*
sampleUsePos
)
++
;
...
...
@@ -6887,6 +6931,9 @@ static int prepareSampleForStb(SSuperTable *stbInfo) {
int
ret
;
if
(
0
==
strncasecmp
(
stbInfo
->
dataSource
,
"sample"
,
strlen
(
"sample"
)))
{
if
(
stbInfo
->
sampleTs
)
{
getAndSetRowsFromCsvFile
(
stbInfo
);
}
ret
=
generateSampleFromCsvForStb
(
stbInfo
);
}
else
{
ret
=
generateSampleFromRandForStb
(
stbInfo
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录