Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
慢慢CG
TDengine
提交
1bf4e566
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看板
提交
1bf4e566
编写于
7月 28, 2021
作者:
J
jiajingbin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
modify
上级
736adcf7
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
105 addition
and
12 deletion
+105
-12
tests/pytest/insert/schemalessInsert.py
tests/pytest/insert/schemalessInsert.py
+105
-12
未找到文件。
tests/pytest/insert/schemalessInsert.py
浏览文件 @
1bf4e566
...
...
@@ -907,6 +907,11 @@ class TDTestCase:
s_stb_d_tb_a_col_m_tag_list
=
list
()
s_stb_d_tb_a_tag_m_col_list
=
list
()
s_stb_s_tb_d_ts_list
=
list
()
s_stb_s_tb_d_ts_a_col_m_tag_list
=
list
()
s_stb_s_tb_d_ts_a_tag_m_col_list
=
list
()
s_stb_d_tb_d_ts_list
=
list
()
s_stb_d_tb_d_ts_a_col_m_tag_list
=
list
()
s_stb_d_tb_d_ts_a_tag_m_col_list
=
list
()
for
i
in
range
(
count
):
d_stb_d_tb_list
.
append
(
self
.
genFullTypeSql
(
t0
=
"f"
,
c0
=
"f"
))
s_stb_s_tb_list
.
append
(
self
.
genFullTypeSql
(
stb_name
=
stb_name
,
tb_name
=
tb_name
,
t7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
c7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
))
...
...
@@ -916,8 +921,16 @@ class TDTestCase:
s_stb_d_tb_a_col_m_tag_list
.
append
(
self
.
genFullTypeSql
(
stb_name
=
stb_name
,
t7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
c7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
id_noexist_tag
=
True
,
ct_am_tag
=
True
))
s_stb_d_tb_a_tag_m_col_list
.
append
(
self
.
genFullTypeSql
(
stb_name
=
stb_name
,
t7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
c7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
id_noexist_tag
=
True
,
ct_ma_tag
=
True
))
s_stb_s_tb_d_ts_list
.
append
(
self
.
genFullTypeSql
(
stb_name
=
stb_name
,
tb_name
=
tb_name
,
t7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
c7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
ts
=
0
))
s_stb_s_tb_d_ts_a_col_m_tag_list
.
append
(
self
.
genFullTypeSql
(
stb_name
=
stb_name
,
tb_name
=
tb_name
,
t7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
c7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
ts
=
0
,
ct_am_tag
=
True
))
s_stb_s_tb_d_ts_a_tag_m_col_list
.
append
(
self
.
genFullTypeSql
(
stb_name
=
stb_name
,
tb_name
=
tb_name
,
t7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
c7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
ts
=
0
,
ct_ma_tag
=
True
))
s_stb_d_tb_d_ts_list
.
append
(
self
.
genFullTypeSql
(
stb_name
=
stb_name
,
t7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
c7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
id_noexist_tag
=
True
,
ts
=
0
))
s_stb_d_tb_d_ts_a_col_m_tag_list
.
append
(
self
.
genFullTypeSql
(
stb_name
=
stb_name
,
t7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
c7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
id_noexist_tag
=
True
,
ts
=
0
,
ct_am_tag
=
True
))
s_stb_d_tb_d_ts_a_tag_m_col_list
.
append
(
self
.
genFullTypeSql
(
stb_name
=
stb_name
,
t7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
c7
=
f
'"
{
self
.
getLongName
(
8
,
"letters"
)
}
"'
,
id_noexist_tag
=
True
,
ts
=
0
,
ct_ma_tag
=
True
))
return
d_stb_d_tb_list
,
s_stb_s_tb_list
,
s_stb_s_tb_a_col_a_tag_list
,
s_stb_s_tb_m_col_m_tag_list
,
s_stb_d_tb_list
,
s_stb_d_tb_a_col_m_tag_list
,
s_stb_d_tb_a_tag_m_col_list
,
s_stb_s_tb_d_ts_list
return
d_stb_d_tb_list
,
s_stb_s_tb_list
,
s_stb_s_tb_a_col_a_tag_list
,
s_stb_s_tb_m_col_m_tag_list
,
\
s_stb_d_tb_list
,
s_stb_d_tb_a_col_m_tag_list
,
s_stb_d_tb_a_tag_m_col_list
,
s_stb_s_tb_d_ts_list
,
\
s_stb_s_tb_d_ts_a_col_m_tag_list
,
s_stb_s_tb_d_ts_a_tag_m_col_list
,
s_stb_d_tb_d_ts_list
,
\
s_stb_d_tb_d_ts_a_col_m_tag_list
,
s_stb_d_tb_d_ts_a_tag_m_col_list
def
genMultiThreadSeq
(
self
,
sql_list
):
...
...
@@ -1052,15 +1065,86 @@ class TDTestCase:
tdSql
.
query
(
f
"select * from
{
stb_name
}
"
)
tdSql
.
checkRows
(
6
)
def
test
(
self
):
input_sql1
=
"rfasta,id=
\"
rfasta_1
\"
,t0=true,t1=127i8,t2=32767i16,t3=2147483647i32,t4=9223372036854775807i64,t5=11.12345f32,t6=22.123456789f64,t7=
\"
ddzhiksj
\"
,t8=L
\"
ncharTagValue
\"
c0=True,c1=127i8,c2=32767i16,c3=2147483647i32,c4=9223372036854775807i64,c5=11.12345f32,c6=22.123456789f64,c7=
\"
bnhwlgvj
\"
,c8=L
\"
ncharTagValue
\"
,c9=7u64 1626006833639000000ns"
def
sStbStbDdataDtsAcMtInsertMultiThreadCheckCase
(
self
):
"""
thread input same stb tb, different ts, add col, mul tag
"""
self
.
cleanStb
()
tb_name
=
self
.
getLongName
(
7
,
"letters"
)
input_sql
,
stb_name
=
self
.
genFullTypeSql
(
tb_name
=
tb_name
)
self
.
resCmp
(
input_sql
,
stb_name
)
s_stb_s_tb_d_ts_a_col_m_tag_list
=
self
.
genSqlList
(
stb_name
=
stb_name
,
tb_name
=
tb_name
)[
8
]
print
(
s_stb_s_tb_d_ts_a_col_m_tag_list
)
self
.
multiThreadRun
(
self
.
genMultiThreadSeq
(
s_stb_s_tb_d_ts_a_col_m_tag_list
))
tdSql
.
query
(
f
"show tables;"
)
tdSql
.
checkRows
(
1
)
tdSql
.
query
(
f
"select * from
{
stb_name
}
"
)
tdSql
.
checkRows
(
6
)
tdSql
.
query
(
f
"select * from
{
stb_name
}
where t8 is not NULL"
)
tdSql
.
checkRows
(
6
)
tdSql
.
query
(
f
"select * from
{
tb_name
}
where c11 is not NULL;"
)
tdSql
.
checkRows
(
5
)
def
sStbStbDdataDtsAtMcInsertMultiThreadCheckCase
(
self
):
"""
thread input same stb tb, different ts, add tag, mul col
"""
self
.
cleanStb
()
tb_name
=
self
.
getLongName
(
7
,
"letters"
)
input_sql
,
stb_name
=
self
.
genFullTypeSql
(
tb_name
=
tb_name
)
self
.
resCmp
(
input_sql
,
stb_name
)
s_stb_s_tb_d_ts_a_tag_m_col_list
=
self
.
genSqlList
(
stb_name
=
stb_name
,
tb_name
=
tb_name
)[
9
]
print
(
s_stb_s_tb_d_ts_a_tag_m_col_list
)
self
.
multiThreadRun
(
self
.
genMultiThreadSeq
(
s_stb_s_tb_d_ts_a_tag_m_col_list
))
tdSql
.
query
(
f
"show tables;"
)
tdSql
.
checkRows
(
1
)
tdSql
.
query
(
f
"select * from
{
stb_name
}
"
)
tdSql
.
checkRows
(
6
)
for
c
in
[
"c7"
,
"c8"
,
"c9"
]:
tdSql
.
query
(
f
"select * from
{
stb_name
}
where
{
c
}
is NULL"
)
tdSql
.
checkRows
(
5
)
for
t
in
[
"t10"
,
"t11"
]:
tdSql
.
query
(
f
"select * from
{
stb_name
}
where
{
t
}
is not NULL;"
)
tdSql
.
checkRows
(
6
)
def
sStbDtbDdataDtsInsertMultiThreadCheckCase
(
self
):
"""
thread input same stb, different tb, data, ts
"""
self
.
cleanStb
()
input_sql
,
stb_name
=
self
.
genFullTypeSql
()
self
.
resCmp
(
input_sql
,
stb_name
)
s_stb_d_tb_d_ts_list
=
self
.
genSqlList
(
stb_name
=
stb_name
)[
10
]
self
.
multiThreadRun
(
self
.
genMultiThreadSeq
(
s_stb_d_tb_d_ts_list
))
tdSql
.
query
(
f
"show tables;"
)
tdSql
.
checkRows
(
6
)
input_sql2
=
"rfasta,t0=true,t1=127i8,t2=32767i16,t3=2147483647i32,t4=9223372036854775807i64,t5=11.12345f32,t6=22.123456789f64,t7=
\"
ddzhiksj
\"
,t8=L
\"
ncharTagValue
\"
c0=True,c1=127i8,c2=32767i16,c3=2147483647i32,c4=9223372036854775807i64,c5=11.12345f32,c6=22.123456789f64,c7=
\"
bnhwlgvj
\"
,c8=L
\"
ncharColValue
\"
,c9=7u64 1626006833639000000ns"
input_sql3
=
f
'abcd,id="cc¥Ec",t0=True,t1=127i8,t2=32767i16,t3=2147483647i32,t4=9223372036854775807i64,t5=11.12345f32,t6=22.123456789f64,t7="ndsfdrum",t8=L"ncharTagValue" c0=f,c1=127i8,c2=32767i16,c3=2147483647i32,c4=9223372036854775807i64,c5=11.12345f32,c6=22.123456789f64,c7="igwoehkm",c8=L"ncharColValue",c9=7u64 0'
print
(
input_sql3
)
def
sStbDtbDdataDtsAcMtInsertMultiThreadCheckCase
(
self
):
"""
# ! concurrency conflict
"""
"""
thread input same stb, different tb, data, ts, add col, mul tag
"""
self
.
cleanStb
()
input_sql
,
stb_name
=
self
.
genFullTypeSql
()
self
.
resCmp
(
input_sql
,
stb_name
)
s_stb_d_tb_d_ts_a_col_m_tag_list
=
self
.
genSqlList
(
stb_name
=
stb_name
)[
11
]
print
(
s_stb_d_tb_d_ts_a_col_m_tag_list
)
self
.
multiThreadRun
(
self
.
genMultiThreadSeq
(
s_stb_d_tb_d_ts_a_col_m_tag_list
))
tdSql
.
query
(
f
"show tables;"
)
tdSql
.
checkRows
(
6
)
def
test
(
self
):
input_sql1
=
"rfasta,id=
\"
rfasta_1
\"
,t0=true,t1=127i8,t2=32767i16,t3=2147483647i32,t4=9223372036854775807i64,t5=11.12345f32,t6=22.123456789f64,t7=
\"
ddzhiksj
\"
,t8=L
\"
ncharTagValue
\"
c0=True,c1=127i8,c2=32767i16,c3=2147483647i32,c4=9223372036854775807i64,c5=11.12345f32,c6=22.123456789f64,c7=
\"
bnhwlgvj
\"
,c8=L
\"
ncharTagValue
\"
,c9=7u64 0"
input_sql2
=
"rfasta,id=
\"
rfasta_1
\"
,t0=true,t1=127i8,t2=32767i16,t3=2147483647i32,t4=9223372036854775807i64,t5=11.12345f32,t6=22.123456789f64 c0=True,c1=127i8,c2=32767i16,c3=2147483647i32,c4=9223372036854775807i64,c5=11.12345f32,c6=22.123456789f64 0"
self
.
_conn
.
insertLines
([
input_sql1
])
self
.
_conn
.
insertLines
([
input_sql2
])
# input_sql3 = f'abcd,id="cc¥Ec",t0=True,t1=127i8,t2=32767i16,t3=2147483647i32,t4=9223372036854775807i64,t5=11.12345f32,t6=22.123456789f64,t7="ndsfdrum",t8=L"ncharTagValue" c0=f,c1=127i8,c2=32767i16,c3=2147483647i32,c4=9223372036854775807i64,c5=11.12345f32,c6=22.123456789f64,c7="igwoehkm",c8=L"ncharColValue",c9=7u64 0'
# print(input_sql3)
# input_sql4 = 'hmemeb,id="kilrcrldgf",t0=F,t1=127i8,t2=32767i16,t3=2147483647i32,t4=9223372036854775807i64,t5=11.12345f32,t6=22.123456789f64,t7="fysodjql",t8=L"ncharTagValue" c0=True,c1=127i8,c2=32767i16,c3=2147483647i32,c4=9223372036854775807i64,c5=11.12345f32,c6=22.123456789f64,c7="waszbfvc",c8=L"ncharColValue",c9=7u64 0'
code
=
self
.
_conn
.
insertLines
([
input_sql3
])
print
(
code
)
#
code = self._conn.insertLines([input_sql3])
#
print(code)
# self._conn.insertLines([input_sql4])
def
runAll
(
self
):
...
...
@@ -1115,16 +1199,25 @@ class TDTestCase:
self
.
sStbDtbDdataInsertMultiThreadCheckCase
()
# ! concurrency conflict
self
.
sStbDtbDdataAcMtInsertMultiThreadCheckCase
()
self
.
sStbDtbDdataAtMcInsertMultiThreadCheckCase
()
#
self.sStbDtbDdataAcMtInsertMultiThreadCheckCase()
#
self.sStbDtbDdataAtMcInsertMultiThreadCheckCase()
# ! concurrency conflict
self
.
sStbStbDdataDtsInsertMultiThreadCheckCase
()
self
.
sStbStbDdataDtsAcMtInsertMultiThreadCheckCase
()
self
.
sStbStbDdataDtsAtMcInsertMultiThreadCheckCase
()
self
.
sStbDtbDdataDtsInsertMultiThreadCheckCase
()
# ! concurrency conflict
# self.sStbDtbDdataDtsAcMtInsertMultiThreadCheckCase()
def
run
(
self
):
print
(
"running {}"
.
format
(
__file__
))
self
.
createDb
()
self
.
runAll
()
#
self.runAll()
self
.
sStbDtbDdataDtsAcMtInsertMultiThreadCheckCase
()
# self.test()
def
stop
(
self
):
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录