Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Tonvia
TDengine
提交
85e184c5
T
TDengine
项目概览
Tonvia
/
TDengine
与 Fork 源项目一致
Fork自
taosdata / TDengine
通知
1
Star
1
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看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
85e184c5
编写于
8月 07, 2021
作者:
H
Hui Li
提交者:
GitHub
8月 07, 2021
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #7233 from taosdata/test/case_over_master2
<test> fix an test case error !
上级
85bf62aa
3aba1df2
变更
18
隐藏空白更改
内联
并排
Showing
18 changed file
with
1862 addition
and
6 deletion
+1862
-6
tests/pytest/fulltest.sh
tests/pytest/fulltest.sh
+6
-6
tests/pytest/tools/taosdemoAllTest/NanoTestCase/nano_samples.csv
...ytest/tools/taosdemoAllTest/NanoTestCase/nano_samples.csv
+100
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/nano_sampletags.csv
...st/tools/taosdemoAllTest/NanoTestCase/nano_sampletags.csv
+100
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertMSDB.json
...ools/taosdemoAllTest/NanoTestCase/taosdemoInsertMSDB.json
+63
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertNanoDB.json
...ls/taosdemoAllTest/NanoTestCase/taosdemoInsertNanoDB.json
+63
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertUSDB.json
...ools/taosdemoAllTest/NanoTestCase/taosdemoInsertUSDB.json
+63
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestInsertTime_step.py
...osdemoAllTest/NanoTestCase/taosdemoTestInsertTime_step.py
+115
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabase.json
...aosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabase.json
+88
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabaseInsertForSub.json
...st/NanoTestCase/taosdemoTestNanoDatabaseInsertForSub.json
+84
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabaseNow.json
...demoAllTest/NanoTestCase/taosdemoTestNanoDatabaseNow.json
+62
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabasecsv.json
...demoAllTest/NanoTestCase/taosdemoTestNanoDatabasecsv.json
+84
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoInsert.py
...demoAllTest/NanoTestCase/taosdemoTestSupportNanoInsert.py
+156
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoQuery.json
...emoAllTest/NanoTestCase/taosdemoTestSupportNanoQuery.json
+92
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoQuery.py
...sdemoAllTest/NanoTestCase/taosdemoTestSupportNanoQuery.py
+157
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoQuerycsv.json
...AllTest/NanoTestCase/taosdemoTestSupportNanoQuerycsv.json
+110
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoSubscribe.json
...llTest/NanoTestCase/taosdemoTestSupportNanoSubscribe.json
+32
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanosubscribe.py
...oAllTest/NanoTestCase/taosdemoTestSupportNanosubscribe.py
+125
-0
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdumpTestNanoSupport.py
...s/taosdemoAllTest/NanoTestCase/taosdumpTestNanoSupport.py
+362
-0
未找到文件。
tests/pytest/fulltest.sh
浏览文件 @
85e184c5
...
...
@@ -167,11 +167,11 @@ python3 test.py -f tools/taosdemoTestInterlace.py
python3 test.py
-f
tools/taosdemoTestQuery.py
# nano support
#python3 test.py -f tools/taosdemoAllTest
/taosdemoTestSupportNanoInsert.py
#python3 test.py -f tools/taosdemoAllTest
/taosdemoTestSupportNanoQuery.py
#python3 test.py -f tools/taosdemoAllTest
/taosdemoTestSupportNanosubscribe.py
#python3 test.py -f tools/taosdemoAllTest
/taosdemoTestInsertTime_step.py
#python3 test.py -f tools
/taosdumpTestNanoSupport.py
python3 test.py
-f
tools/taosdemoAllTest/NanoTestCase
/taosdemoTestSupportNanoInsert.py
python3 test.py
-f
tools/taosdemoAllTest/NanoTestCase
/taosdemoTestSupportNanoQuery.py
python3 test.py
-f
tools/taosdemoAllTest/NanoTestCase
/taosdemoTestSupportNanosubscribe.py
python3 test.py
-f
tools/taosdemoAllTest/NanoTestCase
/taosdemoTestInsertTime_step.py
python3 test.py
-f
tools/taosdemoAllTest/NanoTestCase
/taosdumpTestNanoSupport.py
# update
python3 ./test.py
-f
update/allow_update.py
...
...
@@ -382,7 +382,7 @@ python3 ./test.py -f insert/flushwhiledrop.py
python3 ./test.py
-f
insert/schemalessInsert.py
#======================p4-end===============
# python3 test.py -f tools/taosdemoAllTest/pytest.py
...
...
tests/pytest/tools/taosdemoAllTest/NanoTestCase/nano_samples.csv
0 → 100644
浏览文件 @
85e184c5
8.855,"binary_str0" ,1626870128248246976
8.75,"binary_str1" ,1626870128249060032
5.44,"binary_str2" ,1626870128249067968
8.45,"binary_str3" ,1626870128249072064
4.07,"binary_str4" ,1626870128249075904
6.97,"binary_str5" ,1626870128249078976
6.86,"binary_str6" ,1626870128249082048
1.585,"binary_str7" ,1626870128249085120
1.4,"binary_str8" ,1626870128249087936
5.135,"binary_str9" ,1626870128249092032
3.15,"binary_str10" ,1626870128249095104
1.765,"binary_str11" ,1626870128249097920
7.71,"binary_str12" ,1626870128249100992
3.91,"binary_str13" ,1626870128249104064
5.615,"binary_str14" ,1626870128249106880
9.495,"binary_str15" ,1626870128249109952
3.825,"binary_str16" ,1626870128249113024
1.94,"binary_str17" ,1626870128249117120
5.385,"binary_str18" ,1626870128249119936
7.075,"binary_str19" ,1626870128249123008
5.715,"binary_str20" ,1626870128249126080
1.83,"binary_str21" ,1626870128249128896
6.365,"binary_str22" ,1626870128249131968
6.55,"binary_str23" ,1626870128249135040
6.315,"binary_str24" ,1626870128249138112
3.82,"binary_str25" ,1626870128249140928
2.455,"binary_str26" ,1626870128249145024
7.795,"binary_str27" ,1626870128249148096
2.47,"binary_str28" ,1626870128249150912
1.37,"binary_str29" ,1626870128249155008
5.39,"binary_str30" ,1626870128249158080
5.13,"binary_str31" ,1626870128249160896
4.09,"binary_str32" ,1626870128249163968
5.855,"binary_str33" ,1626870128249167040
0.17,"binary_str34" ,1626870128249170112
1.955,"binary_str35" ,1626870128249173952
0.585,"binary_str36" ,1626870128249178048
0.33,"binary_str37" ,1626870128249181120
7.925,"binary_str38" ,1626870128249183936
9.685,"binary_str39" ,1626870128249187008
2.6,"binary_str40" ,1626870128249191104
5.705,"binary_str41" ,1626870128249193920
3.965,"binary_str42" ,1626870128249196992
4.43,"binary_str43" ,1626870128249200064
8.73,"binary_str44" ,1626870128249202880
3.105,"binary_str45" ,1626870128249205952
9.39,"binary_str46" ,1626870128249209024
2.825,"binary_str47" ,1626870128249212096
9.675,"binary_str48" ,1626870128249214912
9.99,"binary_str49" ,1626870128249217984
4.51,"binary_str50" ,1626870128249221056
4.94,"binary_str51" ,1626870128249223872
7.72,"binary_str52" ,1626870128249226944
4.135,"binary_str53" ,1626870128249231040
2.325,"binary_str54" ,1626870128249234112
4.585,"binary_str55" ,1626870128249236928
8.76,"binary_str56" ,1626870128249240000
4.715,"binary_str57" ,1626870128249243072
0.56,"binary_str58" ,1626870128249245888
5.35,"binary_str59" ,1626870128249249984
5.075,"binary_str60" ,1626870128249253056
6.665,"binary_str61" ,1626870128249256128
7.13,"binary_str62" ,1626870128249258944
2.775,"binary_str63" ,1626870128249262016
5.775,"binary_str64" ,1626870128249265088
1.62,"binary_str65" ,1626870128249267904
1.625,"binary_str66" ,1626870128249270976
8.15,"binary_str67" ,1626870128249274048
0.75,"binary_str68" ,1626870128249277120
3.265,"binary_str69" ,1626870128249280960
8.585,"binary_str70" ,1626870128249284032
1.88,"binary_str71" ,1626870128249287104
8.44,"binary_str72" ,1626870128249289920
5.12,"binary_str73" ,1626870128249295040
2.58,"binary_str74" ,1626870128249298112
9.42,"binary_str75" ,1626870128249300928
1.765,"binary_str76" ,1626870128249304000
2.66,"binary_str77" ,1626870128249308096
1.405,"binary_str78" ,1626870128249310912
5.595,"binary_str79" ,1626870128249315008
2.28,"binary_str80" ,1626870128249318080
9.24,"binary_str81" ,1626870128249320896
9.03,"binary_str82" ,1626870128249323968
6.055,"binary_str83" ,1626870128249327040
1.74,"binary_str84" ,1626870128249330112
5.77,"binary_str85" ,1626870128249332928
1.97,"binary_str86" ,1626870128249336000
0.3,"binary_str87" ,1626870128249339072
7.145,"binary_str88" ,1626870128249342912
0.88,"binary_str89" ,1626870128249345984
8.025,"binary_str90" ,1626870128249349056
4.81,"binary_str91" ,1626870128249351872
0.725,"binary_str92" ,1626870128249355968
3.85,"binary_str93" ,1626870128249359040
9.455,"binary_str94" ,1626870128249362112
2.265,"binary_str95" ,1626870128249364928
3.985,"binary_str96" ,1626870128249368000
9.375,"binary_str97" ,1626870128249371072
0.2,"binary_str98" ,1626870128249373888
6.95,"binary_str99" ,1626870128249377984
tests/pytest/tools/taosdemoAllTest/NanoTestCase/nano_sampletags.csv
0 → 100644
浏览文件 @
85e184c5
"string0",7,8.615
"string1",4,9.895
"string2",3,2.92
"string3",3,5.62
"string4",7,1.615
"string5",6,1.45
"string6",5,7.48
"string7",7,3.01
"string8",5,4.76
"string9",10,7.09
"string10",2,8.38
"string11",7,8.65
"string12",5,5.025
"string13",10,5.765
"string14",2,4.57
"string15",2,1.03
"string16",7,6.98
"string17",10,0.23
"string18",7,5.815
"string19",1,2.37
"string20",10,8.865
"string21",3,1.235
"string22",2,8.62
"string23",9,1.045
"string24",8,4.34
"string25",1,5.455
"string26",2,4.475
"string27",1,6.95
"string28",2,3.39
"string29",3,6.79
"string30",7,9.735
"string31",1,9.79
"string32",10,9.955
"string33",1,5.095
"string34",3,3.86
"string35",9,5.105
"string36",10,4.22
"string37",1,2.78
"string38",9,6.345
"string39",1,0.975
"string40",5,6.16
"string41",4,7.735
"string42",5,6.6
"string43",8,2.845
"string44",1,0.655
"string45",3,2.995
"string46",9,3.6
"string47",8,3.47
"string48",3,7.98
"string49",6,2.225
"string50",9,5.44
"string51",4,6.335
"string52",3,2.955
"string53",1,0.565
"string54",6,5.575
"string55",6,9.905
"string56",9,6.025
"string57",8,0.94
"string58",10,0.15
"string59",8,1.555
"string60",4,2.28
"string61",2,8.29
"string62",9,6.22
"string63",6,3.35
"string64",10,6.7
"string65",3,9.345
"string66",7,9.815
"string67",1,5.365
"string68",10,3.81
"string69",1,6.405
"string70",8,2.715
"string71",3,8.58
"string72",8,6.34
"string73",2,7.49
"string74",4,8.64
"string75",3,8.995
"string76",7,3.465
"string77",1,7.64
"string78",6,3.65
"string79",6,1.4
"string80",6,5.875
"string81",2,1.22
"string82",5,7.87
"string83",9,8.41
"string84",9,8.9
"string85",9,3.89
"string86",2,5.0
"string87",2,4.495
"string88",4,2.835
"string89",3,5.895
"string90",7,8.41
"string91",5,5.125
"string92",7,9.165
"string93",5,8.315
"string94",10,7.485
"string95",7,4.635
"string96",2,6.015
"string97",8,0.595
"string98",3,8.79
"string99",4,1.72
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertMSDB.json
0 → 100644
浏览文件 @
85e184c5
{
"filetype"
:
"insert"
,
"cfgdir"
:
"/etc/taos"
,
"host"
:
"127.0.0.1"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"thread_count_create_tbl"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
"interlace_rows"
:
100
,
"num_of_records_per_req"
:
1000
,
"max_sql_len"
:
1024000
,
"databases"
:
[{
"dbinfo"
:
{
"name"
:
"testdb3"
,
"drop"
:
"yes"
,
"replica"
:
1
,
"days"
:
10
,
"cache"
:
50
,
"blocks"
:
8
,
"precision"
:
"ms"
,
"keep"
:
3600
,
"minRows"
:
100
,
"maxRows"
:
4096
,
"comp"
:
2
,
"walLevel"
:
1
,
"cachelast"
:
0
,
"quorum"
:
1
,
"fsync"
:
3000
,
"update"
:
0
},
"super_tables"
:
[{
"name"
:
"stb0"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
100
,
"childtable_prefix"
:
"tb0_"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
20
,
"data_source"
:
"rand"
,
"insert_mode"
:
"taosc"
,
"insert_rows"
:
100
,
"childtable_offset"
:
0
,
"multi_thread_write_one_tbl"
:
"no"
,
"insert_interval"
:
0
,
"max_sql_len"
:
1024000
,
"disorder_ratio"
:
0
,
"disorder_range"
:
1000
,
"timestamp_step"
:
1000
,
"start_timestamp"
:
"2021-07-01 00:00:00.000"
,
"sample_format"
:
""
,
"sample_file"
:
""
,
"tags_file"
:
""
,
"columns"
:
[{
"type"
:
"INT"
},
{
"type"
:
"DOUBLE"
,
"count"
:
3
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
32
,
"count"
:
2
},
{
"type"
:
"TIMESTAMP"
},
{
"type"
:
"BIGINT"
,
"count"
:
3
},{
"type"
:
"FLOAT"
,
"count"
:
1
},{
"type"
:
"SMALLINT"
,
"count"
:
1
},{
"type"
:
"TINYINT"
,
"count"
:
1
},
{
"type"
:
"BOOL"
},{
"type"
:
"NCHAR"
,
"len"
:
16
}],
"tags"
:
[{
"type"
:
"TINYINT"
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
5
},{
"type"
:
"NCHAR"
,
"len"
:
16
,
"count"
:
1
}]
}]
}]
}
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertNanoDB.json
0 → 100644
浏览文件 @
85e184c5
{
"filetype"
:
"insert"
,
"cfgdir"
:
"/etc/taos"
,
"host"
:
"127.0.0.1"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"thread_count_create_tbl"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
"interlace_rows"
:
100
,
"num_of_records_per_req"
:
1000
,
"max_sql_len"
:
1024000
,
"databases"
:
[{
"dbinfo"
:
{
"name"
:
"testdb1"
,
"drop"
:
"yes"
,
"replica"
:
1
,
"days"
:
10
,
"cache"
:
50
,
"blocks"
:
8
,
"precision"
:
"ns"
,
"keep"
:
3600
,
"minRows"
:
100
,
"maxRows"
:
4096
,
"comp"
:
2
,
"walLevel"
:
1
,
"cachelast"
:
0
,
"quorum"
:
1
,
"fsync"
:
3000
,
"update"
:
0
},
"super_tables"
:
[{
"name"
:
"stb0"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
100
,
"childtable_prefix"
:
"tb0_"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
20
,
"data_source"
:
"rand"
,
"insert_mode"
:
"taosc"
,
"insert_rows"
:
100
,
"childtable_offset"
:
0
,
"multi_thread_write_one_tbl"
:
"no"
,
"insert_interval"
:
0
,
"max_sql_len"
:
1024000
,
"disorder_ratio"
:
0
,
"disorder_range"
:
1000
,
"timestamp_step"
:
1000
,
"start_timestamp"
:
"2021-07-01 00:00:00.000"
,
"sample_format"
:
""
,
"sample_file"
:
""
,
"tags_file"
:
""
,
"columns"
:
[{
"type"
:
"INT"
},
{
"type"
:
"DOUBLE"
,
"count"
:
3
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
32
,
"count"
:
2
},
{
"type"
:
"TIMESTAMP"
},
{
"type"
:
"BIGINT"
,
"count"
:
3
},{
"type"
:
"FLOAT"
,
"count"
:
1
},{
"type"
:
"SMALLINT"
,
"count"
:
1
},{
"type"
:
"TINYINT"
,
"count"
:
1
},
{
"type"
:
"BOOL"
},{
"type"
:
"NCHAR"
,
"len"
:
16
}],
"tags"
:
[{
"type"
:
"TINYINT"
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
5
},{
"type"
:
"NCHAR"
,
"len"
:
16
,
"count"
:
1
}]
}]
}]
}
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertUSDB.json
0 → 100644
浏览文件 @
85e184c5
{
"filetype"
:
"insert"
,
"cfgdir"
:
"/etc/taos"
,
"host"
:
"127.0.0.1"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"thread_count_create_tbl"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
"interlace_rows"
:
100
,
"num_of_records_per_req"
:
1000
,
"max_sql_len"
:
1024000
,
"databases"
:
[{
"dbinfo"
:
{
"name"
:
"testdb2"
,
"drop"
:
"yes"
,
"replica"
:
1
,
"days"
:
10
,
"cache"
:
50
,
"blocks"
:
8
,
"precision"
:
"us"
,
"keep"
:
3600
,
"minRows"
:
100
,
"maxRows"
:
4096
,
"comp"
:
2
,
"walLevel"
:
1
,
"cachelast"
:
0
,
"quorum"
:
1
,
"fsync"
:
3000
,
"update"
:
0
},
"super_tables"
:
[{
"name"
:
"stb0"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
100
,
"childtable_prefix"
:
"tb0_"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
20
,
"data_source"
:
"rand"
,
"insert_mode"
:
"taosc"
,
"insert_rows"
:
100
,
"childtable_offset"
:
0
,
"multi_thread_write_one_tbl"
:
"no"
,
"insert_interval"
:
0
,
"max_sql_len"
:
1024000
,
"disorder_ratio"
:
0
,
"disorder_range"
:
1000
,
"timestamp_step"
:
1000
,
"start_timestamp"
:
"2021-07-01 00:00:00.000"
,
"sample_format"
:
""
,
"sample_file"
:
""
,
"tags_file"
:
""
,
"columns"
:
[{
"type"
:
"INT"
},
{
"type"
:
"DOUBLE"
,
"count"
:
3
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
32
,
"count"
:
2
},
{
"type"
:
"TIMESTAMP"
},
{
"type"
:
"BIGINT"
,
"count"
:
3
},{
"type"
:
"FLOAT"
,
"count"
:
1
},{
"type"
:
"SMALLINT"
,
"count"
:
1
},{
"type"
:
"TINYINT"
,
"count"
:
1
},
{
"type"
:
"BOOL"
},{
"type"
:
"NCHAR"
,
"len"
:
16
}],
"tags"
:
[{
"type"
:
"TINYINT"
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
5
},{
"type"
:
"NCHAR"
,
"len"
:
16
,
"count"
:
1
}]
}]
}]
}
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestInsertTime_step.py
0 → 100644
浏览文件 @
85e184c5
###################################################################
# Copyright (c) 2016 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# -*- coding: utf-8 -*-
import
sys
import
os
from
util.log
import
*
from
util.cases
import
*
from
util.sql
import
*
from
util.dnodes
import
*
class
TDTestCase
:
def
init
(
self
,
conn
,
logSql
):
tdLog
.
debug
(
"start to execute %s"
%
__file__
)
tdSql
.
init
(
conn
.
cursor
(),
logSql
)
def
getBuildPath
(
self
):
selfPath
=
os
.
path
.
dirname
(
os
.
path
.
realpath
(
__file__
))
if
(
"community"
in
selfPath
):
projPath
=
selfPath
[:
selfPath
.
find
(
"community"
)]
else
:
projPath
=
selfPath
[:
selfPath
.
find
(
"tests"
)]
for
root
,
dirs
,
files
in
os
.
walk
(
projPath
):
if
(
"taosd"
in
files
):
rootRealPath
=
os
.
path
.
dirname
(
os
.
path
.
realpath
(
root
))
if
(
"packaging"
not
in
rootRealPath
):
buildPath
=
root
[:
len
(
root
)
-
len
(
"/build/bin"
)]
break
return
buildPath
def
run
(
self
):
buildPath
=
self
.
getBuildPath
()
if
(
buildPath
==
""
):
tdLog
.
exit
(
"taosd not found!"
)
else
:
tdLog
.
info
(
"taosd found in %s"
%
buildPath
)
binPath
=
buildPath
+
"/build/bin/"
# insert: create one or mutiple tables per sql and insert multiple rows per sql
# check the params of taosdemo about time_step is nano
os
.
system
(
"%staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoInsertNanoDB.json -y "
%
binPath
)
tdSql
.
execute
(
"use testdb1"
)
tdSql
.
query
(
"show stables"
)
tdSql
.
checkData
(
0
,
4
,
100
)
tdSql
.
query
(
"select count (tbname) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from tb0_0"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
10000
)
tdSql
.
query
(
"describe stb0"
)
tdSql
.
getData
(
9
,
1
)
tdSql
.
checkDataType
(
9
,
1
,
"TIMESTAMP"
)
tdSql
.
query
(
"select last(ts) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
"2021-07-01 00:00:00.000099000"
)
# check the params of taosdemo about time_step is us
os
.
system
(
"%staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoInsertUSDB.json -y "
%
binPath
)
tdSql
.
execute
(
"use testdb2"
)
tdSql
.
query
(
"show stables"
)
tdSql
.
checkData
(
0
,
4
,
100
)
tdSql
.
query
(
"select count (tbname) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from tb0_0"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
10000
)
tdSql
.
query
(
"describe stb0"
)
tdSql
.
getData
(
9
,
1
)
tdSql
.
checkDataType
(
9
,
1
,
"TIMESTAMP"
)
tdSql
.
query
(
"select last(ts) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
"2021-07-01 00:00:00.099000"
)
# check the params of taosdemo about time_step is ms
os
.
system
(
"%staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoInsertMSDB.json -y "
%
binPath
)
tdSql
.
execute
(
"use testdb3"
)
tdSql
.
query
(
"show stables"
)
tdSql
.
checkData
(
0
,
4
,
100
)
tdSql
.
query
(
"select count (tbname) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from tb0_0"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
10000
)
tdSql
.
query
(
"describe stb0"
)
tdSql
.
checkDataType
(
9
,
1
,
"TIMESTAMP"
)
tdSql
.
query
(
"select last(ts) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
"2021-07-01 00:01:39.000"
)
os
.
system
(
"rm -rf ./res.txt"
)
os
.
system
(
"rm -rf ./*.py.sql"
)
def
stop
(
self
):
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdCases
.
addWindows
(
__file__
,
TDTestCase
())
tdCases
.
addLinux
(
__file__
,
TDTestCase
())
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabase.json
0 → 100644
浏览文件 @
85e184c5
{
"filetype"
:
"insert"
,
"cfgdir"
:
"/etc/taos"
,
"host"
:
"127.0.0.1"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"thread_count_create_tbl"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
"interlace_rows"
:
100
,
"num_of_records_per_req"
:
1000
,
"max_sql_len"
:
1024000
,
"databases"
:
[{
"dbinfo"
:
{
"name"
:
"nsdb"
,
"drop"
:
"yes"
,
"replica"
:
1
,
"days"
:
10
,
"cache"
:
50
,
"blocks"
:
8
,
"precision"
:
"ns"
,
"keep"
:
3600
,
"minRows"
:
100
,
"maxRows"
:
4096
,
"comp"
:
2
,
"walLevel"
:
1
,
"cachelast"
:
0
,
"quorum"
:
1
,
"fsync"
:
3000
,
"update"
:
0
},
"super_tables"
:
[{
"name"
:
"stb0"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
100
,
"childtable_prefix"
:
"tb0_"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
20
,
"data_source"
:
"rand"
,
"insert_mode"
:
"taosc"
,
"insert_rows"
:
100
,
"childtable_offset"
:
0
,
"multi_thread_write_one_tbl"
:
"no"
,
"insert_interval"
:
0
,
"max_sql_len"
:
1024000
,
"disorder_ratio"
:
0
,
"disorder_range"
:
1000
,
"timestamp_step"
:
10000000
,
"start_timestamp"
:
"2021-07-01 00:00:00.000"
,
"sample_format"
:
""
,
"sample_file"
:
""
,
"tags_file"
:
""
,
"columns"
:
[{
"type"
:
"INT"
},
{
"type"
:
"DOUBLE"
,
"count"
:
3
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
32
,
"count"
:
2
},
{
"type"
:
"TIMESTAMP"
},
{
"type"
:
"BIGINT"
,
"count"
:
3
},{
"type"
:
"FLOAT"
,
"count"
:
1
},{
"type"
:
"SMALLINT"
,
"count"
:
1
},{
"type"
:
"TINYINT"
,
"count"
:
1
},
{
"type"
:
"BOOL"
},{
"type"
:
"NCHAR"
,
"len"
:
16
}],
"tags"
:
[{
"type"
:
"TINYINT"
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
5
},{
"type"
:
"NCHAR"
,
"len"
:
16
,
"count"
:
1
}]
},
{
"name"
:
"stb1"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
100
,
"childtable_prefix"
:
"tb1_"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
20
,
"data_source"
:
"rand"
,
"insert_mode"
:
"taosc"
,
"insert_rows"
:
100
,
"childtable_offset"
:
0
,
"multi_thread_write_one_tbl"
:
"no"
,
"insert_interval"
:
0
,
"max_sql_len"
:
1024000
,
"disorder_ratio"
:
10
,
"disorder_range"
:
1000
,
"timestamp_step"
:
10000000
,
"start_timestamp"
:
"2021-07-01 00:00:00.000"
,
"sample_format"
:
""
,
"sample_file"
:
""
,
"tags_file"
:
""
,
"columns"
:
[{
"type"
:
"INT"
},
{
"type"
:
"DOUBLE"
,
"count"
:
3
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
32
,
"count"
:
2
},
{
"type"
:
"TIMESTAMP"
},
{
"type"
:
"BIGINT"
,
"count"
:
3
},{
"type"
:
"FLOAT"
,
"count"
:
1
},{
"type"
:
"SMALLINT"
,
"count"
:
1
},{
"type"
:
"TINYINT"
,
"count"
:
1
},
{
"type"
:
"BOOL"
},{
"type"
:
"NCHAR"
,
"len"
:
16
}],
"tags"
:
[{
"type"
:
"TINYINT"
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
5
},{
"type"
:
"NCHAR"
,
"len"
:
16
,
"count"
:
1
}]
}]
}]
}
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabaseInsertForSub.json
0 → 100644
浏览文件 @
85e184c5
{
"filetype"
:
"insert"
,
"cfgdir"
:
"/etc/taos"
,
"host"
:
"127.0.0.1"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"thread_count_create_tbl"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
"interlace_rows"
:
100
,
"num_of_records_per_req"
:
1000
,
"max_sql_len"
:
1024000
,
"databases"
:
[{
"dbinfo"
:
{
"name"
:
"subnsdb"
,
"drop"
:
"yes"
,
"replica"
:
1
,
"days"
:
10
,
"cache"
:
50
,
"blocks"
:
8
,
"precision"
:
"ns"
,
"keep"
:
3600
,
"minRows"
:
100
,
"maxRows"
:
4096
,
"comp"
:
2
,
"walLevel"
:
1
,
"cachelast"
:
0
,
"quorum"
:
1
,
"fsync"
:
3000
,
"update"
:
0
},
"super_tables"
:
[{
"name"
:
"stb0"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
10
,
"childtable_prefix"
:
"tb0_"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
20
,
"data_source"
:
"samples"
,
"insert_mode"
:
"taosc"
,
"insert_rows"
:
10
,
"childtable_offset"
:
0
,
"multi_thread_write_one_tbl"
:
"no"
,
"insert_interval"
:
0
,
"max_sql_len"
:
1024000
,
"disorder_ratio"
:
0
,
"disorder_range"
:
1000
,
"timestamp_step"
:
10000000
,
"start_timestamp"
:
"2021-07-01 00:00:00.000"
,
"sample_format"
:
"csv"
,
"sample_file"
:
"./tools/taosdemoAllTest/NanoTestCase/nano_samples.csv"
,
"tags_file"
:
"./tools/taosdemoAllTest/NanoTestCase/nano_sampletags.csv"
,
"columns"
:
[{
"type"
:
"DOUBLE"
},
{
"type"
:
"BINARY"
,
"len"
:
64
,
"count"
:
1
},
{
"type"
:
"TIMESTAMP"
,
"count"
:
1
}],
"tags"
:
[{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
1
},{
"type"
:
"INT"
},{
"type"
:
"DOUBLE"
}]
},
{
"name"
:
"stb1"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
10
,
"childtable_prefix"
:
"tb1_"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
20
,
"data_source"
:
"samples"
,
"insert_mode"
:
"taosc"
,
"insert_rows"
:
10
,
"childtable_offset"
:
0
,
"multi_thread_write_one_tbl"
:
"no"
,
"insert_interval"
:
0
,
"max_sql_len"
:
1024000
,
"disorder_ratio"
:
10
,
"disorder_range"
:
1000
,
"timestamp_step"
:
10000000
,
"start_timestamp"
:
"2021-07-01 00:00:00.000"
,
"sample_format"
:
"csv"
,
"sample_file"
:
"./tools/taosdemoAllTest/NanoTestCase/nano_samples.csv"
,
"tags_file"
:
"./tools/taosdemoAllTest/NanoTestCase/nano_sampletags.csv"
,
"columns"
:
[{
"type"
:
"DOUBLE"
},
{
"type"
:
"BINARY"
,
"len"
:
64
,
"count"
:
1
},
{
"type"
:
"TIMESTAMP"
,
"count"
:
1
}],
"tags"
:
[{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
1
},{
"type"
:
"INT"
},{
"type"
:
"DOUBLE"
}]
}]
}]
}
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabaseNow.json
0 → 100644
浏览文件 @
85e184c5
{
"filetype"
:
"insert"
,
"cfgdir"
:
"/etc/taos"
,
"host"
:
"127.0.0.1"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"thread_count_create_tbl"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
"interlace_rows"
:
100
,
"num_of_records_per_req"
:
1000
,
"max_sql_len"
:
1024000
,
"databases"
:
[{
"dbinfo"
:
{
"name"
:
"nsdb2"
,
"drop"
:
"yes"
,
"replica"
:
1
,
"days"
:
10
,
"cache"
:
50
,
"blocks"
:
8
,
"precision"
:
"ns"
,
"keep"
:
3600
,
"minRows"
:
100
,
"maxRows"
:
4096
,
"comp"
:
2
,
"walLevel"
:
1
,
"cachelast"
:
0
,
"quorum"
:
1
,
"fsync"
:
3000
,
"update"
:
0
},
"super_tables"
:
[{
"name"
:
"stb0"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
100
,
"childtable_prefix"
:
"tb0_"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
20
,
"data_source"
:
"rand"
,
"insert_mode"
:
"taosc"
,
"insert_rows"
:
100
,
"childtable_offset"
:
0
,
"multi_thread_write_one_tbl"
:
"no"
,
"insert_interval"
:
0
,
"max_sql_len"
:
1024000
,
"disorder_ratio"
:
0
,
"disorder_range"
:
1000
,
"timestamp_step"
:
10
,
"start_timestamp"
:
"now"
,
"sample_format"
:
""
,
"sample_file"
:
""
,
"tags_file"
:
""
,
"columns"
:
[{
"type"
:
"INT"
},
{
"type"
:
"DOUBLE"
,
"count"
:
3
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
32
,
"count"
:
2
},
{
"type"
:
"TIMESTAMP"
},
{
"type"
:
"BIGINT"
,
"count"
:
3
},{
"type"
:
"FLOAT"
,
"count"
:
1
},{
"type"
:
"SMALLINT"
,
"count"
:
1
},{
"type"
:
"TINYINT"
,
"count"
:
1
},
{
"type"
:
"BOOL"
},{
"type"
:
"NCHAR"
,
"len"
:
16
}],
"tags"
:
[{
"type"
:
"TINYINT"
,
"count"
:
2
},
{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
5
},{
"type"
:
"NCHAR"
,
"len"
:
16
,
"count"
:
1
}]
}]
}]
}
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabasecsv.json
0 → 100644
浏览文件 @
85e184c5
{
"filetype"
:
"insert"
,
"cfgdir"
:
"/etc/taos"
,
"host"
:
"127.0.0.1"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"thread_count_create_tbl"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
"interlace_rows"
:
100
,
"num_of_records_per_req"
:
1000
,
"max_sql_len"
:
1024000
,
"databases"
:
[{
"dbinfo"
:
{
"name"
:
"nsdbcsv"
,
"drop"
:
"yes"
,
"replica"
:
1
,
"days"
:
10
,
"cache"
:
50
,
"blocks"
:
8
,
"precision"
:
"ns"
,
"keep"
:
3600
,
"minRows"
:
100
,
"maxRows"
:
4096
,
"comp"
:
2
,
"walLevel"
:
1
,
"cachelast"
:
0
,
"quorum"
:
1
,
"fsync"
:
3000
,
"update"
:
0
},
"super_tables"
:
[{
"name"
:
"stb0"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
100
,
"childtable_prefix"
:
"tb0_"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
20
,
"data_source"
:
"samples"
,
"insert_mode"
:
"taosc"
,
"insert_rows"
:
100
,
"childtable_offset"
:
0
,
"multi_thread_write_one_tbl"
:
"no"
,
"insert_interval"
:
0
,
"max_sql_len"
:
1024000
,
"disorder_ratio"
:
0
,
"disorder_range"
:
1000
,
"timestamp_step"
:
10000000
,
"start_timestamp"
:
"2021-07-01 00:00:00.000"
,
"sample_format"
:
"csv"
,
"sample_file"
:
"./tools/taosdemoAllTest/NanoTestCase/nano_samples.csv"
,
"tags_file"
:
"./tools/taosdemoAllTest/NanoTestCase/nano_sampletags.csv"
,
"columns"
:
[{
"type"
:
"DOUBLE"
},
{
"type"
:
"BINARY"
,
"len"
:
64
,
"count"
:
1
},
{
"type"
:
"TIMESTAMP"
,
"count"
:
1
}],
"tags"
:
[{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
1
},{
"type"
:
"INT"
},{
"type"
:
"DOUBLE"
}]
},
{
"name"
:
"stb1"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
100
,
"childtable_prefix"
:
"tb1_"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
20
,
"data_source"
:
"samples"
,
"insert_mode"
:
"taosc"
,
"insert_rows"
:
100
,
"childtable_offset"
:
0
,
"multi_thread_write_one_tbl"
:
"no"
,
"insert_interval"
:
0
,
"max_sql_len"
:
1024000
,
"disorder_ratio"
:
10
,
"disorder_range"
:
1000
,
"timestamp_step"
:
10000000
,
"start_timestamp"
:
"2021-07-01 00:00:00.000"
,
"sample_format"
:
"csv"
,
"sample_file"
:
"./tools/taosdemoAllTest/NanoTestCase/nano_samples.csv"
,
"tags_file"
:
"./tools/taosdemoAllTest/NanoTestCase/nano_sampletags.csv"
,
"columns"
:
[{
"type"
:
"DOUBLE"
},
{
"type"
:
"BINARY"
,
"len"
:
64
,
"count"
:
1
},
{
"type"
:
"TIMESTAMP"
,
"count"
:
1
}],
"tags"
:
[{
"type"
:
"BINARY"
,
"len"
:
16
,
"count"
:
1
},{
"type"
:
"INT"
},{
"type"
:
"DOUBLE"
}]
}]
}]
}
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoInsert.py
0 → 100644
浏览文件 @
85e184c5
###################################################################
# Copyright (c) 2016 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# -*- coding: utf-8 -*-
import
sys
import
os
from
util.log
import
*
from
util.cases
import
*
from
util.sql
import
*
from
util.dnodes
import
*
class
TDTestCase
:
def
init
(
self
,
conn
,
logSql
):
tdLog
.
debug
(
"start to execute %s"
%
__file__
)
tdSql
.
init
(
conn
.
cursor
(),
logSql
)
def
getBuildPath
(
self
):
selfPath
=
os
.
path
.
dirname
(
os
.
path
.
realpath
(
__file__
))
if
(
"community"
in
selfPath
):
projPath
=
selfPath
[:
selfPath
.
find
(
"community"
)]
else
:
projPath
=
selfPath
[:
selfPath
.
find
(
"tests"
)]
for
root
,
dirs
,
files
in
os
.
walk
(
projPath
):
if
(
"taosd"
in
files
):
rootRealPath
=
os
.
path
.
dirname
(
os
.
path
.
realpath
(
root
))
if
(
"packaging"
not
in
rootRealPath
):
buildPath
=
root
[:
len
(
root
)
-
len
(
"/build/bin"
)]
break
return
buildPath
def
run
(
self
):
buildPath
=
self
.
getBuildPath
()
if
(
buildPath
==
""
):
tdLog
.
exit
(
"taosd not found!"
)
else
:
tdLog
.
info
(
"taosd found in %s"
%
buildPath
)
binPath
=
buildPath
+
"/build/bin/"
# insert: create one or mutiple tables per sql and insert multiple rows per sql
# insert data from a special timestamp
# check stable stb0
os
.
system
(
"%staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabase.json -y "
%
binPath
)
tdSql
.
execute
(
"use nsdb"
)
tdSql
.
query
(
"show stables"
)
tdSql
.
checkData
(
0
,
4
,
100
)
tdSql
.
query
(
"select count (tbname) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from tb0_0"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
10000
)
tdSql
.
query
(
"describe stb0"
)
tdSql
.
checkDataType
(
9
,
1
,
"TIMESTAMP"
)
tdSql
.
query
(
"select last(ts) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
"2021-07-01 00:00:00.990000000"
)
# check stable stb1 which is insert with disord
tdSql
.
query
(
"select count (tbname) from stb1"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from tb1_0"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from stb1"
)
tdSql
.
checkData
(
0
,
0
,
10000
)
# check c8 is an nano timestamp
tdSql
.
query
(
"describe stb1"
)
tdSql
.
checkDataType
(
9
,
1
,
"TIMESTAMP"
)
# check insert timestamp_step is nano_second
tdSql
.
query
(
"select last(ts) from stb1"
)
tdSql
.
checkData
(
0
,
0
,
"2021-07-01 00:00:00.990000000"
)
# insert data from now time
# check stable stb0
os
.
system
(
"%staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabaseNow.json -y "
%
binPath
)
tdSql
.
execute
(
"use nsdb2"
)
tdSql
.
query
(
"show stables"
)
tdSql
.
checkData
(
0
,
4
,
100
)
tdSql
.
query
(
"select count (tbname) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from tb0_0"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
query
(
"select count(*) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
10000
)
# check c8 is an nano timestamp
tdSql
.
query
(
"describe stb0"
)
tdSql
.
checkDataType
(
9
,
1
,
"TIMESTAMP"
)
# insert by csv files and timetamp is long int , strings in ts and cols
os
.
system
(
"%staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabasecsv.json -y "
%
binPath
)
tdSql
.
execute
(
"use nsdbcsv"
)
tdSql
.
query
(
"show stables"
)
tdSql
.
checkData
(
0
,
4
,
100
)
tdSql
.
query
(
"select count(*) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
10000
)
tdSql
.
query
(
"describe stb0"
)
tdSql
.
checkDataType
(
3
,
1
,
"TIMESTAMP"
)
tdSql
.
query
(
"select count(*) from stb0 where ts >
\"
2021-07-01 00:00:00.490000000
\"
"
)
tdSql
.
checkData
(
0
,
0
,
5000
)
tdSql
.
query
(
"select count(*) from stb0 where ts < 1626918583000000000"
)
tdSql
.
checkData
(
0
,
0
,
10000
)
os
.
system
(
"rm -rf ./insert_res.txt"
)
os
.
system
(
"rm -rf tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNano*.py.sql"
)
# taosdemo test insert with command and parameter , detals show taosdemo --help
os
.
system
(
"%staosdemo -u root -P taosdata -p 6030 -a 1 -m pre -n 10 -T 20 -t 60 -o res.txt -y "
%
binPath
)
tdSql
.
query
(
"select count(*) from test.meters"
)
tdSql
.
checkData
(
0
,
0
,
600
)
# check taosdemo -s
sqls_ls
=
[
'drop database if exists nsdbsql;'
,
'create database nsdbsql precision "ns" keep 3600 days 6 update 1;'
,
'use nsdbsql;'
,
'CREATE STABLE meters (ts timestamp, current float, voltage int, phase float) TAGS (location binary(64), groupdId int);'
,
'CREATE TABLE d1001 USING meters TAGS ("Beijing.Chaoyang", 2);'
,
'INSERT INTO d1001 USING METERS TAGS ("Beijng.Chaoyang", 2) VALUES (now, 10.2, 219, 0.32);'
,
'INSERT INTO d1001 USING METERS TAGS ("Beijng.Chaoyang", 2) VALUES (now, 85, 32, 0.76);'
]
with
open
(
"./taosdemoTestNanoCreateDB.sql"
,
mode
=
"a"
)
as
sql_files
:
for
sql
in
sqls_ls
:
sql_files
.
write
(
sql
+
"
\n
"
)
sql_files
.
close
()
sleep
(
10
)
os
.
system
(
"%staosdemo -s taosdemoTestNanoCreateDB.sql -y "
%
binPath
)
tdSql
.
query
(
"select count(*) from nsdbsql.meters"
)
tdSql
.
checkData
(
0
,
0
,
2
)
os
.
system
(
"rm -rf ./res.txt"
)
os
.
system
(
"rm -rf ./*.py.sql"
)
os
.
system
(
"rm -rf ./taosdemoTestNanoCreateDB.sql"
)
def
stop
(
self
):
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdCases
.
addWindows
(
__file__
,
TDTestCase
())
tdCases
.
addLinux
(
__file__
,
TDTestCase
())
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoQuery.json
0 → 100644
浏览文件 @
85e184c5
{
"filetype"
:
"query"
,
"cfgdir"
:
"/etc/taos"
,
"host"
:
"127.0.0.1"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
"confirm_parameter_prompt"
:
"no"
,
"databases"
:
"nsdb"
,
"query_times"
:
10
,
"query_mode"
:
"taosc"
,
"specified_table_query"
:
{
"query_interval"
:
1
,
"concurrent"
:
2
,
"sqls"
:
[
{
"sql"
:
"select count(*) from stb0 where ts>
\"
2021-07-01 00:01:00.000000000
\"
;"
,
"result"
:
"./query_res0.txt"
},
{
"sql"
:
"select count(*) from stb0 where ts>
\"
2021-07-01 00:01:00.000000000
\"
and ts <=
\"
2021-07-01 00:01:10.000000000
\"
;"
,
"result"
:
"./query_res1.txt"
},
{
"sql"
:
"select count(*) from stb0 where ts>now-20d ;"
,
"result"
:
"./query_res2.txt"
},
{
"sql"
:
"select max(c10) from stb0;"
,
"result"
:
"./query_res3.txt"
},
{
"sql"
:
"select min(c1) from stb0;"
,
"result"
:
"./query_res4.txt"
},
{
"sql"
:
"select avg(c1) from stb0;"
,
"result"
:
"./query_res5.txt"
},
{
"sql"
:
"select count(*) from stb0 group by tbname;"
,
"result"
:
"./query_res6.txt"
}
]
},
"super_table_query"
:
{
"stblname"
:
"stb0"
,
"query_interval"
:
0
,
"threads"
:
4
,
"sqls"
:
[
{
"sql"
:
"select count(*) from xxxx where ts>
\"
2021-07-01 00:01:00.000000000
\"
;"
,
"result"
:
"./query_res_tb0.txt"
},
{
"sql"
:
"select count(*) from xxxx where ts>
\"
2021-07-01 00:01:00.000000000
\"
and ts <=
\"
2021-07-01 00:01:10.000000000
\"
;"
,
"result"
:
"./query_res_tb1.txt"
},
{
"sql"
:
"select first(*) from xxxx ;"
,
"result"
:
"./query_res_tb2.txt"
},
{
"sql"
:
"select last(*) from xxxx;"
,
"result"
:
"./query_res_tb3.txt"
},
{
"sql"
:
"select last_row(*) from xxxx ;"
,
"result"
:
"./query_res_tb4.txt"
},
{
"sql"
:
"select max(c10) from xxxx ;"
,
"result"
:
"./query_res_tb5.txt"
},
{
"sql"
:
"select min(c1) from xxxx ;"
,
"result"
:
"./query_res_tb6.txt"
},
{
"sql"
:
"select avg(c10) from xxxx ;"
,
"result"
:
"./query_res_tb7.txt"
}
]
}
}
\ No newline at end of file
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoQuery.py
0 → 100644
浏览文件 @
85e184c5
###################################################################
# Copyright (c) 2016 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# -*- coding: utf-8 -*-
import
sys
import
os
from
util.log
import
*
from
util.cases
import
*
from
util.sql
import
*
from
util.dnodes
import
*
class
TDTestCase
:
def
init
(
self
,
conn
,
logSql
):
tdLog
.
debug
(
"start to execute %s"
%
__file__
)
tdSql
.
init
(
conn
.
cursor
(),
logSql
)
def
getBuildPath
(
self
):
selfPath
=
os
.
path
.
dirname
(
os
.
path
.
realpath
(
__file__
))
if
(
"community"
in
selfPath
):
projPath
=
selfPath
[:
selfPath
.
find
(
"community"
)]
else
:
projPath
=
selfPath
[:
selfPath
.
find
(
"tests"
)]
for
root
,
dirs
,
files
in
os
.
walk
(
projPath
):
if
(
"taosd"
in
files
):
rootRealPath
=
os
.
path
.
dirname
(
os
.
path
.
realpath
(
root
))
if
(
"packaging"
not
in
rootRealPath
):
buildPath
=
root
[:
len
(
root
)
-
len
(
"/build/bin"
)]
break
return
buildPath
def
run
(
self
):
buildPath
=
self
.
getBuildPath
()
if
(
buildPath
==
""
):
tdLog
.
exit
(
"taosd not found!"
)
else
:
tdLog
.
info
(
"taosd found in %s"
%
buildPath
)
binPath
=
buildPath
+
"/build/bin/"
# query: query test for nanoSecond with where and max min groupby order
os
.
system
(
"%staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabase.json -y "
%
binPath
)
tdSql
.
execute
(
"use nsdb"
)
# use where to filter
tdSql
.
query
(
"select count(*) from stb0 where ts>
\"
2021-07-01 00:00:00.590000000
\"
"
)
tdSql
.
checkData
(
0
,
0
,
4000
)
tdSql
.
query
(
"select count(*) from stb0 where ts>
\"
2021-07-01 00:00:00.000000000
\"
and ts <=
\"
2021-07-01 00:00:00.590000000
\"
"
)
tdSql
.
checkData
(
0
,
0
,
5900
)
tdSql
.
query
(
"select count(*) from tb0_0 where ts>
\"
2021-07-01 00:00:00.590000000
\"
;"
)
tdSql
.
checkData
(
0
,
0
,
40
)
tdSql
.
query
(
"select count(*) from tb0_0 where ts>
\"
2021-07-01 00:00:00.000000000
\"
and ts <=
\"
2021-07-01 00:00:00.590000000
\"
"
)
tdSql
.
checkData
(
0
,
0
,
59
)
# select max min avg from special col
tdSql
.
query
(
"select max(c10) from stb0;"
)
print
(
"select max(c10) from stb0 : "
,
tdSql
.
getData
(
0
,
0
))
tdSql
.
query
(
"select max(c10) from tb0_0;"
)
print
(
"select max(c10) from tb0_0 : "
,
tdSql
.
getData
(
0
,
0
))
tdSql
.
query
(
"select min(c1) from stb0;"
)
print
(
"select min(c1) from stb0 : "
,
tdSql
.
getData
(
0
,
0
))
tdSql
.
query
(
"select min(c1) from tb0_0;"
)
print
(
"select min(c1) from tb0_0 : "
,
tdSql
.
getData
(
0
,
0
))
tdSql
.
query
(
"select avg(c1) from stb0;"
)
print
(
"select avg(c1) from stb0 : "
,
tdSql
.
getData
(
0
,
0
))
tdSql
.
query
(
"select avg(c1) from tb0_0;"
)
print
(
"select avg(c1) from tb0_0 : "
,
tdSql
.
getData
(
0
,
0
))
tdSql
.
query
(
"select count(*) from stb0 group by tbname;"
)
tdSql
.
checkData
(
0
,
0
,
100
)
tdSql
.
checkData
(
10
,
0
,
100
)
# query : query above sqls by taosdemo and continuously
os
.
system
(
"%staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoQuery.json -y "
%
binPath
)
os
.
system
(
"%staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabasecsv.json -y "
%
binPath
)
tdSql
.
execute
(
"use nsdbcsv"
)
tdSql
.
query
(
"show stables"
)
tdSql
.
checkData
(
0
,
4
,
100
)
tdSql
.
query
(
"select count(*) from stb0"
)
tdSql
.
checkData
(
0
,
0
,
10000
)
tdSql
.
query
(
"describe stb0"
)
tdSql
.
checkDataType
(
3
,
1
,
"TIMESTAMP"
)
tdSql
.
query
(
"select count(*) from stb0 where ts >
\"
2021-07-01 00:00:00.490000000
\"
"
)
tdSql
.
checkData
(
0
,
0
,
5000
)
tdSql
.
query
(
"select count(*) from stb0 where ts <now -1d-1h-3s"
)
tdSql
.
checkData
(
0
,
0
,
10000
)
tdSql
.
query
(
"select count(*) from stb0 where ts < 1626918583000000000"
)
tdSql
.
checkData
(
0
,
0
,
10000
)
tdSql
.
execute
(
'select count(*) from stb0 where c2 > 162687012800000000'
)
tdSql
.
execute
(
'select count(*) from stb0 where c2 < 162687012800000000'
)
tdSql
.
execute
(
'select count(*) from stb0 where c2 = 162687012800000000'
)
tdSql
.
execute
(
'select count(*) from stb0 where c2 != 162687012800000000'
)
tdSql
.
execute
(
'select count(*) from stb0 where c2 <> 162687012800000000'
)
tdSql
.
execute
(
'select count(*) from stb0 where c2 > "2021-07-21 20:22:08.248246976"'
)
tdSql
.
execute
(
'select count(*) from stb0 where c2 < "2021-07-21 20:22:08.248246976"'
)
tdSql
.
execute
(
'select count(*) from stb0 where c2 = "2021-07-21 20:22:08.248246976"'
)
tdSql
.
execute
(
'select count(*) from stb0 where c2 != "2021-07-21 20:22:08.248246976"'
)
tdSql
.
execute
(
'select count(*) from stb0 where c2 <> "2021-07-21 20:22:08.248246976"'
)
tdSql
.
execute
(
'select count(*) from stb0 where ts between "2021-07-01 00:00:00.000000000" and "2021-07-01 00:00:00.990000000"'
)
tdSql
.
execute
(
'select count(*) from stb0 where ts between 1625068800000000000 and 1625068801000000000'
)
tdSql
.
query
(
'select avg(c0) from stb0 interval(5000000000b)'
)
tdSql
.
checkRows
(
1
)
tdSql
.
query
(
'select avg(c0) from stb0 interval(100000000b)'
)
tdSql
.
checkRows
(
10
)
tdSql
.
error
(
'select avg(c0) from stb0 interval(1b)'
)
tdSql
.
error
(
'select avg(c0) from stb0 interval(999b)'
)
tdSql
.
query
(
'select avg(c0) from stb0 interval(1000b)'
)
tdSql
.
checkRows
(
100
)
tdSql
.
query
(
'select avg(c0) from stb0 interval(1u)'
)
tdSql
.
checkRows
(
100
)
tdSql
.
query
(
'select avg(c0) from stb0 interval(100000000b) sliding (100000000b)'
)
tdSql
.
checkRows
(
10
)
# query : query above sqls by taosdemo and continuously
os
.
system
(
"%staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoQuerycsv.json -y "
%
binPath
)
os
.
system
(
"rm -rf ./query_res*.txt*"
)
os
.
system
(
"rm -rf tools/taosdemoAllTest/NanoTestCase/*.py.sql"
)
def
stop
(
self
):
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdCases
.
addWindows
(
__file__
,
TDTestCase
())
tdCases
.
addLinux
(
__file__
,
TDTestCase
())
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoQuerycsv.json
0 → 100644
浏览文件 @
85e184c5
{
"filetype"
:
"query"
,
"cfgdir"
:
"/etc/taos"
,
"host"
:
"127.0.0.1"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
"confirm_parameter_prompt"
:
"no"
,
"databases"
:
"nsdbcsv"
,
"query_times"
:
10
,
"query_mode"
:
"taosc"
,
"specified_table_query"
:
{
"query_interval"
:
1
,
"concurrent"
:
2
,
"sqls"
:
[
{
"sql"
:
"select count(*) from stb0 where ts>
\"
2021-07-01 00:00:00.490000000
\"
;"
,
"result"
:
"./query_res0.txt"
},
{
"sql"
:
"select count(*) from stb0 where ts < now -22d-1h-3s ;"
,
"result"
:
"./query_res1.txt"
},
{
"sql"
:
"select count(*) from stb0 where ts < 1626918583000000000 ;"
,
"result"
:
"./query_res2.txt"
},
{
"sql"
:
"select count(*) from stb0 where c2 <> 162687012800000000;"
,
"result"
:
"./query_res3.txt"
},
{
"sql"
:
"select count(*) from stb0 where c2 !=
\"
2021-07-21 20:22:08.248246976
\"
;"
,
"result"
:
"./query_res4.txt"
},
{
"sql"
:
"select count(*) from stb0 where ts between
\"
2021-07-01 00:00:00.000000000
\"
and
\"
2021-07-01 00:00:00.990000000
\"
;"
,
"result"
:
"./query_res5.txt"
},
{
"sql"
:
"select count(*) from stb0 group by tbname;"
,
"result"
:
"./query_res6.txt"
},
{
"sql"
:
"select count(*) from stb0 where ts between 1625068800000000000 and 1625068801000000000;"
,
"result"
:
"./query_res7.txt"
},
{
"sql"
:
"select avg(c0) from stb0 interval(5000000000b);"
,
"result"
:
"./query_res8.txt"
},
{
"sql"
:
"select avg(c0) from stb0 interval(100000000b) sliding (100000000b);"
,
"result"
:
"./query_res9.txt"
}
]
},
"super_table_query"
:
{
"stblname"
:
"stb0"
,
"query_interval"
:
0
,
"threads"
:
4
,
"sqls"
:
[
{
"sql"
:
"select count(*) from xxxx where ts >
\"
2021-07-01 00:00:00.490000000
\"
;"
,
"result"
:
"./query_res_tb0.txt"
},
{
"sql"
:
"select count(*) from xxxx where ts between
\"
2021-07-01 00:00:00.000000000
\"
and
\"
2021-07-01 00:00:00.990000000
\"
;"
,
"result"
:
"./query_res_tb1.txt"
},
{
"sql"
:
"select first(*) from xxxx ;"
,
"result"
:
"./query_res_tb2.txt"
},
{
"sql"
:
"select last(*) from xxxx;"
,
"result"
:
"./query_res_tb3.txt"
},
{
"sql"
:
"select last_row(*) from xxxx ;"
,
"result"
:
"./query_res_tb4.txt"
},
{
"sql"
:
"select max(c0) from xxxx ;"
,
"result"
:
"./query_res_tb5.txt"
},
{
"sql"
:
"select min(c0) from xxxx ;"
,
"result"
:
"./query_res_tb6.txt"
},
{
"sql"
:
"select avg(c0) from xxxx ;"
,
"result"
:
"./query_res_tb7.txt"
},
{
"sql"
:
"select avg(c0) from xxxx interval(100000000b) sliding (100000000b) ;"
,
"result"
:
"./query_res_tb8.txt"
}
]
}
}
\ No newline at end of file
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoSubscribe.json
0 → 100644
浏览文件 @
85e184c5
{
"filetype"
:
"subscribe"
,
"cfgdir"
:
"/etc/taos"
,
"host"
:
"127.0.0.1"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
"databases"
:
"subnsdb"
,
"confirm_parameter_prompt"
:
"no"
,
"specified_table_query"
:
{
"concurrent"
:
2
,
"mode"
:
"sync"
,
"interval"
:
10000
,
"restart"
:
"yes"
,
"keepProgress"
:
"yes"
,
"sqls"
:
[
{
"sql"
:
"select * from stb0 where ts>=
\"
2021-07-01 00:00:00.000000000
\"
;"
,
"result"
:
"./subscribe_res0.txt"
},
{
"sql"
:
"select * from stb0 where ts < now -2d-1h-3s ;"
,
"result"
:
"./subscribe_res1.txt"
},
{
"sql"
:
"select * from stb0 where ts < 1626918583000000000 ;"
,
"result"
:
"./subscribe_res2.txt"
}]
}
}
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanosubscribe.py
0 → 100644
浏览文件 @
85e184c5
###################################################################
# Copyright (c) 2016 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# -*- coding: utf-8 -*-
import
sys
import
os
from
util.log
import
*
from
util.cases
import
*
from
util.sql
import
*
from
util.dnodes
import
*
import
time
from
datetime
import
datetime
import
subprocess
class
TDTestCase
:
def
init
(
self
,
conn
,
logSql
):
tdLog
.
debug
(
"start to execute %s"
%
__file__
)
tdSql
.
init
(
conn
.
cursor
(),
logSql
)
def
getBuildPath
(
self
):
selfPath
=
os
.
path
.
dirname
(
os
.
path
.
realpath
(
__file__
))
if
(
"community"
in
selfPath
):
projPath
=
selfPath
[:
selfPath
.
find
(
"community"
)]
else
:
projPath
=
selfPath
[:
selfPath
.
find
(
"tests"
)]
for
root
,
dirs
,
files
in
os
.
walk
(
projPath
):
if
(
"taosd"
in
files
):
rootRealPath
=
os
.
path
.
dirname
(
os
.
path
.
realpath
(
root
))
if
(
"packaging"
not
in
rootRealPath
):
buildPath
=
root
[:
len
(
root
)
-
len
(
"/build/bin"
)]
break
return
buildPath
# get the number of subscriptions
def
subTimes
(
self
,
filename
):
self
.
filename
=
filename
command
=
'cat %s |wc -l'
%
filename
times
=
int
(
subprocess
.
getstatusoutput
(
command
)[
1
])
return
times
# assert results
def
assertCheck
(
self
,
filename
,
subResult
,
expectResult
):
self
.
filename
=
filename
self
.
subResult
=
subResult
self
.
expectResult
=
expectResult
args0
=
(
filename
,
subResult
,
expectResult
)
assert
subResult
==
expectResult
,
"Queryfile:%s ,result is %s != expect: %s"
%
args0
def
run
(
self
):
buildPath
=
self
.
getBuildPath
()
if
(
buildPath
==
""
):
tdLog
.
exit
(
"taosd not found!"
)
else
:
tdLog
.
info
(
"taosd found in %s"
%
buildPath
)
binPath
=
buildPath
+
"/build/bin/"
# clear env
os
.
system
(
"ps -ef |grep 'taosdemoAllTest/taosdemoTestSupportNanoSubscribe.json' |grep -v 'grep' |awk '{print $2}'|xargs kill -9"
)
os
.
system
(
"rm -rf ./subscribe_res*"
)
os
.
system
(
"rm -rf ./all_subscribe_res*"
)
# insert data
os
.
system
(
"%staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabaseInsertForSub.json"
%
binPath
)
os
.
system
(
"nohup %staosdemo -f tools/taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoSubscribe.json &"
%
binPath
)
query_pid
=
int
(
subprocess
.
getstatusoutput
(
'ps aux|grep "taosdemoAllTest/NanoTestCase/taosdemoTestSupportNanoSubscribe.json" |grep -v "grep"|awk
\'
{print $2}
\'
'
)[
1
])
# merge result files
sleep
(
5
)
os
.
system
(
"cat subscribe_res0.txt* > all_subscribe_res0.txt"
)
os
.
system
(
"cat subscribe_res1.txt* > all_subscribe_res1.txt"
)
os
.
system
(
"cat subscribe_res2.txt* > all_subscribe_res2.txt"
)
# correct subscribeTimes testcase
subTimes0
=
self
.
subTimes
(
"all_subscribe_res0.txt"
)
self
.
assertCheck
(
"all_subscribe_res0.txt"
,
subTimes0
,
200
)
subTimes1
=
self
.
subTimes
(
"all_subscribe_res1.txt"
)
self
.
assertCheck
(
"all_subscribe_res1.txt"
,
subTimes1
,
200
)
subTimes2
=
self
.
subTimes
(
"all_subscribe_res2.txt"
)
self
.
assertCheck
(
"all_subscribe_res2.txt"
,
subTimes2
,
200
)
# insert extral data
tdSql
.
execute
(
"use subnsdb"
)
tdSql
.
execute
(
"insert into tb0_0 values(now,100.1000,'subtest1',now-1s)"
)
sleep
(
15
)
os
.
system
(
"cat subscribe_res0.txt* > all_subscribe_res0.txt"
)
subTimes0
=
self
.
subTimes
(
"all_subscribe_res0.txt"
)
print
(
"pass"
)
self
.
assertCheck
(
"all_subscribe_res0.txt"
,
subTimes0
,
202
)
# correct data testcase
os
.
system
(
"kill -9 %d"
%
query_pid
)
sleep
(
3
)
os
.
system
(
"rm -rf ./subscribe_res*"
)
os
.
system
(
"rm -rf ./all_subscribe*"
)
os
.
system
(
"rm -rf ./*.py.sql"
)
def
stop
(
self
):
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdCases
.
addWindows
(
__file__
,
TDTestCase
())
tdCases
.
addLinux
(
__file__
,
TDTestCase
())
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdumpTestNanoSupport.py
0 → 100644
浏览文件 @
85e184c5
###################################################################
# Copyright (c) 2016 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# -*- coding: utf-8 -*-
import
sys
import
os
from
util.log
import
*
from
util.cases
import
*
from
util.sql
import
*
from
util.dnodes
import
*
class
TDTestCase
:
def
init
(
self
,
conn
,
logSql
):
tdLog
.
debug
(
"start to execute %s"
%
__file__
)
tdSql
.
init
(
conn
.
cursor
(),
logSql
)
self
.
ts
=
1625068800000000000
# this is timestamp "2021-07-01 00:00:00"
self
.
numberOfTables
=
10
self
.
numberOfRecords
=
100
def
checkCommunity
(
self
):
selfPath
=
os
.
path
.
dirname
(
os
.
path
.
realpath
(
__file__
))
if
(
"community"
in
selfPath
):
return
False
else
:
return
True
def
getBuildPath
(
self
):
selfPath
=
os
.
path
.
dirname
(
os
.
path
.
realpath
(
__file__
))
if
(
"community"
in
selfPath
):
projPath
=
selfPath
[:
selfPath
.
find
(
"community"
)]
else
:
projPath
=
selfPath
[:
selfPath
.
find
(
"tests"
)]
for
root
,
dirs
,
files
in
os
.
walk
(
projPath
):
if
(
"taosdump"
in
files
):
rootRealPath
=
os
.
path
.
dirname
(
os
.
path
.
realpath
(
root
))
if
(
"packaging"
not
in
rootRealPath
):
buildPath
=
root
[:
len
(
root
)
-
len
(
"/build/bin"
)]
break
return
buildPath
def
createdb
(
self
,
precision
=
"ns"
):
tb_nums
=
self
.
numberOfTables
per_tb_rows
=
self
.
numberOfRecords
def
build_db
(
precision
,
start_time
):
tdSql
.
execute
(
"drop database if exists timedb1"
)
tdSql
.
execute
(
"create database timedb1 days 10 keep 365 blocks 8 precision "
+
"
\"
"
+
precision
+
"
\"
"
)
tdSql
.
execute
(
"use timedb1"
)
tdSql
.
execute
(
"create stable st(ts timestamp, c1 int, c2 nchar(10),c3 timestamp) tags(t1 int, t2 binary(10))"
)
for
tb
in
range
(
tb_nums
):
tbname
=
"t"
+
str
(
tb
)
tdSql
.
execute
(
"create table "
+
tbname
+
" using st tags(1, 'beijing')"
)
sql
=
"insert into "
+
tbname
+
" values"
currts
=
start_time
if
precision
==
"ns"
:
ts_seed
=
1000000000
elif
precision
==
"us"
:
ts_seed
=
1000000
else
:
ts_seed
=
1000
for
i
in
range
(
per_tb_rows
):
sql
+=
"(%d, %d, 'nchar%d',%d)"
%
(
currts
+
i
*
ts_seed
,
i
%
100
,
i
%
100
,
currts
+
i
*
100
)
# currts +1000ms (1000000000ns)
tdSql
.
execute
(
sql
)
if
precision
==
"ns"
:
start_time
=
1625068800000000000
build_db
(
precision
,
start_time
)
elif
precision
==
"us"
:
start_time
=
1625068800000000
build_db
(
precision
,
start_time
)
elif
precision
==
"ms"
:
start_time
=
1625068800000
build_db
(
precision
,
start_time
)
else
:
print
(
"other time precision not valid , please check! "
)
def
run
(
self
):
# clear envs
os
.
system
(
"rm -rf ./taosdumptest/"
)
tdSql
.
execute
(
"drop database if exists dumptmp1"
)
tdSql
.
execute
(
"drop database if exists dumptmp2"
)
tdSql
.
execute
(
"drop database if exists dumptmp3"
)
if
not
os
.
path
.
exists
(
"./taosdumptest/tmp1"
):
os
.
makedirs
(
"./taosdumptest/dumptmp1"
)
else
:
print
(
"path exist!"
)
if
not
os
.
path
.
exists
(
"./taosdumptest/dumptmp2"
):
os
.
makedirs
(
"./taosdumptest/dumptmp2"
)
if
not
os
.
path
.
exists
(
"./taosdumptest/dumptmp3"
):
os
.
makedirs
(
"./taosdumptest/dumptmp3"
)
buildPath
=
self
.
getBuildPath
()
if
(
buildPath
==
""
):
tdLog
.
exit
(
"taosdump not found!"
)
else
:
tdLog
.
info
(
"taosdump found in %s"
%
buildPath
)
binPath
=
buildPath
+
"/build/bin/"
# create nano second database
self
.
createdb
(
precision
=
"ns"
)
# dump all data
os
.
system
(
"%staosdump --databases timedb1 -o ./taosdumptest/dumptmp1"
%
binPath
)
# dump part data with -S -E
os
.
system
(
'%staosdump --databases timedb1 -S 1625068810000000000 -E 1625068860000000000 -C ns -o ./taosdumptest/dumptmp2 '
%
binPath
)
os
.
system
(
'%staosdump --databases timedb1 -S 1625068810000000000 -o ./taosdumptest/dumptmp3 '
%
binPath
)
# replace strings to dump in databases
os
.
system
(
"sed -i
\"
s/timedb1/dumptmp1/g
\"
`grep timedb1 -rl ./taosdumptest/dumptmp1`"
)
os
.
system
(
"sed -i
\"
s/timedb1/dumptmp2/g
\"
`grep timedb1 -rl ./taosdumptest/dumptmp2`"
)
os
.
system
(
"sed -i
\"
s/timedb1/dumptmp3/g
\"
`grep timedb1 -rl ./taosdumptest/dumptmp3`"
)
os
.
system
(
"%staosdump -i ./taosdumptest/dumptmp1"
%
binPath
)
os
.
system
(
"%staosdump -i ./taosdumptest/dumptmp2"
%
binPath
)
os
.
system
(
"%staosdump -i ./taosdumptest/dumptmp3"
%
binPath
)
# dump data and check for taosdump
tdSql
.
query
(
"select count(*) from dumptmp1.st"
)
tdSql
.
checkData
(
0
,
0
,
1000
)
tdSql
.
query
(
"select count(*) from dumptmp2.st"
)
tdSql
.
checkData
(
0
,
0
,
510
)
tdSql
.
query
(
"select count(*) from dumptmp3.st"
)
tdSql
.
checkData
(
0
,
0
,
900
)
# check data
origin_res
=
tdSql
.
getResult
(
"select * from timedb1.st"
)
dump_res
=
tdSql
.
getResult
(
"select * from dumptmp1.st"
)
if
origin_res
==
dump_res
:
tdLog
.
info
(
"test nano second : dump check data pass for all data!"
)
else
:
tdLog
.
info
(
"test nano second : dump check data failed for all data!"
)
origin_res
=
tdSql
.
getResult
(
"select * from timedb1.st where ts >=1625068810000000000 and ts <= 1625068860000000000"
)
dump_res
=
tdSql
.
getResult
(
"select * from dumptmp2.st"
)
if
origin_res
==
dump_res
:
tdLog
.
info
(
" test nano second : dump check data pass for data! "
)
else
:
tdLog
.
info
(
" test nano second : dump check data failed for data !"
)
origin_res
=
tdSql
.
getResult
(
"select * from timedb1.st where ts >=1625068810000000000 "
)
dump_res
=
tdSql
.
getResult
(
"select * from dumptmp3.st"
)
if
origin_res
==
dump_res
:
tdLog
.
info
(
" test nano second : dump check data pass for data! "
)
else
:
tdLog
.
info
(
" test nano second : dump check data failed for data !"
)
# us second support test case
os
.
system
(
"rm -rf ./taosdumptest/"
)
tdSql
.
execute
(
"drop database if exists dumptmp1"
)
tdSql
.
execute
(
"drop database if exists dumptmp2"
)
tdSql
.
execute
(
"drop database if exists dumptmp3"
)
if
not
os
.
path
.
exists
(
"./taosdumptest/tmp1"
):
os
.
makedirs
(
"./taosdumptest/dumptmp1"
)
else
:
print
(
"path exits!"
)
if
not
os
.
path
.
exists
(
"./taosdumptest/dumptmp2"
):
os
.
makedirs
(
"./taosdumptest/dumptmp2"
)
if
not
os
.
path
.
exists
(
"./taosdumptest/dumptmp3"
):
os
.
makedirs
(
"./taosdumptest/dumptmp3"
)
buildPath
=
self
.
getBuildPath
()
if
(
buildPath
==
""
):
tdLog
.
exit
(
"taosdump not found!"
)
else
:
tdLog
.
info
(
"taosdump found in %s"
%
buildPath
)
binPath
=
buildPath
+
"/build/bin/"
self
.
createdb
(
precision
=
"us"
)
os
.
system
(
"%staosdump --databases timedb1 -o ./taosdumptest/dumptmp1"
%
binPath
)
os
.
system
(
'%staosdump --databases timedb1 -S 1625068810000000 -E 1625068860000000 -C us -o ./taosdumptest/dumptmp2 '
%
binPath
)
os
.
system
(
'%staosdump --databases timedb1 -S 1625068810000000 -o ./taosdumptest/dumptmp3 '
%
binPath
)
os
.
system
(
"sed -i
\"
s/timedb1/dumptmp1/g
\"
`grep timedb1 -rl ./taosdumptest/dumptmp1`"
)
os
.
system
(
"sed -i
\"
s/timedb1/dumptmp2/g
\"
`grep timedb1 -rl ./taosdumptest/dumptmp2`"
)
os
.
system
(
"sed -i
\"
s/timedb1/dumptmp3/g
\"
`grep timedb1 -rl ./taosdumptest/dumptmp3`"
)
os
.
system
(
"%staosdump -i ./taosdumptest/dumptmp1"
%
binPath
)
os
.
system
(
"%staosdump -i ./taosdumptest/dumptmp2"
%
binPath
)
os
.
system
(
"%staosdump -i ./taosdumptest/dumptmp3"
%
binPath
)
tdSql
.
query
(
"select count(*) from dumptmp1.st"
)
tdSql
.
checkData
(
0
,
0
,
1000
)
tdSql
.
query
(
"select count(*) from dumptmp2.st"
)
tdSql
.
checkData
(
0
,
0
,
510
)
tdSql
.
query
(
"select count(*) from dumptmp3.st"
)
tdSql
.
checkData
(
0
,
0
,
900
)
origin_res
=
tdSql
.
getResult
(
"select * from timedb1.st"
)
dump_res
=
tdSql
.
getResult
(
"select * from dumptmp1.st"
)
if
origin_res
==
dump_res
:
tdLog
.
info
(
"test us second : dump check data pass for all data!"
)
else
:
tdLog
.
info
(
"test us second : dump check data failed for all data!"
)
origin_res
=
tdSql
.
getResult
(
"select * from timedb1.st where ts >=1625068810000000 and ts <= 1625068860000000"
)
dump_res
=
tdSql
.
getResult
(
"select * from dumptmp2.st"
)
if
origin_res
==
dump_res
:
tdLog
.
info
(
" test us second : dump check data pass for data! "
)
else
:
tdLog
.
info
(
" test us second : dump check data failed for data!"
)
origin_res
=
tdSql
.
getResult
(
"select * from timedb1.st where ts >=1625068810000000 "
)
dump_res
=
tdSql
.
getResult
(
"select * from dumptmp3.st"
)
if
origin_res
==
dump_res
:
tdLog
.
info
(
" test us second : dump check data pass for data! "
)
else
:
tdLog
.
info
(
" test us second : dump check data failed for data! "
)
# ms second support test case
os
.
system
(
"rm -rf ./taosdumptest/"
)
tdSql
.
execute
(
"drop database if exists dumptmp1"
)
tdSql
.
execute
(
"drop database if exists dumptmp2"
)
tdSql
.
execute
(
"drop database if exists dumptmp3"
)
if
not
os
.
path
.
exists
(
"./taosdumptest/tmp1"
):
os
.
makedirs
(
"./taosdumptest/dumptmp1"
)
else
:
print
(
"path exits!"
)
if
not
os
.
path
.
exists
(
"./taosdumptest/dumptmp2"
):
os
.
makedirs
(
"./taosdumptest/dumptmp2"
)
if
not
os
.
path
.
exists
(
"./taosdumptest/dumptmp3"
):
os
.
makedirs
(
"./taosdumptest/dumptmp3"
)
buildPath
=
self
.
getBuildPath
()
if
(
buildPath
==
""
):
tdLog
.
exit
(
"taosdump not found!"
)
else
:
tdLog
.
info
(
"taosdump found in %s"
%
buildPath
)
binPath
=
buildPath
+
"/build/bin/"
self
.
createdb
(
precision
=
"ms"
)
os
.
system
(
"%staosdump --databases timedb1 -o ./taosdumptest/dumptmp1"
%
binPath
)
os
.
system
(
'%staosdump --databases timedb1 -S 1625068810000 -E 1625068860000 -C ms -o ./taosdumptest/dumptmp2 '
%
binPath
)
os
.
system
(
'%staosdump --databases timedb1 -S 1625068810000 -o ./taosdumptest/dumptmp3 '
%
binPath
)
os
.
system
(
"sed -i
\"
s/timedb1/dumptmp1/g
\"
`grep timedb1 -rl ./taosdumptest/dumptmp1`"
)
os
.
system
(
"sed -i
\"
s/timedb1/dumptmp2/g
\"
`grep timedb1 -rl ./taosdumptest/dumptmp2`"
)
os
.
system
(
"sed -i
\"
s/timedb1/dumptmp3/g
\"
`grep timedb1 -rl ./taosdumptest/dumptmp3`"
)
os
.
system
(
"%staosdump -i ./taosdumptest/dumptmp1"
%
binPath
)
os
.
system
(
"%staosdump -i ./taosdumptest/dumptmp2"
%
binPath
)
os
.
system
(
"%staosdump -i ./taosdumptest/dumptmp3"
%
binPath
)
tdSql
.
query
(
"select count(*) from dumptmp1.st"
)
tdSql
.
checkData
(
0
,
0
,
1000
)
tdSql
.
query
(
"select count(*) from dumptmp2.st"
)
tdSql
.
checkData
(
0
,
0
,
510
)
tdSql
.
query
(
"select count(*) from dumptmp3.st"
)
tdSql
.
checkData
(
0
,
0
,
900
)
origin_res
=
tdSql
.
getResult
(
"select * from timedb1.st"
)
dump_res
=
tdSql
.
getResult
(
"select * from dumptmp1.st"
)
if
origin_res
==
dump_res
:
tdLog
.
info
(
"test ms second : dump check data pass for all data!"
)
else
:
tdLog
.
info
(
"test ms second : dump check data failed for all data!"
)
origin_res
=
tdSql
.
getResult
(
"select * from timedb1.st where ts >=1625068810000 and ts <= 1625068860000"
)
dump_res
=
tdSql
.
getResult
(
"select * from dumptmp2.st"
)
if
origin_res
==
dump_res
:
tdLog
.
info
(
" test ms second : dump check data pass for data! "
)
else
:
tdLog
.
info
(
" test ms second : dump check data failed for data!"
)
origin_res
=
tdSql
.
getResult
(
"select * from timedb1.st where ts >=1625068810000 "
)
dump_res
=
tdSql
.
getResult
(
"select * from dumptmp3.st"
)
if
origin_res
==
dump_res
:
tdLog
.
info
(
" test ms second : dump check data pass for data! "
)
else
:
tdLog
.
info
(
" test ms second : dump check data failed for data! "
)
os
.
system
(
"rm -rf ./taosdumptest/"
)
os
.
system
(
"rm -rf ./dump_result.txt"
)
os
.
system
(
"rm -rf *.py.sql"
)
def
stop
(
self
):
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdCases
.
addWindows
(
__file__
,
TDTestCase
())
tdCases
.
addLinux
(
__file__
,
TDTestCase
())
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录