Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
2e3a1cfd
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1185
Star
22016
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
2e3a1cfd
编写于
8月 06, 2022
作者:
G
Ganlin Zhao
浏览文件
操作
浏览文件
下载
差异文件
Merge branch '3.0' into fix/TD-18115
上级
78fb4f51
d62f075a
变更
150
展开全部
隐藏空白更改
内联
并排
Showing
150 changed file
with
324 addition
and
268 deletion
+324
-268
.gitignore
.gitignore
+1
-0
cmake/taosws_CMakeLists.txt.in
cmake/taosws_CMakeLists.txt.in
+1
-1
docs/zh/07-develop/09-udf.md
docs/zh/07-develop/09-udf.md
+25
-49
docs/zh/12-taos-sql/26-udf.md
docs/zh/12-taos-sql/26-udf.md
+15
-6
docs/zh/14-reference/05-taosbenchmark.md
docs/zh/14-reference/05-taosbenchmark.md
+34
-1
docs/zh/28-releases.md
docs/zh/28-releases.md
+9
-0
include/common/tcommon.h
include/common/tcommon.h
+1
-0
include/common/tmsg.h
include/common/tmsg.h
+1
-0
source/common/src/tdatablock.c
source/common/src/tdatablock.c
+1
-2
source/common/src/tglobal.c
source/common/src/tglobal.c
+1
-1
source/dnode/mnode/impl/src/mndSma.c
source/dnode/mnode/impl/src/mndSma.c
+3
-5
source/dnode/vnode/src/vnd/vnodeSync.c
source/dnode/vnode/src/vnd/vnodeSync.c
+2
-2
source/libs/executor/src/executil.c
source/libs/executor/src/executil.c
+1
-0
source/libs/executor/src/executorimpl.c
source/libs/executor/src/executorimpl.c
+1
-1
source/libs/executor/src/timewindowoperator.c
source/libs/executor/src/timewindowoperator.c
+10
-32
source/libs/parser/src/parTranslater.c
source/libs/parser/src/parTranslater.c
+40
-18
source/libs/planner/src/planner.c
source/libs/planner/src/planner.c
+5
-2
source/libs/scheduler/src/schTask.c
source/libs/scheduler/src/schTask.c
+2
-1
source/libs/stream/src/streamData.c
source/libs/stream/src/streamData.c
+1
-0
source/libs/stream/src/streamDispatch.c
source/libs/stream/src/streamDispatch.c
+1
-0
source/libs/sync/src/syncMain.c
source/libs/sync/src/syncMain.c
+14
-11
source/libs/sync/src/syncRequestVote.c
source/libs/sync/src/syncRequestVote.c
+6
-0
source/libs/sync/test/sh/a.sh
source/libs/sync/test/sh/a.sh
+1
-1
source/libs/sync/test/sh/insert.tpl.json
source/libs/sync/test/sh/insert.tpl.json
+1
-1
tests/pytest/cluster/TD-3693/insert1Data.json
tests/pytest/cluster/TD-3693/insert1Data.json
+1
-1
tests/pytest/cluster/TD-3693/insert2Data.json
tests/pytest/cluster/TD-3693/insert2Data.json
+1
-1
tests/pytest/dockerCluster/insert.json
tests/pytest/dockerCluster/insert.json
+1
-1
tests/pytest/manualTest/TD-5114/insertDataDb3Replica2.json
tests/pytest/manualTest/TD-5114/insertDataDb3Replica2.json
+1
-1
tests/pytest/perfbenchmark/bug3433.py
tests/pytest/perfbenchmark/bug3433.py
+1
-1
tests/pytest/perfbenchmark/joinPerformance.py
tests/pytest/perfbenchmark/joinPerformance.py
+1
-1
tests/pytest/perfbenchmark/taosdemoInsert.py
tests/pytest/perfbenchmark/taosdemoInsert.py
+1
-1
tests/pytest/query/nestedQuery/insertData.json
tests/pytest/query/nestedQuery/insertData.json
+1
-1
tests/pytest/query/query1970YearsAf.py
tests/pytest/query/query1970YearsAf.py
+1
-1
tests/pytest/tools/insert-interlace.json
tests/pytest/tools/insert-interlace.json
+1
-1
tests/pytest/tools/insert-tblimit-tboffset-createdb.json
tests/pytest/tools/insert-tblimit-tboffset-createdb.json
+1
-1
tests/pytest/tools/insert-tblimit-tboffset-insertrec.json
tests/pytest/tools/insert-tblimit-tboffset-insertrec.json
+1
-1
tests/pytest/tools/insert-tblimit-tboffset.json
tests/pytest/tools/insert-tblimit-tboffset.json
+1
-1
tests/pytest/tools/insert-tblimit-tboffset0.json
tests/pytest/tools/insert-tblimit-tboffset0.json
+1
-1
tests/pytest/tools/insert-tblimit1-tboffset.json
tests/pytest/tools/insert-tblimit1-tboffset.json
+1
-1
tests/pytest/tools/insert.json
tests/pytest/tools/insert.json
+1
-1
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertMSDB.json
...ools/taosdemoAllTest/NanoTestCase/taosdemoInsertMSDB.json
+1
-1
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertNanoDB.json
...ls/taosdemoAllTest/NanoTestCase/taosdemoInsertNanoDB.json
+1
-1
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertUSDB.json
...ools/taosdemoAllTest/NanoTestCase/taosdemoInsertUSDB.json
+1
-1
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabase.json
...aosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabase.json
+1
-1
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabaseInsertForSub.json
...st/NanoTestCase/taosdemoTestNanoDatabaseInsertForSub.json
+1
-1
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabaseNow.json
...demoAllTest/NanoTestCase/taosdemoTestNanoDatabaseNow.json
+1
-1
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabasecsv.json
...demoAllTest/NanoTestCase/taosdemoTestNanoDatabasecsv.json
+1
-1
tests/pytest/tools/taosdemoAllTest/TD-3453/query-interrupt.json
...pytest/tools/taosdemoAllTest/TD-3453/query-interrupt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/TD-4985/query-limit-offset.json
...est/tools/taosdemoAllTest/TD-4985/query-limit-offset.json
+1
-1
tests/pytest/tools/taosdemoAllTest/TD-5213/insertSigcolumnsNum4096.json
...ools/taosdemoAllTest/TD-5213/insertSigcolumnsNum4096.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-1s1tnt1r.json
tests/pytest/tools/taosdemoAllTest/insert-1s1tnt1r.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-1s1tntmr.json
tests/pytest/tools/taosdemoAllTest/insert-1s1tntmr.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-disorder.json
tests/pytest/tools/taosdemoAllTest/insert-disorder.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-drop-exist-auto-N00.json
...est/tools/taosdemoAllTest/insert-drop-exist-auto-N00.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-drop-exist-auto-Y00.json
...est/tools/taosdemoAllTest/insert-drop-exist-auto-Y00.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-illegal.json
tests/pytest/tools/taosdemoAllTest/insert-illegal.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-interlace-row.json
tests/pytest/tools/taosdemoAllTest/insert-interlace-row.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-interval-speed.json
...s/pytest/tools/taosdemoAllTest/insert-interval-speed.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-newdb.json
tests/pytest/tools/taosdemoAllTest/insert-newdb.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-newtable.json
tests/pytest/tools/taosdemoAllTest/insert-newtable.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-nodbnodrop.json
tests/pytest/tools/taosdemoAllTest/insert-nodbnodrop.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-offset.json
tests/pytest/tools/taosdemoAllTest/insert-offset.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-renewdb.json
tests/pytest/tools/taosdemoAllTest/insert-renewdb.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-sample.json
tests/pytest/tools/taosdemoAllTest/insert-sample.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert-timestep.json
tests/pytest/tools/taosdemoAllTest/insert-timestep.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertBinaryLenLarge16374AllcolLar49151.json
...sdemoAllTest/insertBinaryLenLarge16374AllcolLar49151.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertChildTab0.json
tests/pytest/tools/taosdemoAllTest/insertChildTab0.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertChildTabLess0.json
tests/pytest/tools/taosdemoAllTest/insertChildTabLess0.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertColumnsAndTagNum4096.json
...est/tools/taosdemoAllTest/insertColumnsAndTagNum4096.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertColumnsAndTagNumLarge4096.json
...ools/taosdemoAllTest/insertColumnsAndTagNumLarge4096.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertColumnsNum0.json
tests/pytest/tools/taosdemoAllTest/insertColumnsNum0.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertInterlaceRowsLarge1M.json
...est/tools/taosdemoAllTest/insertInterlaceRowsLarge1M.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertMaxNumPerReq.json
tests/pytest/tools/taosdemoAllTest/insertMaxNumPerReq.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertNumOfrecordPerReq0.json
...ytest/tools/taosdemoAllTest/insertNumOfrecordPerReq0.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertNumOfrecordPerReqless0.json
...t/tools/taosdemoAllTest/insertNumOfrecordPerReqless0.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertRestful.json
tests/pytest/tools/taosdemoAllTest/insertRestful.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertSigcolumnsNum4096.json
...pytest/tools/taosdemoAllTest/insertSigcolumnsNum4096.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertTagsNumLarge128.json
...s/pytest/tools/taosdemoAllTest/insertTagsNumLarge128.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insertTimestepMulRowsLargeint16.json
...ools/taosdemoAllTest/insertTimestepMulRowsLargeint16.json
+1
-1
tests/pytest/tools/taosdemoAllTest/insert_5M_rows.json
tests/pytest/tools/taosdemoAllTest/insert_5M_rows.json
+1
-1
tests/pytest/tools/taosdemoAllTest/manual_block1_comp.json
tests/pytest/tools/taosdemoAllTest/manual_block1_comp.json
+1
-1
tests/pytest/tools/taosdemoAllTest/manual_block2.json
tests/pytest/tools/taosdemoAllTest/manual_block2.json
+1
-1
tests/pytest/tools/taosdemoAllTest/manual_change_time_1_1_A.json
...ytest/tools/taosdemoAllTest/manual_change_time_1_1_A.json
+1
-1
tests/pytest/tools/taosdemoAllTest/manual_change_time_1_1_B.json
...ytest/tools/taosdemoAllTest/manual_change_time_1_1_B.json
+1
-1
tests/pytest/tools/taosdemoAllTest/moredemo-offset-limit1.json
.../pytest/tools/taosdemoAllTest/moredemo-offset-limit1.json
+1
-1
tests/pytest/tools/taosdemoAllTest/moredemo-offset-limit5.json
.../pytest/tools/taosdemoAllTest/moredemo-offset-limit5.json
+1
-1
tests/pytest/tools/taosdemoAllTest/moredemo-offset-limit94.json
...pytest/tools/taosdemoAllTest/moredemo-offset-limit94.json
+1
-1
tests/pytest/tools/taosdemoAllTest/moredemo-offset-newdb.json
...s/pytest/tools/taosdemoAllTest/moredemo-offset-newdb.json
+1
-1
tests/pytest/tools/taosdemoAllTest/query-interrupt.json
tests/pytest/tools/taosdemoAllTest/query-interrupt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/queryInsertdata.json
tests/pytest/tools/taosdemoAllTest/queryInsertdata.json
+1
-1
tests/pytest/tools/taosdemoAllTest/queryInsertrestdata.json
tests/pytest/tools/taosdemoAllTest/queryInsertrestdata.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/1174-large-stmt.json
tests/pytest/tools/taosdemoAllTest/stmt/1174-large-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/1174-large-taosc.json
...s/pytest/tools/taosdemoAllTest/stmt/1174-large-taosc.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/1174-small-stmt-random.json
...st/tools/taosdemoAllTest/stmt/1174-small-stmt-random.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/1174-small-stmt.json
tests/pytest/tools/taosdemoAllTest/stmt/1174-small-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/1174-small-taosc.json
...s/pytest/tools/taosdemoAllTest/stmt/1174-small-taosc.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-1s1tnt1r-stmt.json
...test/tools/taosdemoAllTest/stmt/insert-1s1tnt1r-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-1s1tntmr-stmt.json
...test/tools/taosdemoAllTest/stmt/insert-1s1tntmr-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-disorder-stmt.json
...test/tools/taosdemoAllTest/stmt/insert-disorder-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-drop-exist-auto-N00-stmt.json
...taosdemoAllTest/stmt/insert-drop-exist-auto-N00-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-drop-exist-auto-Y00-stmt.json
...taosdemoAllTest/stmt/insert-drop-exist-auto-Y00-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-interlace-row-stmt.json
...tools/taosdemoAllTest/stmt/insert-interlace-row-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-interval-speed-stmt.json
...ools/taosdemoAllTest/stmt/insert-interval-speed-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-newdb-stmt.json
.../pytest/tools/taosdemoAllTest/stmt/insert-newdb-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-newtable-stmt.json
...test/tools/taosdemoAllTest/stmt/insert-newtable-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-nodbnodrop-stmt.json
...st/tools/taosdemoAllTest/stmt/insert-nodbnodrop-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-offset-stmt.json
...pytest/tools/taosdemoAllTest/stmt/insert-offset-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-renewdb-stmt.json
...ytest/tools/taosdemoAllTest/stmt/insert-renewdb-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-sample-stmt.json
...pytest/tools/taosdemoAllTest/stmt/insert-sample-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insert-timestep-stmt.json
...test/tools/taosdemoAllTest/stmt/insert-timestep-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertBinaryLenLarge16374AllcolLar49151-stmt.json
...st/stmt/insertBinaryLenLarge16374AllcolLar49151-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertChildTab0-stmt.json
...test/tools/taosdemoAllTest/stmt/insertChildTab0-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertChildTabLess0-stmt.json
.../tools/taosdemoAllTest/stmt/insertChildTabLess0-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertColumnsAndTagNum4096-stmt.json
...taosdemoAllTest/stmt/insertColumnsAndTagNum4096-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertColumnsNum0-stmt.json
...st/tools/taosdemoAllTest/stmt/insertColumnsNum0-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertInterlaceRowsLarge1M-stmt.json
...taosdemoAllTest/stmt/insertInterlaceRowsLarge1M-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertMaxNumPerReq-stmt.json
...t/tools/taosdemoAllTest/stmt/insertMaxNumPerReq-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertNumOfrecordPerReq0-stmt.json
...s/taosdemoAllTest/stmt/insertNumOfrecordPerReq0-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertNumOfrecordPerReqless0-stmt.json
...osdemoAllTest/stmt/insertNumOfrecordPerReqless0-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertSigcolumnsNum4096-stmt.json
...ls/taosdemoAllTest/stmt/insertSigcolumnsNum4096-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertTagsNumLarge128-stmt.json
...ools/taosdemoAllTest/stmt/insertTagsNumLarge128-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/insertTimestepMulRowsLargeint16-stmt.json
...emoAllTest/stmt/insertTimestepMulRowsLargeint16-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/stmt/nsertColumnsAndTagNumLarge4096-stmt.json
...demoAllTest/stmt/nsertColumnsAndTagNumLarge4096-stmt.json
+1
-1
tests/pytest/tools/taosdemoAllTest/subInsertdata.json
tests/pytest/tools/taosdemoAllTest/subInsertdata.json
+1
-1
tests/pytest/tools/taosdemoAllTest/subInsertdataMaxsql100.json
.../pytest/tools/taosdemoAllTest/subInsertdataMaxsql100.json
+1
-1
tests/pytest/tools/taosdemoAllTest/taosdemoInsertMSDB.json
tests/pytest/tools/taosdemoAllTest/taosdemoInsertMSDB.json
+1
-1
tests/pytest/tools/taosdemoAllTest/taosdemoInsertNanoDB.json
tests/pytest/tools/taosdemoAllTest/taosdemoInsertNanoDB.json
+1
-1
tests/pytest/tools/taosdemoAllTest/taosdemoInsertUSDB.json
tests/pytest/tools/taosdemoAllTest/taosdemoInsertUSDB.json
+1
-1
tests/pytest/tools/taosdemoAllTest/taosdemoTestNanoDatabase.json
...ytest/tools/taosdemoAllTest/taosdemoTestNanoDatabase.json
+1
-1
tests/pytest/tools/taosdemoAllTest/taosdemoTestNanoDatabaseInsertForSub.json
...taosdemoAllTest/taosdemoTestNanoDatabaseInsertForSub.json
+1
-1
tests/pytest/tools/taosdemoAllTest/taosdemoTestNanoDatabaseNow.json
...st/tools/taosdemoAllTest/taosdemoTestNanoDatabaseNow.json
+1
-1
tests/pytest/tools/taosdemoAllTest/taosdemoTestNanoDatabasecsv.json
...st/tools/taosdemoAllTest/taosdemoTestNanoDatabasecsv.json
+1
-1
tests/pytest/tools/taosdemoPerformance.py
tests/pytest/tools/taosdemoPerformance.py
+1
-1
tests/pytest/tsdb/insertDataDb1.json
tests/pytest/tsdb/insertDataDb1.json
+1
-1
tests/pytest/tsdb/insertDataDb1Replica2.json
tests/pytest/tsdb/insertDataDb1Replica2.json
+1
-1
tests/pytest/tsdb/insertDataDb2.json
tests/pytest/tsdb/insertDataDb2.json
+1
-1
tests/pytest/tsdb/insertDataDb2Newstab.json
tests/pytest/tsdb/insertDataDb2Newstab.json
+1
-1
tests/pytest/tsdb/insertDataDb2NewstabReplica2.json
tests/pytest/tsdb/insertDataDb2NewstabReplica2.json
+1
-1
tests/pytest/tsdb/insertDataDb2Replica2.json
tests/pytest/tsdb/insertDataDb2Replica2.json
+1
-1
tests/pytest/util/taosdemoCfg.py
tests/pytest/util/taosdemoCfg.py
+1
-1
tests/pytest/wal/insertDataDb1.json
tests/pytest/wal/insertDataDb1.json
+1
-1
tests/pytest/wal/insertDataDb1Replica2.json
tests/pytest/wal/insertDataDb1Replica2.json
+1
-1
tests/pytest/wal/insertDataDb2.json
tests/pytest/wal/insertDataDb2.json
+1
-1
tests/pytest/wal/insertDataDb2Newstab.json
tests/pytest/wal/insertDataDb2Newstab.json
+1
-1
tests/pytest/wal/insertDataDb2NewstabReplica2.json
tests/pytest/wal/insertDataDb2NewstabReplica2.json
+1
-1
tests/pytest/wal/insertDataDb2Replica2.json
tests/pytest/wal/insertDataDb2Replica2.json
+1
-1
tests/system-test/1-insert/manyVgroups.json
tests/system-test/1-insert/manyVgroups.json
+1
-1
tests/system-test/1-insert/performanceInsert.json
tests/system-test/1-insert/performanceInsert.json
+1
-1
tests/system-test/fulltest.sh
tests/system-test/fulltest.sh
+1
-1
tools/shell/src/shellEngine.c
tools/shell/src/shellEngine.c
+22
-9
未找到文件。
.gitignore
浏览文件 @
2e3a1cfd
...
...
@@ -118,3 +118,4 @@ contrib/*
!contrib/test
sql
debug*/
.env
\ No newline at end of file
cmake/taosws_CMakeLists.txt.in
浏览文件 @
2e3a1cfd
...
...
@@ -2,7 +2,7 @@
# taosws-rs
ExternalProject_Add(taosws-rs
GIT_REPOSITORY https://github.com/taosdata/taosws-rs.git
GIT_TAG
648cc62
GIT_TAG
29424d5
SOURCE_DIR "${TD_SOURCE_DIR}/tools/taosws-rs"
BINARY_DIR ""
#BUILD_IN_SOURCE TRUE
...
...
docs/zh/07-develop/09-udf.md
浏览文件 @
2e3a1cfd
...
...
@@ -124,52 +124,49 @@ gcc -g -O0 -fPIC -shared add_one.c -o add_one.so
用户可以通过 SQL 指令在系统中加载客户端所在主机上的 UDF 函数库(不能通过 RESTful 接口或 HTTP 管理界面来进行这一过程)。一旦创建成功,则当前 TDengine 集群的所有用户都可以在 SQL 指令中使用这些函数。UDF 存储在系统的 MNode 节点上,因此即使重启 TDengine 系统,已经创建的 UDF 也仍然可用。
在创建 UDF 时,需要区分标量函数和聚合函数。如果创建时声明了错误的函数类别,则可能导致通过 SQL 指令调用函数时出错。此外,
UDF 支持输入与输出类型不一致,
用户需要保证输入数据类型与 UDF 程序匹配,UDF 输出数据类型与 OUTPUTTYPE 匹配。
在创建 UDF 时,需要区分标量函数和聚合函数。如果创建时声明了错误的函数类别,则可能导致通过 SQL 指令调用函数时出错。此外,用户需要保证输入数据类型与 UDF 程序匹配,UDF 输出数据类型与 OUTPUTTYPE 匹配。
-
创建标量函数
```
sql
CREATE
FUNCTION
ids
(
X
)
AS
ids
(
Y
)
OUTPUTTYPE
typename
(
Z
)
[
BUFSIZE
B
]
;
CREATE
FUNCTION
function_name
AS
library_path
OUTPUTTYPE
output_type
;
```
-
ids(X):标量函数未来在 SQL 指令中被调用时的函数名,必须与函数实现中 udfNormalFunc 的实际名称一致;
-
ids(Y):包含 UDF 函数实现的动态链接库的库文件绝对路径(指的是库文件在当前客户端所在主机上的保存路径,通常是指向一个 .so 文件),这个路径需要用英文单引号或英文双引号括起来;
-
typename(Z):此函数计算结果的数据类型,与上文中 udfNormalFunc 的 itype 参数不同,这里不是使用数字表示法,而是直接写类型名称即可;
-
B:中间计算结果的缓冲区大小,单位是字节,最小 0,最大 512,如果不使用可以不设置。
-
function_name:标量函数未来在 SQL 中被调用时的函数名,必须与函数实现中 udf 的实际名称一致;
-
library_path:包含 UDF 函数实现的动态链接库的库文件绝对路径(指的是库文件在当前客户端所在主机上的保存路径,通常是指向一个 .so 文件),这个路径需要用英文单引号或英文双引号括起来;
-
output_type:此函数计算结果的数据类型名称;
例如,如下语句可以把
add_one
.so 创建为系统中可用的 UDF:
例如,如下语句可以把
libbitand
.so 创建为系统中可用的 UDF:
```
sql
CREATE
FUNCTION
add_one
AS
"/home/taos/udf_example/add_one
.so"
OUTPUTTYPE
INT
;
CREATE
FUNCTION
bit_and
AS
"/home/taos/udf_example/libbitand
.so"
OUTPUTTYPE
INT
;
```
-
创建聚合函数:
```
sql
CREATE
AGGREGATE
FUNCTION
ids
(
X
)
AS
ids
(
Y
)
OUTPUTTYPE
typename
(
Z
)
[
BUFSIZE
B
];
CREATE
AGGREGATE
FUNCTION
function_name
AS
library_path
OUTPUTTYPE
output_type
[
BUFSIZE
buffer_size
];
```
-
ids(X):聚合函数未来在 SQL 指令
中被调用时的函数名,必须与函数实现中 udfNormalFunc 的实际名称一致;
-
ids(Y)
:包含 UDF 函数实现的动态链接库的库文件绝对路径(指的是库文件在当前客户端所在主机上的保存路径,通常是指向一个 .so 文件),这个路径需要用英文单引号或英文双引号括起来;
-
typename(Z)
:此函数计算结果的数据类型,与上文中 udfNormalFunc 的 itype 参数不同,这里不是使用数字表示法,而是直接写类型名称即可;
-
B:中间计算结果的缓冲区大小,单位是字节,最小 0,最大 512,
如果不使用可以不设置。
-
function_name:聚合函数未来在 SQL
中被调用时的函数名,必须与函数实现中 udfNormalFunc 的实际名称一致;
-
library_path
:包含 UDF 函数实现的动态链接库的库文件绝对路径(指的是库文件在当前客户端所在主机上的保存路径,通常是指向一个 .so 文件),这个路径需要用英文单引号或英文双引号括起来;
-
output_type
:此函数计算结果的数据类型,与上文中 udfNormalFunc 的 itype 参数不同,这里不是使用数字表示法,而是直接写类型名称即可;
-
buffer_size:中间计算结果的缓冲区大小,单位是字节。
如果不使用可以不设置。
关于中间计算结果的使用,可以参考示例程序
[
demo.c
](
https://github.com/taosdata/TDengine/blob/develop/tests/script/sh/demo.c
)
例如,如下语句可以把 demo.so 创建为系统中可用的 UDF:
例如,如下语句可以把 libsqrsum.so 创建为系统中可用的 UDF:
```
sql
CREATE
AGGREGATE
FUNCTION
demo
AS
"/home/taos/udf_example/demo.so"
OUTPUTTYPE
DOUBLE
bufsize
14
;
CREATE
AGGREGATE
FUNCTION
sqr_sum
AS
"/home/taos/udf_example/libsqrsum.so"
OUTPUTTYPE
DOUBLE
bufsize
8
;
```
### 管理 UDF
-
删除指定名称的用户定义函数:
```
DROP FUNCTION
ids(X)
;
DROP FUNCTION
function_name
;
```
-
ids(X):此参数的含义与 CREATE 指令中的 ids(X)
参数一致,也即要删除的函数的名字,例如
-
function_name:此参数的含义与 CREATE 指令中的 function_name
参数一致,也即要删除的函数的名字,例如
```
sql
DROP
FUNCTION
add_one
;
DROP
FUNCTION
bit_and
;
```
-
显示系统中当前可用的所有 UDF:
```
sql
...
...
@@ -180,53 +177,32 @@ SHOW FUNCTIONS;
在 SQL 指令中,可以直接以在系统中创建 UDF 时赋予的函数名来调用用户定义函数。例如:
```
sql
SELECT
X
(
c
)
FROM
table
/
stable
;
SELECT
X
(
c
1
,
c2
)
FROM
table
/
stable
;
```
表示对名为 c 的数据列调用名为 X 的用户定义函数。SQL 指令中用户定义函数可以配合 WHERE 等查询特性来使用。
## UDF 的一些使用限制
在当前版本下,使用 UDF 存在如下这些限制:
表示对名为 c1, c2 的数据列调用名为 X 的用户定义函数。SQL 指令中用户定义函数可以配合 WHERE 等查询特性来使用。
1.
在创建和调用 UDF 时,服务端和客户端都只支持 Linux 操作系统;
2.
UDF 不能与系统内建的 SQL 函数混合使用,暂不支持在一条 SQL 语句中使用多个不同名的 UDF ;
3.
UDF 只支持以单个数据列作为输入;
4.
UDF 只要创建成功,就会被持久化存储到 MNode 节点中;
5.
无法通过 RESTful 接口来创建 UDF;
6.
UDF 在 SQL 中定义的函数名,必须与 .so 库文件实现中的接口函数名前缀保持一致,也即必须是 udfNormalFunc 的名称,而且不可与 TDengine 中已有的内建 SQL 函数重名。
## 示例代码
### 标量函数示例 [add_one](https://github.com/taosdata/TDengine/blob/develop/tests/script/sh/add_one.c)
<details>
<summary>
add_one.c
</summary>
```
c
{{
#
include
tests
/
script
/
sh
/
add_one
.
c
}}
```
</details>
### 向量函数示例 [abs_max](https://github.com/taosdata/TDengine/blob/develop/tests/script/sh/abs_max.c)
### 标量函数示例 [bit_and](https://github.com/taosdata/TDengine/blob/develop/tests/script/sh/bit_and.c)
<details>
<summary>
abs_max
.c
</summary>
<summary>
bit_and
.c
</summary>
```
c
{{
#
include
tests
/
script
/
sh
/
abs_max
.
c
}}
{{
#
include
tests
/
script
/
sh
/
bit_and
.
c
}}
```
</details>
###
使用中间计算结果示例 [demo](https://github.com/taosdata/TDengine/blob/develop/tests/script/sh/demo
.c)
###
聚合函数示例 [sqr_sum](https://github.com/taosdata/TDengine/blob/develop/tests/script/sh/sqr_sum
.c)
<details>
<summary>
demo
.c
</summary>
<summary>
sqr_sum
.c
</summary>
```
c
{{
#
include
tests
/
script
/
sh
/
demo
.
c
}}
{{
#
include
tests
/
script
/
sh
/
sqr_sum
.
c
}}
```
</details>
docs/zh/12-taos-sql/26-udf.md
浏览文件 @
2e3a1cfd
...
...
@@ -8,21 +8,30 @@ title: 用户自定义函数
## 创建函数
```
sql
CREATE
[
AGGREGATE
]
FUNCTION
func_name
AS
library_path
OUTPUTTYPE
type_name
[
BUFSIZE
valu
e
]
CREATE
[
AGGREGATE
]
FUNCTION
func_name
AS
library_path
OUTPUTTYPE
type_name
[
BUFSIZE
buffer_siz
e
]
```
语法说明:
AGGREGATE:标识此函数是标量函数还是聚集函数。
func_name:函数名,必须与函数实现中
udfNormalFunc
的实际名称一致。
func_name:函数名,必须与函数实现中
udf
的实际名称一致。
library_path:包含UDF函数实现的动态链接库的绝对路径,是在客户端侧主机上的绝对路径。
OUTPUTTYPE
:标识此函数的返回类型。
BUFSIZE:中间结果的缓冲区大小,单位是字节。不设置则默认为0。最大不可超过512字节
。
type_name
:标识此函数的返回类型。
buffer_size:中间结果的缓冲区大小,单位是字节。不设置则默认为0
。
关于如何开发自定义函数,请参考
[
UDF使用说明
](
../../develop/udf
)
。
## 删除自定义函数
```
DROP FUNCTION function_name;
```
-
function_name:此参数的含义与 CREATE 指令中的 function_name 参数一致,也即要删除的函数的名字,例如
## 显示 UDF
```
sql
DROP
FUNCTION
func_name
```
\ No newline at end of file
SHOW
FUNCTION
;
```
docs/zh/14-reference/05-taosbenchmark.md
浏览文件 @
2e3a1cfd
...
...
@@ -233,11 +233,28 @@ taosBenchmark -A INT,DOUBLE,NCHAR,BINARY\(16\)
-
**drop**
: 插入前是否删除数据库,默认为 true。
#### 流式计算相关配置参数
创建流式计算的相关参数在 json 配置文件中的
`stream`
中配置,具体参数如下。
-
**stream_name**
: 流式计算的名称,必填项。
-
**stream_stb**
: 流式计算对应的超级表名称,必填项。
-
**stream_sql**
: 流式计算的sql语句,必填项。
-
**trigger_mode**
: 流式计算的触发模式,可选项。
-
**watermark**
: 流式计算的水印,可选项。
-
**drop**
: 是否创建流式计算,可选项为 "yes" 或者 "no", 为 "no" 时不创建。
#### 超级表相关配置参数
创建超级表时的相关参数在 json 配置文件中的
`super_tables`
中配置,具体参数如下
表
。
创建超级表时的相关参数在 json 配置文件中的
`super_tables`
中配置,具体参数如下。
-
**name**
: 超级表名,必须配置,没有默认值。
-
**child_table_exists**
: 子表是否已经存在,默认值为 "no",可选值为 "yes" 或 "no"。
-
**child_table_count**
: 子表的数量,默认值为 10。
...
...
@@ -288,6 +305,22 @@ taosBenchmark -A INT,DOUBLE,NCHAR,BINARY\(16\)
-
**tags_file**
: 仅当 insert_mode 为 taosc, rest 的模式下生效。 最终的 tag 的数值与 childtable_count 有关,如果 csv 文件内的 tag 数据行小于给定的子表数量,那么会循环读取 csv 文件数据直到生成 childtable_count 指定的子表数量;否则则只会读取 childtable_count 行 tag 数据。也即最终生成的子表数量为二者取小。
#### tsma配置参数
指定tsma的配置参数在
`super_tables`
中的
`tsmas`
中,具体参数如下。
-
**name**
: 指定 tsma 的名字,必选项。
-
**function**
: 指定 tsma 的函数,必选项。
-
**interval**
: 指定 tsma 的时间间隔,必选项。
-
**sliding**
: 指定 tsma 的窗口时间位移,必选项。
-
**custom**
: 指定 tsma 的创建语句结尾追加的自定义配置,可选项。
-
**start_when_inserted**
: 指定当插入多少行时创建 tsma,可选项,默认为 0。
#### 标签列与数据列配置参数
指定超级表标签列与数据列的配置参数分别在
`super_tables`
中的
`columns`
和
`tag`
中。
...
...
docs/zh/28-releases.md
0 → 100644
浏览文件 @
2e3a1cfd
---
sidebar_label
:
发布历史
title
:
发布历史
---
import Release from "/components/Release";
<Release
versionPrefix=
"3.0"
/>
include/common/tcommon.h
浏览文件 @
2e3a1cfd
...
...
@@ -107,6 +107,7 @@ typedef struct SDataBlockInfo {
int32_t
childId
;
// used for stream, do not serialize
EStreamType
type
;
// used for stream, do not serialize
STimeWindow
calWin
;
// used for stream, do not serialize
TSKEY
watermark
;
// used for stream
}
SDataBlockInfo
;
typedef
struct
SSDataBlock
{
...
...
include/common/tmsg.h
浏览文件 @
2e3a1cfd
...
...
@@ -1369,6 +1369,7 @@ typedef struct {
int64_t
skey
;
int64_t
ekey
;
int64_t
version
;
// for stream
TSKEY
watermark
;
// for stream
char
data
[];
}
SRetrieveTableRsp
;
...
...
source/common/src/tdatablock.c
浏览文件 @
2e3a1cfd
...
...
@@ -1272,8 +1272,7 @@ int32_t assignOneDataBlock(SSDataBlock* dst, const SSDataBlock* src) {
colDataAssign
(
pDst
,
pSrc
,
src
->
info
.
rows
,
&
src
->
info
);
}
dst
->
info
.
rows
=
src
->
info
.
rows
;
dst
->
info
.
capacity
=
src
->
info
.
rows
;
dst
->
info
=
src
->
info
;
return
0
;
}
...
...
source/common/src/tglobal.c
浏览文件 @
2e3a1cfd
...
...
@@ -89,7 +89,7 @@ bool tsSmlDataFormat =
// query
int32_t
tsQueryPolicy
=
1
;
int32_t
tsQuerySmaOptimize
=
1
;
int32_t
tsQuerySmaOptimize
=
0
;
/*
* denote if the server needs to compress response message at the application layer to client, including query rsp,
...
...
source/dnode/mnode/impl/src/mndSma.c
浏览文件 @
2e3a1cfd
...
...
@@ -795,11 +795,12 @@ static int32_t mndDropSma(SMnode *pMnode, SRpcMsg *pReq, SDbObj *pDb, SSmaObj *p
pStb
=
mndAcquireStb
(
pMnode
,
pSma
->
stb
);
if
(
pStb
==
NULL
)
goto
_OVER
;
pTrans
=
mndTransCreate
(
pMnode
,
TRN_POLICY_R
OLLBACK
,
TRN_CONFLICT_DB
,
pReq
);
pTrans
=
mndTransCreate
(
pMnode
,
TRN_POLICY_R
ETRY
,
TRN_CONFLICT_DB
,
pReq
);
if
(
pTrans
==
NULL
)
goto
_OVER
;
mDebug
(
"trans:%d, used to drop sma:%s"
,
pTrans
->
id
,
pSma
->
name
);
mndTransSetDbName
(
pTrans
,
pDb
->
name
,
NULL
);
mndTransSetSerial
(
pTrans
);
char
streamName
[
TSDB_TABLE_FNAME_LEN
]
=
{
0
};
mndGetStreamNameFromSmaName
(
streamName
,
pSma
->
name
);
...
...
@@ -834,9 +835,6 @@ static int32_t mndDropSma(SMnode *pMnode, SRpcMsg *pReq, SDbObj *pDb, SSmaObj *p
code
=
0
;
_OVER:
if
(
code
!=
0
)
{
ASSERT
(
0
);
}
mndTransDrop
(
pTrans
);
mndReleaseVgroup
(
pMnode
,
pVgroup
);
mndReleaseStb
(
pMnode
,
pStb
);
...
...
@@ -855,6 +853,7 @@ int32_t mndDropSmasByStb(SMnode *pMnode, STrans *pTrans, SDbObj *pDb, SStbObj *p
if
(
pIter
==
NULL
)
break
;
if
(
pSma
->
stbUid
==
pStb
->
uid
)
{
mndTransSetSerial
(
pTrans
);
pVgroup
=
mndAcquireVgroup
(
pMnode
,
pSma
->
dstVgId
);
if
(
pVgroup
==
NULL
)
goto
_OVER
;
...
...
@@ -935,7 +934,6 @@ static int32_t mndProcessDropSmaReq(SRpcMsg *pReq) {
goto
_OVER
;
}
else
{
terrno
=
TSDB_CODE_MND_SMA_NOT_EXIST
;
ASSERT
(
0
);
goto
_OVER
;
}
}
...
...
source/dnode/vnode/src/vnd/vnodeSync.c
浏览文件 @
2e3a1cfd
...
...
@@ -708,8 +708,8 @@ int32_t vnodeSyncOpen(SVnode *pVnode, char *path) {
}
setPingTimerMS
(
pVnode
->
sync
,
5000
);
setElectTimerMS
(
pVnode
->
sync
,
28
00
);
setHeartbeatTimerMS
(
pVnode
->
sync
,
9
00
);
setElectTimerMS
(
pVnode
->
sync
,
40
00
);
setHeartbeatTimerMS
(
pVnode
->
sync
,
7
00
);
return
0
;
}
...
...
source/libs/executor/src/executil.c
浏览文件 @
2e3a1cfd
...
...
@@ -191,6 +191,7 @@ SSDataBlock* createResDataBlock(SDataBlockDescNode* pNode) {
pBlock
->
info
.
blockId
=
pNode
->
dataBlockId
;
pBlock
->
info
.
type
=
STREAM_INVALID
;
pBlock
->
info
.
calWin
=
(
STimeWindow
){.
skey
=
INT64_MIN
,
.
ekey
=
INT64_MAX
};
pBlock
->
info
.
watermark
=
INT64_MIN
;
for
(
int32_t
i
=
0
;
i
<
numOfCols
;
++
i
)
{
SSlotDescNode
*
pDescNode
=
(
SSlotDescNode
*
)
nodesListGetNode
(
pNode
->
pSlots
,
i
);
...
...
source/libs/executor/src/executorimpl.c
浏览文件 @
2e3a1cfd
...
...
@@ -4180,7 +4180,7 @@ SOperatorInfo* createOperatorTree(SPhysiNode* pPhyNode, SExecTaskInfo* pTaskInfo
int32_t
children
=
0
;
pOptr
=
createStreamFinalSessionAggOperatorInfo
(
ops
[
0
],
pPhyNode
,
pTaskInfo
,
children
);
}
else
if
(
QUERY_NODE_PHYSICAL_PLAN_STREAM_FINAL_SESSION
==
type
)
{
int32_t
children
=
1
;
int32_t
children
=
pHandle
->
numOfVgroups
;
pOptr
=
createStreamFinalSessionAggOperatorInfo
(
ops
[
0
],
pPhyNode
,
pTaskInfo
,
children
);
}
else
if
(
QUERY_NODE_PHYSICAL_PLAN_PARTITION
==
type
)
{
pOptr
=
createPartitionOperatorInfo
(
ops
[
0
],
(
SPartitionPhysiNode
*
)
pPhyNode
,
pTaskInfo
);
...
...
source/libs/executor/src/timewindowoperator.c
浏览文件 @
2e3a1cfd
...
...
@@ -1752,30 +1752,11 @@ void increaseTs(SqlFunctionCtx* pCtx) {
}
}
SSDataBlock
*
createDeleteBlock
()
{
SSDataBlock
*
pBlock
=
taosMemoryCalloc
(
1
,
sizeof
(
SSDataBlock
));
pBlock
->
info
.
hasVarCol
=
false
;
pBlock
->
info
.
groupId
=
0
;
pBlock
->
info
.
rows
=
0
;
pBlock
->
info
.
type
=
STREAM_DELETE_RESULT
;
pBlock
->
info
.
rowSize
=
sizeof
(
TSKEY
)
+
sizeof
(
uint64_t
);
pBlock
->
pDataBlock
=
taosArrayInit
(
2
,
sizeof
(
SColumnInfoData
));
SColumnInfoData
infoData
=
{
0
};
infoData
.
info
.
type
=
TSDB_DATA_TYPE_TIMESTAMP
;
infoData
.
info
.
bytes
=
sizeof
(
TSKEY
);
// window start ts
taosArrayPush
(
pBlock
->
pDataBlock
,
&
infoData
);
infoData
.
info
.
type
=
TSDB_DATA_TYPE_UBIGINT
;
infoData
.
info
.
bytes
=
sizeof
(
uint64_t
);
taosArrayPush
(
pBlock
->
pDataBlock
,
&
infoData
);
return
pBlock
;
}
void
initIntervalDownStream
(
SOperatorInfo
*
downstream
,
uint8_t
type
,
SAggSupporter
*
pSup
)
{
ASSERT
(
downstream
->
operatorType
==
QUERY_NODE_PHYSICAL_PLAN_STREAM_SCAN
);
if
(
downstream
->
operatorType
!=
QUERY_NODE_PHYSICAL_PLAN_STREAM_SCAN
)
{
// Todo(liuyao) support partition by column
return
;
}
SStreamScanInfo
*
pScanInfo
=
downstream
->
info
;
pScanInfo
->
sessionSup
.
parentType
=
type
;
pScanInfo
->
sessionSup
.
pIntervalAggSup
=
pSup
;
...
...
@@ -2942,13 +2923,6 @@ static SSDataBlock* doStreamFinalIntervalAgg(SOperatorInfo* pOperator) {
// process the rest of the data
return
pInfo
->
pUpdateRes
;
}
// doBuildPullDataBlock(pInfo->pPullWins, &pInfo->pullIndex, pInfo->pPullDataRes);
// if (pInfo->pPullDataRes->info.rows != 0) {
// // process the rest of the data
// ASSERT(IS_FINAL_OP(pInfo));
// printDataBlock(pInfo->pPullDataRes, IS_FINAL_OP(pInfo) ? "interval final" : "interval semi");
// return pInfo->pPullDataRes;
// }
doBuildDeleteResult
(
pInfo
->
pDelWins
,
&
pInfo
->
delIndex
,
pInfo
->
pDelRes
);
if
(
pInfo
->
pDelRes
->
info
.
rows
!=
0
)
{
// process the rest of the data
...
...
@@ -2968,6 +2942,7 @@ static SSDataBlock* doStreamFinalIntervalAgg(SOperatorInfo* pOperator) {
}
printDataBlock
(
pBlock
,
IS_FINAL_OP
(
pInfo
)
?
"interval final recv"
:
"interval semi recv"
);
maxTs
=
TMAX
(
maxTs
,
pBlock
->
info
.
window
.
ekey
);
maxTs
=
TMAX
(
maxTs
,
pBlock
->
info
.
watermark
);
if
(
pBlock
->
info
.
type
==
STREAM_NORMAL
||
pBlock
->
info
.
type
==
STREAM_PULL_DATA
||
pBlock
->
info
.
type
==
STREAM_INVALID
)
{
...
...
@@ -3056,6 +3031,8 @@ static SSDataBlock* doStreamFinalIntervalAgg(SOperatorInfo* pOperator) {
closeIntervalWindow
(
pInfo
->
aggSup
.
pResultRowHashTable
,
&
pInfo
->
twAggSup
,
&
pInfo
->
interval
,
pInfo
->
pPullDataMap
,
pUpdated
,
pInfo
->
pRecycledPages
,
pInfo
->
aggSup
.
pResultBuf
);
closeChildIntervalWindow
(
pInfo
->
pChildren
,
pInfo
->
twAggSup
.
maxTs
);
}
else
{
pInfo
->
binfo
.
pRes
->
info
.
watermark
=
pInfo
->
twAggSup
.
maxTs
;
}
finalizeUpdatedResult
(
pOperator
->
exprSupp
.
numOfExprs
,
pInfo
->
aggSup
.
pResultBuf
,
pUpdated
,
pSup
->
rowEntryInfoOffset
);
...
...
@@ -3090,7 +3067,6 @@ static SSDataBlock* doStreamFinalIntervalAgg(SOperatorInfo* pOperator) {
printDataBlock
(
pInfo
->
pDelRes
,
IS_FINAL_OP
(
pInfo
)
?
"interval final"
:
"interval semi"
);
return
pInfo
->
pDelRes
;
}
// ASSERT(false);
return
NULL
;
}
...
...
@@ -3102,6 +3078,7 @@ SSDataBlock* createSpecialDataBlock(EStreamType type) {
pBlock
->
info
.
type
=
type
;
pBlock
->
info
.
rowSize
=
sizeof
(
TSKEY
)
+
sizeof
(
TSKEY
)
+
sizeof
(
uint64_t
)
+
sizeof
(
uint64_t
)
+
sizeof
(
TSKEY
)
+
sizeof
(
TSKEY
);
pBlock
->
info
.
watermark
=
INT64_MIN
;
pBlock
->
pDataBlock
=
taosArrayInit
(
6
,
sizeof
(
SColumnInfoData
));
SColumnInfoData
infoData
=
{
0
};
...
...
@@ -3291,7 +3268,6 @@ void destroyStreamSessionAggOperatorInfo(void* param, int32_t numOfOutput) {
SStreamSessionAggOperatorInfo
*
pChInfo
=
pChild
->
info
;
destroyStreamSessionAggOperatorInfo
(
pChInfo
,
numOfOutput
);
taosMemoryFreeClear
(
pChild
);
taosMemoryFreeClear
(
pChInfo
);
}
}
colDataDestroy
(
&
pInfo
->
twAggSup
.
timeWindowData
);
...
...
@@ -4056,6 +4032,7 @@ static SSDataBlock* doStreamSessionAgg(SOperatorInfo* pOperator) {
doStreamSessionAggImpl
(
pChildOp
,
pBlock
,
NULL
,
NULL
,
true
);
}
maxTs
=
TMAX
(
maxTs
,
pBlock
->
info
.
window
.
ekey
);
maxTs
=
TMAX
(
maxTs
,
pBlock
->
info
.
watermark
);
}
pInfo
->
twAggSup
.
maxTs
=
TMAX
(
pInfo
->
twAggSup
.
maxTs
,
maxTs
);
...
...
@@ -4179,6 +4156,7 @@ static SSDataBlock* doStreamSessionSemiAgg(SOperatorInfo* pOperator) {
}
pInfo
->
twAggSup
.
maxTs
=
TMAX
(
pInfo
->
twAggSup
.
maxTs
,
maxTs
);
pBInfo
->
pRes
->
info
.
watermark
=
pInfo
->
twAggSup
.
maxTs
;
// restore the value
pOperator
->
status
=
OP_RES_TO_RETURN
;
// semi operator
...
...
source/libs/parser/src/parTranslater.c
浏览文件 @
2e3a1cfd
...
...
@@ -1253,20 +1253,21 @@ static int32_t translateRepeatScanFunc(STranslateContext* pCxt, SFunctionNode* p
if
(
!
fmIsRepeatScanFunc
(
pFunc
->
funcId
))
{
return
TSDB_CODE_SUCCESS
;
}
if
(
isSelectStmt
(
pCxt
->
pCurrStmt
))
{
// select percentile() without from clause is also valid
if
(
NULL
==
((
SSelectStmt
*
)
pCxt
->
pCurrStmt
)
->
pFromTable
)
{
return
TSDB_CODE_SUCCESS
;
}
SNode
*
pTable
=
((
SSelectStmt
*
)
pCxt
->
pCurrStmt
)
->
pFromTable
;
if
(
QUERY_NODE_REAL_TABLE
==
nodeType
(
pTable
)
&&
(
TSDB_CHILD_TABLE
==
((
SRealTableNode
*
)
pTable
)
->
pMeta
->
tableType
||
TSDB_NORMAL_TABLE
==
((
SRealTableNode
*
)
pTable
)
->
pMeta
->
tableType
))
{
return
TSDB_CODE_SUCCESS
;
}
if
(
!
isSelectStmt
(
pCxt
->
pCurrStmt
))
{
return
generateSyntaxErrMsgExt
(
&
pCxt
->
msgBuf
,
TSDB_CODE_PAR_ONLY_SUPPORT_SINGLE_TABLE
,
"%s is only supported in single table query"
,
pFunc
->
functionName
);
}
return
generateSyntaxErrMsgExt
(
&
pCxt
->
msgBuf
,
TSDB_CODE_PAR_ONLY_SUPPORT_SINGLE_TABLE
,
"%s is only supported in single table query"
,
pFunc
->
functionName
);
SSelectStmt
*
pSelect
=
(
SSelectStmt
*
)
pCxt
->
pCurrStmt
;
SNode
*
pTable
=
pSelect
->
pFromTable
;
// select percentile() without from clause is also valid
if
((
NULL
!=
pTable
&&
(
QUERY_NODE_REAL_TABLE
!=
nodeType
(
pTable
)
||
(
TSDB_CHILD_TABLE
!=
((
SRealTableNode
*
)
pTable
)
->
pMeta
->
tableType
&&
TSDB_NORMAL_TABLE
!=
((
SRealTableNode
*
)
pTable
)
->
pMeta
->
tableType
)))
||
NULL
!=
pSelect
->
pPartitionByList
)
{
return
generateSyntaxErrMsgExt
(
&
pCxt
->
msgBuf
,
TSDB_CODE_PAR_ONLY_SUPPORT_SINGLE_TABLE
,
"%s is only supported in single table query"
,
pFunc
->
functionName
);
}
return
TSDB_CODE_SUCCESS
;
}
static
bool
isStar
(
SNode
*
pNode
)
{
...
...
@@ -2509,9 +2510,31 @@ static EDealRes checkStateExpr(SNode* pNode, void* pContext) {
return
DEAL_RES_CONTINUE
;
}
static
int32_t
translateStateWindow
(
STranslateContext
*
pCxt
,
SStateWindowNode
*
pState
)
{
static
bool
isPartitionByTbname
(
SNodeList
*
pPartitionByList
)
{
if
(
1
!=
LIST_LENGTH
(
pPartitionByList
))
{
return
false
;
}
SNode
*
pPartKey
=
nodesListGetNode
(
pPartitionByList
,
0
);
return
QUERY_NODE_FUNCTION
!=
nodeType
(
pPartKey
)
||
FUNCTION_TYPE_TBNAME
!=
((
SFunctionNode
*
)
pPartKey
)
->
funcType
;
}
static
int32_t
checkStateWindowForStream
(
STranslateContext
*
pCxt
,
SSelectStmt
*
pSelect
)
{
if
(
!
pCxt
->
createStream
)
{
return
TSDB_CODE_SUCCESS
;
}
if
(
TSDB_SUPER_TABLE
==
((
SRealTableNode
*
)
pSelect
->
pFromTable
)
->
pMeta
->
tableType
&&
!
isPartitionByTbname
(
pSelect
->
pPartitionByList
))
{
return
generateSyntaxErrMsgExt
(
&
pCxt
->
msgBuf
,
TSDB_CODE_PAR_INVALID_STREAM_QUERY
,
"Unsupported stream query"
);
}
return
TSDB_CODE_SUCCESS
;
}
static
int32_t
translateStateWindow
(
STranslateContext
*
pCxt
,
SSelectStmt
*
pSelect
)
{
SStateWindowNode
*
pState
=
(
SStateWindowNode
*
)
pSelect
->
pWindow
;
nodesWalkExprPostOrder
(
pState
->
pExpr
,
checkStateExpr
,
pCxt
);
// todo check for "function not support for state_window"
if
(
TSDB_CODE_SUCCESS
==
pCxt
->
errCode
)
{
pCxt
->
errCode
=
checkStateWindowForStream
(
pCxt
,
pSelect
);
}
return
pCxt
->
errCode
;
}
...
...
@@ -2522,14 +2545,13 @@ static int32_t translateSessionWindow(STranslateContext* pCxt, SSessionWindowNod
if
(
PRIMARYKEY_TIMESTAMP_COL_ID
!=
pSession
->
pCol
->
colId
)
{
return
generateSyntaxErrMsg
(
&
pCxt
->
msgBuf
,
TSDB_CODE_PAR_INTER_SESSION_COL
);
}
// todo check for "function not support for session"
return
TSDB_CODE_SUCCESS
;
}
static
int32_t
translateSpecificWindow
(
STranslateContext
*
pCxt
,
SSelectStmt
*
pSelect
)
{
switch
(
nodeType
(
pSelect
->
pWindow
))
{
case
QUERY_NODE_STATE_WINDOW
:
return
translateStateWindow
(
pCxt
,
(
SStateWindowNode
*
)
pSelect
->
pWindow
);
return
translateStateWindow
(
pCxt
,
pSelect
);
case
QUERY_NODE_SESSION_WINDOW
:
return
translateSessionWindow
(
pCxt
,
(
SSessionWindowNode
*
)
pSelect
->
pWindow
);
case
QUERY_NODE_INTERVAL_WINDOW
:
...
...
@@ -4708,7 +4730,7 @@ static int32_t checkCreateStream(STranslateContext* pCxt, SCreateStreamStmt* pSt
}
}
return
generateSyntaxErrMsg
(
&
pCxt
->
msgBuf
,
TSDB_CODE_PAR_INVALID_STREAM_QUERY
);
return
generateSyntaxErrMsg
Ext
(
&
pCxt
->
msgBuf
,
TSDB_CODE_PAR_INVALID_STREAM_QUERY
,
"Unsupported stream query"
);
}
static
void
getSourceDatabase
(
SNode
*
pStmt
,
int32_t
acctId
,
char
*
pDbFName
)
{
...
...
source/libs/planner/src/planner.c
浏览文件 @
2e3a1cfd
...
...
@@ -85,7 +85,7 @@ static int32_t setSubplanExecutionNode(SPhysiNode* pNode, int32_t groupId, SDown
}
int32_t
qSetSubplanExecutionNode
(
SSubplan
*
subplan
,
int32_t
groupId
,
SDownstreamSourceNode
*
pSource
)
{
planDebug
(
"QID:0x%"
PRIx64
" set subplan execution node, groupId:%d"
,
subplan
->
id
.
group
Id
,
groupId
);
planDebug
(
"QID:0x%"
PRIx64
" set subplan execution node, groupId:%d"
,
subplan
->
id
.
query
Id
,
groupId
);
return
setSubplanExecutionNode
(
subplan
->
pNode
,
groupId
,
pSource
);
}
...
...
@@ -104,7 +104,10 @@ static void clearSubplanExecutionNode(SPhysiNode* pNode) {
FOREACH
(
pChild
,
pNode
->
pChildren
)
{
clearSubplanExecutionNode
((
SPhysiNode
*
)
pChild
);
}
}
void
qClearSubplanExecutionNode
(
SSubplan
*
pSubplan
)
{
clearSubplanExecutionNode
(
pSubplan
->
pNode
);
}
void
qClearSubplanExecutionNode
(
SSubplan
*
pSubplan
)
{
planDebug
(
"QID:0x%"
PRIx64
" clear subplan execution node, groupId:%d"
,
pSubplan
->
id
.
queryId
,
pSubplan
->
id
.
groupId
);
clearSubplanExecutionNode
(
pSubplan
->
pNode
);
}
int32_t
qSubPlanToString
(
const
SSubplan
*
pSubplan
,
char
**
pStr
,
int32_t
*
pLen
)
{
if
(
SUBPLAN_TYPE_MODIFY
==
pSubplan
->
subplanType
&&
NULL
==
pSubplan
->
pNode
)
{
...
...
source/libs/scheduler/src/schTask.c
浏览文件 @
2e3a1cfd
...
...
@@ -284,7 +284,6 @@ int32_t schProcessOnTaskSuccess(SSchJob *pJob, SSchTask *pTask) {
for
(
int32_t
i
=
0
;
i
<
parentNum
;
++
i
)
{
SSchTask
*
parent
=
*
(
SSchTask
**
)
taosArrayGet
(
pTask
->
parents
,
i
);
int32_t
readyNum
=
atomic_add_fetch_32
(
&
parent
->
childReady
,
1
);
SCH_LOCK
(
SCH_WRITE
,
&
parent
->
planLock
);
SDownstreamSourceNode
source
=
{
...
...
@@ -298,6 +297,8 @@ int32_t schProcessOnTaskSuccess(SSchJob *pJob, SSchTask *pTask) {
qSetSubplanExecutionNode
(
parent
->
plan
,
pTask
->
plan
->
id
.
groupId
,
&
source
);
SCH_UNLOCK
(
SCH_WRITE
,
&
parent
->
planLock
);
int32_t
readyNum
=
atomic_add_fetch_32
(
&
parent
->
childReady
,
1
);
if
(
SCH_TASK_READY_FOR_LAUNCH
(
readyNum
,
parent
))
{
SCH_TASK_DLOG
(
"all %d children task done, start to launch parent task 0x%"
PRIx64
,
readyNum
,
parent
->
taskId
);
SCH_ERR_RET
(
schLaunchTask
(
pJob
,
parent
));
...
...
source/libs/stream/src/streamData.c
浏览文件 @
2e3a1cfd
...
...
@@ -35,6 +35,7 @@ int32_t streamDispatchReqToData(const SStreamDispatchReq* pReq, SStreamDataBlock
pDataBlock
->
info
.
window
.
skey
=
be64toh
(
pRetrieve
->
skey
);
pDataBlock
->
info
.
window
.
ekey
=
be64toh
(
pRetrieve
->
ekey
);
pDataBlock
->
info
.
version
=
be64toh
(
pRetrieve
->
version
);
pDataBlock
->
info
.
watermark
=
be64toh
(
pRetrieve
->
watermark
);
pDataBlock
->
info
.
type
=
pRetrieve
->
streamBlockType
;
pDataBlock
->
info
.
childId
=
pReq
->
upstreamChildId
;
...
...
source/libs/stream/src/streamDispatch.c
浏览文件 @
2e3a1cfd
...
...
@@ -184,6 +184,7 @@ static int32_t streamAddBlockToDispatchMsg(const SSDataBlock* pBlock, SStreamDis
pRetrieve
->
skey
=
htobe64
(
pBlock
->
info
.
window
.
skey
);
pRetrieve
->
ekey
=
htobe64
(
pBlock
->
info
.
window
.
ekey
);
pRetrieve
->
version
=
htobe64
(
pBlock
->
info
.
version
);
pRetrieve
->
watermark
=
htobe64
(
pBlock
->
info
.
watermark
);
int32_t
numOfCols
=
(
int32_t
)
taosArrayGetSize
(
pBlock
->
pDataBlock
);
pRetrieve
->
numOfCols
=
htonl
(
numOfCols
);
...
...
source/libs/sync/src/syncMain.c
浏览文件 @
2e3a1cfd
...
...
@@ -1270,6 +1270,8 @@ int32_t syncNodeStopElectTimer(SSyncNode* pSyncNode) {
atomic_add_fetch_64
(
&
pSyncNode
->
electTimerLogicClockUser
,
1
);
taosTmrStop
(
pSyncNode
->
pElectTimer
);
pSyncNode
->
pElectTimer
=
NULL
;
sTrace
(
"vgId:%d, sync %s stop elect timer"
,
pSyncNode
->
vgId
,
syncUtilState2String
(
pSyncNode
->
state
));
return
ret
;
}
...
...
@@ -1343,7 +1345,8 @@ int32_t syncNodeStopHeartbeatTimer(SSyncNode* pSyncNode) {
atomic_add_fetch_64
(
&
pSyncNode
->
heartbeatTimerLogicClockUser
,
1
);
taosTmrStop
(
pSyncNode
->
pHeartbeatTimer
);
pSyncNode
->
pHeartbeatTimer
=
NULL
;
sTrace
(
"vgId:%d, stop heartbeat timer"
,
pSyncNode
->
vgId
);
sTrace
(
"vgId:%d, sync %s stop heartbeat timer"
,
pSyncNode
->
vgId
,
syncUtilState2String
(
pSyncNode
->
state
));
return
ret
;
}
...
...
@@ -2965,7 +2968,7 @@ bool syncNodeCanChange(SSyncNode* pSyncNode) {
return
true
;
}
inline
void
syncLogSendRequestVote
(
SSyncNode
*
pSyncNode
,
const
SyncRequestVote
*
pMsg
,
const
char
*
s
)
{
void
syncLogSendRequestVote
(
SSyncNode
*
pSyncNode
,
const
SyncRequestVote
*
pMsg
,
const
char
*
s
)
{
char
host
[
64
];
uint16_t
port
;
syncUtilU642Addr
(
pMsg
->
destId
.
addr
,
host
,
sizeof
(
host
),
&
port
);
...
...
@@ -2976,7 +2979,7 @@ inline void syncLogSendRequestVote(SSyncNode* pSyncNode, const SyncRequestVote*
syncNodeEventLog
(
pSyncNode
,
logBuf
);
}
inline
void
syncLogRecvRequestVote
(
SSyncNode
*
pSyncNode
,
const
SyncRequestVote
*
pMsg
,
const
char
*
s
)
{
void
syncLogRecvRequestVote
(
SSyncNode
*
pSyncNode
,
const
SyncRequestVote
*
pMsg
,
const
char
*
s
)
{
char
logBuf
[
256
];
char
host
[
64
];
uint16_t
port
;
...
...
@@ -2987,7 +2990,7 @@ inline void syncLogRecvRequestVote(SSyncNode* pSyncNode, const SyncRequestVote*
syncNodeEventLog
(
pSyncNode
,
logBuf
);
}
inline
void
syncLogSendRequestVoteReply
(
SSyncNode
*
pSyncNode
,
const
SyncRequestVoteReply
*
pMsg
,
const
char
*
s
)
{
void
syncLogSendRequestVoteReply
(
SSyncNode
*
pSyncNode
,
const
SyncRequestVoteReply
*
pMsg
,
const
char
*
s
)
{
char
host
[
64
];
uint16_t
port
;
syncUtilU642Addr
(
pMsg
->
destId
.
addr
,
host
,
sizeof
(
host
),
&
port
);
...
...
@@ -2997,7 +3000,7 @@ inline void syncLogSendRequestVoteReply(SSyncNode* pSyncNode, const SyncRequestV
syncNodeEventLog
(
pSyncNode
,
logBuf
);
}
inline
void
syncLogRecvRequestVoteReply
(
SSyncNode
*
pSyncNode
,
const
SyncRequestVoteReply
*
pMsg
,
const
char
*
s
)
{
void
syncLogRecvRequestVoteReply
(
SSyncNode
*
pSyncNode
,
const
SyncRequestVoteReply
*
pMsg
,
const
char
*
s
)
{
char
host
[
64
];
uint16_t
port
;
syncUtilU642Addr
(
pMsg
->
srcId
.
addr
,
host
,
sizeof
(
host
),
&
port
);
...
...
@@ -3007,7 +3010,7 @@ inline void syncLogRecvRequestVoteReply(SSyncNode* pSyncNode, const SyncRequestV
syncNodeEventLog
(
pSyncNode
,
logBuf
);
}
inline
void
syncLogSendAppendEntries
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntries
*
pMsg
,
const
char
*
s
)
{
void
syncLogSendAppendEntries
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntries
*
pMsg
,
const
char
*
s
)
{
char
host
[
64
];
uint16_t
port
;
syncUtilU642Addr
(
pMsg
->
destId
.
addr
,
host
,
sizeof
(
host
),
&
port
);
...
...
@@ -3022,7 +3025,7 @@ inline void syncLogSendAppendEntries(SSyncNode* pSyncNode, const SyncAppendEntri
syncNodeEventLog
(
pSyncNode
,
logBuf
);
}
inline
void
syncLogRecvAppendEntries
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntries
*
pMsg
,
const
char
*
s
)
{
void
syncLogRecvAppendEntries
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntries
*
pMsg
,
const
char
*
s
)
{
char
host
[
64
];
uint16_t
port
;
syncUtilU642Addr
(
pMsg
->
srcId
.
addr
,
host
,
sizeof
(
host
),
&
port
);
...
...
@@ -3037,7 +3040,7 @@ inline void syncLogRecvAppendEntries(SSyncNode* pSyncNode, const SyncAppendEntri
syncNodeEventLog
(
pSyncNode
,
logBuf
);
}
inline
void
syncLogSendAppendEntriesBatch
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntriesBatch
*
pMsg
,
const
char
*
s
)
{
void
syncLogSendAppendEntriesBatch
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntriesBatch
*
pMsg
,
const
char
*
s
)
{
char
host
[
64
];
uint16_t
port
;
syncUtilU642Addr
(
pMsg
->
destId
.
addr
,
host
,
sizeof
(
host
),
&
port
);
...
...
@@ -3050,7 +3053,7 @@ inline void syncLogSendAppendEntriesBatch(SSyncNode* pSyncNode, const SyncAppend
syncNodeEventLog
(
pSyncNode
,
logBuf
);
}
inline
void
syncLogRecvAppendEntriesBatch
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntriesBatch
*
pMsg
,
const
char
*
s
)
{
void
syncLogRecvAppendEntriesBatch
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntriesBatch
*
pMsg
,
const
char
*
s
)
{
char
host
[
64
];
uint16_t
port
;
syncUtilU642Addr
(
pMsg
->
srcId
.
addr
,
host
,
sizeof
(
host
),
&
port
);
...
...
@@ -3063,7 +3066,7 @@ inline void syncLogRecvAppendEntriesBatch(SSyncNode* pSyncNode, const SyncAppend
syncNodeEventLog
(
pSyncNode
,
logBuf
);
}
inline
void
syncLogSendAppendEntriesReply
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntriesReply
*
pMsg
,
const
char
*
s
)
{
void
syncLogSendAppendEntriesReply
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntriesReply
*
pMsg
,
const
char
*
s
)
{
char
host
[
64
];
uint16_t
port
;
syncUtilU642Addr
(
pMsg
->
destId
.
addr
,
host
,
sizeof
(
host
),
&
port
);
...
...
@@ -3075,7 +3078,7 @@ inline void syncLogSendAppendEntriesReply(SSyncNode* pSyncNode, const SyncAppend
syncNodeEventLog
(
pSyncNode
,
logBuf
);
}
inline
void
syncLogRecvAppendEntriesReply
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntriesReply
*
pMsg
,
const
char
*
s
)
{
void
syncLogRecvAppendEntriesReply
(
SSyncNode
*
pSyncNode
,
const
SyncAppendEntriesReply
*
pMsg
,
const
char
*
s
)
{
char
host
[
64
];
uint16_t
port
;
syncUtilU642Addr
(
pMsg
->
srcId
.
addr
,
host
,
sizeof
(
host
),
&
port
);
...
...
source/libs/sync/src/syncRequestVote.c
浏览文件 @
2e3a1cfd
...
...
@@ -57,11 +57,14 @@ int32_t syncNodeOnRequestVoteCb(SSyncNode* ths, SyncRequestVote* pMsg) {
// maybe update term
if
(
pMsg
->
term
>
ths
->
pRaftStore
->
currentTerm
)
{
syncNodeUpdateTerm
(
ths
,
pMsg
->
term
);
#if 0
if (logOK) {
syncNodeUpdateTerm(ths, pMsg->term);
} else {
syncNodeUpdateTermWithoutStepDown(ths, pMsg->term);
}
#endif
}
ASSERT
(
pMsg
->
term
<=
ths
->
pRaftStore
->
currentTerm
);
...
...
@@ -167,11 +170,14 @@ int32_t syncNodeOnRequestVoteSnapshotCb(SSyncNode* ths, SyncRequestVote* pMsg) {
// maybe update term
if
(
pMsg
->
term
>
ths
->
pRaftStore
->
currentTerm
)
{
syncNodeUpdateTerm
(
ths
,
pMsg
->
term
);
#if 0
if (logOK) {
syncNodeUpdateTerm(ths, pMsg->term);
} else {
syncNodeUpdateTermWithoutStepDown(ths, pMsg->term);
}
#endif
}
ASSERT
(
pMsg
->
term
<=
ths
->
pRaftStore
->
currentTerm
);
...
...
source/libs/sync/test/sh/a.sh
浏览文件 @
2e3a1cfd
...
...
@@ -89,7 +89,7 @@ for file in `ls ${logpath}/log.dnode*.vgId*.commit`;do
line
=
`
cat
${
file
}
|
tail
-n1
`
echo
$line
|
awk
'{print $5, $0}'
>>
${
tmpfile
}
done
cat
${
tmpfile
}
|
sort
-k1
>
${
logpath
}
/log.commits
cat
${
tmpfile
}
|
sort
-k1
|
awk
'BEGIN{vgid=$1}{if($1==vgid){print $0}else{print ""; print $0; vgid=$1;}}END{}'
>
${
logpath
}
/log.commits
exit
0
...
...
source/libs/sync/test/sh/insert.tpl.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
8
,
"
thread_count_create_tbl
"
:
8
,
"
create_table_thread_count
"
:
8
,
"result_file"
:
"./tpl_insert_result_tpl"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/cluster/TD-3693/insert1Data.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/cluster/TD-3693/insert2Data.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/dockerCluster/insert.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
1
,
"
create_table_thread_count
"
:
1
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"databases"
:
[{
...
...
tests/pytest/manualTest/TD-5114/insertDataDb3Replica2.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/perfbenchmark/bug3433.py
浏览文件 @
2e3a1cfd
...
...
@@ -185,7 +185,7 @@ class TDTestCase:
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"/tmp/insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/perfbenchmark/joinPerformance.py
浏览文件 @
2e3a1cfd
...
...
@@ -168,7 +168,7 @@ class JoinPerf:
"user"
:
self
.
user
,
"password"
:
self
.
password
,
"thread_count"
:
cpu_count
(),
"
thread_count_create_tbl
"
:
cpu_count
(),
"
create_table_thread_count
"
:
cpu_count
(),
"result_file"
:
"/tmp/insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/perfbenchmark/taosdemoInsert.py
浏览文件 @
2e3a1cfd
...
...
@@ -172,7 +172,7 @@ class Taosdemo:
"user"
:
self
.
user
,
"password"
:
self
.
password
,
"thread_count"
:
cpu_count
(),
"
thread_count_create_tbl
"
:
cpu_count
(),
"
create_table_thread_count
"
:
cpu_count
(),
"result_file"
:
"/tmp/insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/query/nestedQuery/insertData.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/query/query1970YearsAf.py
浏览文件 @
2e3a1cfd
...
...
@@ -133,7 +133,7 @@ class TDTestCase:
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"/tmp/insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/insert-interlace.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
5000
,
...
...
tests/pytest/tools/insert-tblimit-tboffset-createdb.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/insert-tblimit-tboffset-insertrec.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/insert-tblimit-tboffset.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/insert-tblimit-tboffset0.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/insert-tblimit1-tboffset.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/insert.json
浏览文件 @
2e3a1cfd
...
...
@@ -7,7 +7,7 @@
"password"
:
"taosdata"
,
"thread_count"
:
2
,
"num_of_records_per_req"
:
10
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"databases"
:
[{
"dbinfo"
:
{
"name"
:
"db01"
,
...
...
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertMSDB.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
10
,
"
create_table_thread_count
"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertNanoDB.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
10
,
"
create_table_thread_count
"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoInsertUSDB.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
10
,
"
create_table_thread_count
"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabase.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
10
,
"
create_table_thread_count
"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabaseInsertForSub.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
10
,
"
create_table_thread_count
"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabaseNow.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
10
,
"
create_table_thread_count
"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/NanoTestCase/taosdemoTestNanoDatabasecsv.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
10
,
"
create_table_thread_count
"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/TD-3453/query-interrupt.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/TD-4985/query-limit-offset.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
10
,
"
create_table_thread_count
"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/TD-5213/insertSigcolumnsNum4096.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
10
,
"
create_table_thread_count
"
:
10
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-1s1tnt1r.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-1s1tntmr.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-disorder.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-drop-exist-auto-N00.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-drop-exist-auto-Y00.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-illegal.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-interlace-row.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-interval-speed.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
100
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-newdb.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-newtable.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-nodbnodrop.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-offset.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-renewdb.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-sample.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert-timestep.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertBinaryLenLarge16374AllcolLar49151.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertChildTab0.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertChildTabLess0.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertColumnsAndTagNum4096.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertColumnsAndTagNumLarge4096.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertColumnsNum0.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertInterlaceRowsLarge1M.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertMaxNumPerReq.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertNumOfrecordPerReq0.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertNumOfrecordPerReqless0.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertRestful.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertSigcolumnsNum4096.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertTagsNumLarge128.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insertTimestepMulRowsLargeint16.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/insert_5M_rows.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/manual_block1_comp.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/manual_block2.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/manual_change_time_1_1_A.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/manual_change_time_1_1_B.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/moredemo-offset-limit1.json
浏览文件 @
2e3a1cfd
...
...
@@ -7,7 +7,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/moredemo-offset-limit5.json
浏览文件 @
2e3a1cfd
...
...
@@ -7,7 +7,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/moredemo-offset-limit94.json
浏览文件 @
2e3a1cfd
...
...
@@ -7,7 +7,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/moredemo-offset-newdb.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/query-interrupt.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/queryInsertdata.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/queryInsertrestdata.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/stmt/1174-large-stmt.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
1
,
"
create_table_thread_count
"
:
1
,
"result_file"
:
"1174.out"
,
"confirm_parameter_prompt"
:
"no"
,
"num_of_records_per_req"
:
51
,
...
...
tests/pytest/tools/taosdemoAllTest/stmt/1174-large-taosc.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
1
,
"
create_table_thread_count
"
:
1
,
"result_file"
:
"1174.out"
,
"confirm_parameter_prompt"
:
"no"
,
"num_of_records_per_req"
:
51
,
...
...
tests/pytest/tools/taosdemoAllTest/stmt/1174-small-stmt-random.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
1
,
"
create_table_thread_count
"
:
1
,
"result_file"
:
"1174.out"
,
"confirm_parameter_prompt"
:
"no"
,
"num_of_records_per_req"
:
51
,
...
...
tests/pytest/tools/taosdemoAllTest/stmt/1174-small-stmt.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
1
,
"
create_table_thread_count
"
:
1
,
"result_file"
:
"1174.out"
,
"confirm_parameter_prompt"
:
"no"
,
"num_of_records_per_req"
:
51
,
...
...
tests/pytest/tools/taosdemoAllTest/stmt/1174-small-taosc.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
10
,
"
thread_count_create_tbl
"
:
1
,
"
create_table_thread_count
"
:
1
,
"result_file"
:
"1174.out"
,
"confirm_parameter_prompt"
:
"no"
,
"num_of_records_per_req"
:
51
,
...
...
tests/pytest/tools/taosdemoAllTest/stmt/insert-1s1tnt1r-stmt.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/stmt/insert-1s1tntmr-stmt.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/stmt/insert-disorder-stmt.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/stmt/insert-drop-exist-auto-N00-stmt.json
浏览文件 @
2e3a1cfd
...
...
@@ -6,7 +6,7 @@
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
4
,
"
thread_count_create_tbl
"
:
4
,
"
create_table_thread_count
"
:
4
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
...
...
tests/pytest/tools/taosdemoAllTest/stmt/insert-drop-exist-auto-Y00-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insert-interlace-row-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insert-interval-speed-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insert-newdb-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insert-newtable-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insert-nodbnodrop-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insert-offset-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insert-renewdb-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insert-sample-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insert-timestep-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertBinaryLenLarge16374AllcolLar49151-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertChildTab0-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertChildTabLess0-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertColumnsAndTagNum4096-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertColumnsNum0-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertInterlaceRowsLarge1M-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertMaxNumPerReq-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertNumOfrecordPerReq0-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertNumOfrecordPerReqless0-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertSigcolumnsNum4096-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertTagsNumLarge128-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/insertTimestepMulRowsLargeint16-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/stmt/nsertColumnsAndTagNumLarge4096-stmt.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/subInsertdata.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/subInsertdataMaxsql100.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/taosdemoInsertMSDB.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/taosdemoInsertNanoDB.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/taosdemoInsertUSDB.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/taosdemoTestNanoDatabase.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/taosdemoTestNanoDatabaseInsertForSub.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/taosdemoTestNanoDatabaseNow.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoAllTest/taosdemoTestNanoDatabasecsv.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tools/taosdemoPerformance.py
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tsdb/insertDataDb1.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tsdb/insertDataDb1Replica2.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tsdb/insertDataDb2.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tsdb/insertDataDb2Newstab.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tsdb/insertDataDb2NewstabReplica2.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/tsdb/insertDataDb2Replica2.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/util/taosdemoCfg.py
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/wal/insertDataDb1.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/wal/insertDataDb1Replica2.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/wal/insertDataDb2.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/wal/insertDataDb2Newstab.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/wal/insertDataDb2NewstabReplica2.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/pytest/wal/insertDataDb2Replica2.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/system-test/1-insert/manyVgroups.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/system-test/1-insert/performanceInsert.json
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tests/system-test/fulltest.sh
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
tools/shell/src/shellEngine.c
浏览文件 @
2e3a1cfd
此差异已折叠。
点击以展开。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录