Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
faa37667
T
TDengine
项目概览
taosdata
/
TDengine
大约 1 年 前同步成功
通知
1184
Star
22015
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
faa37667
编写于
5月 10, 2022
作者:
H
Hongze Cheng
浏览文件
操作
浏览文件
下载
差异文件
Merge branch '3.0' of
https://github.com/taosdata/TDengine
into feature/vnode_refact1
上级
00587753
1df5468f
变更
8
显示空白变更内容
内联
并排
Showing
8 changed file
with
144 addition
and
75 deletion
+144
-75
include/common/taosdef.h
include/common/taosdef.h
+1
-1
source/dnode/vnode/src/tsdb/tsdbRead.c
source/dnode/vnode/src/tsdb/tsdbRead.c
+13
-22
source/libs/sync/src/syncRaftLog.c
source/libs/sync/src/syncRaftLog.c
+18
-4
tests/system-test/1-insert/insertWithMoreVgroup.py
tests/system-test/1-insert/insertWithMoreVgroup.py
+19
-7
tests/system-test/1-insert/manyVgroups.json
tests/system-test/1-insert/manyVgroups.json
+3
-3
tests/system-test/2-query/diff.py
tests/system-test/2-query/diff.py
+12
-37
tests/system-test/fulltest.sh
tests/system-test/fulltest.sh
+2
-1
tests/system-test/insert.json
tests/system-test/insert.json
+76
-0
未找到文件。
include/common/taosdef.h
浏览文件 @
faa37667
...
...
@@ -89,7 +89,7 @@ extern char *qtypeStr[];
#define TSDB_PORT_HTTP 11
#
define
TD_DEBUG_PRINT_ROW
#
undef
TD_DEBUG_PRINT_ROW
#ifdef __cplusplus
}
...
...
source/dnode/vnode/src/tsdb/tsdbRead.c
浏览文件 @
faa37667
...
...
@@ -351,35 +351,26 @@ static void setQueryTimewindow(STsdbReadHandle* pTsdbReadHandle, SQueryTableData
pTsdbReadHandle
->
window
.
ekey
,
pTsdbReadHandle
->
idStr
);
}
}
#if 1
int
nQUERY
=
0
;
#endif
static
STsdb
*
getTsdbByRetentions
(
SVnode
*
pVnode
,
STsdbReadHandle
*
pReadHandle
,
TSKEY
winSKey
,
SRetention
*
retentions
)
{
if
(
vnodeIsRollup
(
pVnode
))
{
int
level
=
0
;
#if 0
int64_t
now
=
taosGetTimestamp
(
pVnode
->
config
.
tsdbCfg
.
precision
);
for
(
int
i
=
0
;
i
<
TSDB_RETENTION_MAX
;
++
i
)
{
SRetention* pRetention = retentions + i;
if (pRetention->keep <= 0 || (now - pRetention->keep) >= winSKey) {
break;
}
++level;
SRetention
*
pRetention
=
retentions
+
level
;
if
(
pRetention
->
keep
<=
0
)
{
if
(
level
>
0
)
{
--
level
;
}
#endif
#if 1
switch
((
nQUERY
++
)
%
3
)
{
case
0
:
level
=
0
;
break
;
case
1
:
level
=
1
;
break
;
default:
level
=
2
;
}
if
((
now
-
pRetention
->
keep
)
<=
winSKey
)
{
break
;
}
#endif
++
level
;
}
if
(
level
==
TSDB_RETENTION_L0
)
{
tsdbDebug
(
"%p rsma level %d is selected to query
\n
"
,
pReadHandle
,
level
);
return
VND_RSMA0
(
pVnode
);
...
...
@@ -391,7 +382,7 @@ static STsdb* getTsdbByRetentions(SVnode* pVnode, STsdbReadHandle* pReadHandle,
return
VND_RSMA2
(
pVnode
);
}
}
return
pVnode
->
pTsdb
;
return
VND_TSDB
(
pVnode
)
;
}
static
STsdbReadHandle
*
tsdbQueryTablesImpl
(
SVnode
*
pVnode
,
SQueryTableDataCond
*
pCond
,
uint64_t
qId
,
uint64_t
taskId
)
{
...
...
source/libs/sync/src/syncRaftLog.c
浏览文件 @
faa37667
...
...
@@ -60,7 +60,7 @@ int32_t logStoreAppendEntry(SSyncLogStore* pLogStore, SSyncRaftEntry* pEntry) {
if
(
code
!=
0
)
{
int32_t
err
=
terrno
;
const
char
*
errStr
=
tstrerror
(
err
);
sError
(
"walWriteWithSyncInfo error, err:%d, msg:%s
"
,
err
,
errStr
);
sError
(
"walWriteWithSyncInfo error, err:%d, msg:%s
, linuxErr:%d, linuxErrMsg:%s"
,
err
,
errStr
,
errno
,
strerror
(
errno
)
);
ASSERT
(
0
);
}
//assert(code == 0);
...
...
@@ -79,7 +79,7 @@ SSyncRaftEntry* logStoreGetEntry(SSyncLogStore* pLogStore, SyncIndex index) {
if
(
code
!=
0
)
{
int32_t
err
=
terrno
;
const
char
*
errStr
=
tstrerror
(
err
);
sError
(
"walReadWithHandle error, err:%d, msg:%s
"
,
err
,
errStr
);
sError
(
"walReadWithHandle error, err:%d, msg:%s
, linuxErr:%d, linuxErrMsg:%s"
,
err
,
errStr
,
errno
,
strerror
(
errno
)
);
ASSERT
(
0
);
}
//assert(walReadWithHandle(pWalHandle, index) == 0);
...
...
@@ -108,7 +108,14 @@ SSyncRaftEntry* logStoreGetEntry(SSyncLogStore* pLogStore, SyncIndex index) {
int32_t
logStoreTruncate
(
SSyncLogStore
*
pLogStore
,
SyncIndex
fromIndex
)
{
SSyncLogStoreData
*
pData
=
pLogStore
->
data
;
SWal
*
pWal
=
pData
->
pWal
;
assert
(
walRollback
(
pWal
,
fromIndex
)
==
0
);
//assert(walRollback(pWal, fromIndex) == 0);
int32_t
code
=
walRollback
(
pWal
,
fromIndex
);
if
(
code
!=
0
)
{
int32_t
err
=
terrno
;
const
char
*
errStr
=
tstrerror
(
err
);
sError
(
"walRollback error, err:%d, msg:%s, linuxErr:%d, linuxErrMsg:%s"
,
err
,
errStr
,
errno
,
strerror
(
errno
));
ASSERT
(
0
);
}
return
0
;
// to avoid compiler error
}
...
...
@@ -132,7 +139,14 @@ SyncTerm logStoreLastTerm(SSyncLogStore* pLogStore) {
int32_t
logStoreUpdateCommitIndex
(
SSyncLogStore
*
pLogStore
,
SyncIndex
index
)
{
SSyncLogStoreData
*
pData
=
pLogStore
->
data
;
SWal
*
pWal
=
pData
->
pWal
;
assert
(
walCommit
(
pWal
,
index
)
==
0
);
//assert(walCommit(pWal, index) == 0);
int32_t
code
=
walCommit
(
pWal
,
index
);
if
(
code
!=
0
)
{
int32_t
err
=
terrno
;
const
char
*
errStr
=
tstrerror
(
err
);
sError
(
"walCommit error, err:%d, msg:%s, linuxErr:%d, linuxErrMsg:%s"
,
err
,
errStr
,
errno
,
strerror
(
errno
));
ASSERT
(
0
);
}
return
0
;
// to avoid compiler error
}
...
...
tests/system-test/1-insert/insertWithMoreVgroup.py
浏览文件 @
faa37667
...
...
@@ -199,7 +199,8 @@ class TDTestCase:
os
.
system
(
"%s -f %s -y "
%
(
taosBenchbin
,
jsonFile
))
return
def
taosBenchCreate
(
self
,
dbname
,
stbname
,
vgroups
,
threadNumbers
,
count
):
def
taosBenchCreate
(
self
,
host
,
dropdb
,
dbname
,
stbname
,
vgroups
,
threadNumbers
,
count
):
# count=50000
buildPath
=
self
.
getBuildPath
()
if
(
buildPath
==
""
):
...
...
@@ -207,20 +208,28 @@ class TDTestCase:
else
:
tdLog
.
info
(
"taosd found in %s"
%
buildPath
)
taosBenchbin
=
buildPath
+
"/build/bin/taosBenchmark"
buildPath
=
self
.
getBuildPath
()
config
=
buildPath
+
"../sim/dnode1/cfg/"
tsql
=
self
.
newcur
(
host
,
config
)
# insert: create one or mutiple tables per sql and insert multiple rows per sql
t
dS
ql
.
execute
(
"drop database if exists %s"
%
dbname
)
t
s
ql
.
execute
(
"drop database if exists %s"
%
dbname
)
tdSql
.
execute
(
"create database %s vgroups %d"
%
(
dbname
,
vgroups
))
tdSql
.
execute
(
"use %s"
%
dbname
)
tsql
.
execute
(
"create database %s vgroups %d"
%
(
dbname
,
vgroups
))
print
(
"db has been created"
)
# tsql.getResult("show databases")
# print(tdSql.queryResult)
tsql
.
execute
(
"use %s"
%
dbname
)
threads
=
[]
# threadNumbers=2
for
i
in
range
(
threadNumbers
):
jsonfile
=
"1-insert/Vgroups%d%d.json"
%
(
vgroups
,
i
)
os
.
system
(
"cp -f 1-insert/manyVgroups.json %s"
%
(
jsonfile
))
os
.
system
(
"sed -i 's/
\"
name
\"
:
\"
db
\"
,/
\"
name
\"
:
\"
%s%d
\"
,/g' %s"
%
(
dbname
,
i
,
jsonfile
))
os
.
system
(
"sed -i 's/
\"
childtable_count
\"
: 300000,/
\"
childtable_count
\"
: %d,/g' %s "
%
(
count
,
jsonfile
))
os
.
system
(
"sed -i 's/
\"
name
\"
:
\"
db
\"
,/
\"
name
\"
:
\"
%s
\"
,/g' %s"
%
(
dbname
,
jsonfile
))
os
.
system
(
"sed -i 's/
\"
drop
\"
:
\"
no
\"
,/
\"
drop
\"
:
\"
%s
\"
,/g' %s"
%
(
dropdb
,
jsonfile
))
os
.
system
(
"sed -i 's/
\"
host
\"
:
\"
127.0.0.1
\"
,/
\"
host
\"
:
\"
%s
\"
,/g' %s"
%
(
host
,
jsonfile
))
os
.
system
(
"sed -i 's/
\"
childtable_count
\"
: 10000,/
\"
childtable_count
\"
: %d,/g' %s "
%
(
count
,
jsonfile
))
os
.
system
(
"sed -i 's/
\"
name
\"
:
\"
stb1
\"
,/
\"
name
\"
:
\"
%s%d
\"
,/g' %s "
%
(
stbname
,
i
,
jsonfile
))
os
.
system
(
"sed -i 's/
\"
childtable_prefix
\"
:
\"
stb1_
\"
,/
\"
childtable_prefix
\"
:
\"
%s%d_
\"
,/g' %s "
%
(
stbname
,
i
,
jsonfile
))
threads
.
append
(
mp
.
Process
(
target
=
self
.
taosBench
,
args
=
(
"%s"
%
jsonfile
,)))
...
...
@@ -337,8 +346,11 @@ class TDTestCase:
return
def
test_case3
(
self
):
# self.taosBenchCreate("chenhaoran02","no","db1", "stb1", 1, 8, 1*10000)
self
.
taosBenchCreate
(
"chenhaoran02"
,
"no"
,
"db1"
,
"stb1"
,
1
,
8
,
1
*
1000
)
self
.
taosBenchCreate
(
"db1"
,
"stb1"
,
1
,
2
,
1
*
50000
)
# self.taosBenchCreate("db1", "stb1", 4, 5, 100*10000)
# self.taosBenchCreate("db1", "stb1", 1, 5, 100*10000)
return
...
...
tests/system-test/1-insert/manyVgroups.json
浏览文件 @
faa37667
{
"filetype"
:
"insert"
,
"cfgdir"
:
"/etc/taos/"
,
"host"
:
"
test216
"
,
"host"
:
"
127.0.0.1
"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
...
...
@@ -16,14 +16,14 @@
{
"dbinfo"
:
{
"name"
:
"db"
,
"drop"
:
"
yes
"
,
"drop"
:
"
no
"
,
"vgroups"
:
1
},
"super_tables"
:
[
{
"name"
:
"stb1"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
30
0000
,
"childtable_count"
:
1
0000
,
"childtable_prefix"
:
"stb1_"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
50000
,
...
...
tests/system-test/2-query/diff.py
浏览文件 @
faa37667
...
...
@@ -83,17 +83,20 @@ class TDTestCase:
tdSql
.
query
(
"select diff(col6) from stb_1"
)
tdSql
.
checkRows
(
0
)
tdSql
.
query
(
"select diff(col7) from stb_1"
)
tdSql
.
checkRows
(
0
)
for
i
in
range
(
self
.
rowNum
):
tdSql
.
execute
(
"insert into stb_1 values(%d, %d, %d, %d, %d, %f, %f, %d, 'taosdata%d', '涛思数据%d', %d, %d, %d, %d)"
%
(
self
.
ts
+
i
,
i
+
1
,
i
+
1
,
i
+
1
,
i
+
1
,
i
+
0.1
,
i
+
0.1
,
i
%
2
,
i
+
1
,
i
+
1
,
i
+
1
,
i
+
1
,
i
+
1
,
i
+
1
))
tdSql
.
error
(
"select diff(ts) from stb"
)
#
tdSql.error("select diff(ts) from stb")
tdSql
.
error
(
"select diff(ts) from stb_1"
)
tdSql
.
error
(
"select diff(col7) from stb"
)
tdSql
.
error
(
"select diff(col7) from stb_1"
)
tdSql
.
error
(
"select diff(col8) from stb"
)
#
tdSql.error("select diff(col7) from stb")
#
tdSql.error("select diff(col8) from stb")
tdSql
.
error
(
"select diff(col8) from stb_1"
)
tdSql
.
error
(
"select diff(col9) from stb"
)
#
tdSql.error("select diff(col9) from stb")
tdSql
.
error
(
"select diff(col9) from stb_1"
)
tdSql
.
error
(
"select diff(col11) from stb_1"
)
tdSql
.
error
(
"select diff(col12) from stb_1"
)
...
...
@@ -101,31 +104,12 @@ class TDTestCase:
tdSql
.
error
(
"select diff(col14) from stb_1"
)
tdSql
.
query
(
"select ts,diff(col1),ts from stb_1"
)
tdSql
.
checkRows
(
10
)
tdSql
.
checkData
(
0
,
0
,
"2018-09-17 09:00:00.000"
)
tdSql
.
checkData
(
0
,
1
,
"2018-09-17 09:00:00.000"
)
tdSql
.
checkData
(
0
,
3
,
"2018-09-17 09:00:00.000"
)
tdSql
.
checkData
(
9
,
0
,
"2018-09-17 09:00:00.009"
)
tdSql
.
checkData
(
9
,
1
,
"2018-09-17 09:00:00.009"
)
tdSql
.
checkData
(
9
,
3
,
"2018-09-17 09:00:00.009"
)
# tdSql.query("select ts,diff(col1),ts from stb group by tbname")
# tdSql.checkRows(10)
# tdSql.checkData(0, 0, "2018-09-17 09:00:00.000")
# tdSql.checkData(0, 1, "2018-09-17 09:00:00.000")
# tdSql.checkData(0, 3, "2018-09-17 09:00:00.000")
# tdSql.checkData(9, 0, "2018-09-17 09:00:00.009")
# tdSql.checkData(9, 1, "2018-09-17 09:00:00.009")
# tdSql.checkData(9, 3, "2018-09-17 09:00:00.009")
tdSql
.
query
(
"select ts,diff(col1),ts from stb_1"
)
tdSql
.
checkRows
(
10
)
tdSql
.
checkRows
(
11
)
tdSql
.
checkData
(
0
,
0
,
"2018-09-17 09:00:00.000"
)
tdSql
.
checkData
(
0
,
1
,
"2018-09-17 09:00:00.000"
)
tdSql
.
checkData
(
0
,
3
,
"2018-09-17 09:00:00.000"
)
tdSql
.
checkData
(
1
,
0
,
"2018-09-17 09:00:00.000"
)
tdSql
.
checkData
(
1
,
2
,
"2018-09-17 09:00:00.000"
)
tdSql
.
checkData
(
9
,
0
,
"2018-09-17 09:00:00.009"
)
tdSql
.
checkData
(
9
,
1
,
"2018-09-17 09:00:00.009"
)
tdSql
.
checkData
(
9
,
3
,
"2018-09-17 09:00:00.009"
)
tdSql
.
checkData
(
9
,
2
,
"2018-09-17 09:00:00.009"
)
# tdSql.query("select ts,diff(col1),ts from stb group by tbname")
# tdSql.checkRows(10)
...
...
@@ -154,15 +138,6 @@ class TDTestCase:
tdSql
.
query
(
"select diff(col6) from stb_1"
)
tdSql
.
checkRows
(
10
)
self
.
insertData
()
tdSql
.
query
(
"select diff(col) from st group by tbname"
)
tdSql
.
checkRows
(
185
)
tdSql
.
error
(
"select diff(col) from st group by dev"
)
tdSql
.
error
(
"select diff(col) from st group by col"
)
def
stop
(
self
):
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
...
...
tests/system-test/fulltest.sh
浏览文件 @
faa37667
...
...
@@ -49,3 +49,4 @@ python3 ./test.py -f 2-query/tan.py
python3 ./test.py
-f
2-query/arcsin.py
python3 ./test.py
-f
2-query/arccos.py
python3 ./test.py
-f
2-query/arctan.py
python3 ./test.py
-f
2-query/query_cols_tags_and_or.py
tests/system-test/insert.json
0 → 100644
浏览文件 @
faa37667
{
"filetype"
:
"insert"
,
"cfgdir"
:
"/etc/taos"
,
"host"
:
"127.0.0.1"
,
"port"
:
6030
,
"user"
:
"root"
,
"password"
:
"taosdata"
,
"thread_count"
:
16
,
"create_table_thread_count"
:
1
,
"result_file"
:
"./insert_res.txt"
,
"confirm_parameter_prompt"
:
"no"
,
"insert_interval"
:
0
,
"interlace_rows"
:
0
,
"num_of_records_per_req"
:
10000
,
"prepared_rand"
:
10000
,
"chinese"
:
"no"
,
"databases"
:
[
{
"dbinfo"
:
{
"name"
:
"db"
,
"drop"
:
"yes"
,
"vgroups"
:
4
,
"replica"
:
1
,
"precision"
:
"ms"
},
"super_tables"
:
[
{
"name"
:
"stb"
,
"child_table_exists"
:
"no"
,
"childtable_count"
:
1000
,
"childtable_prefix"
:
"stb_"
,
"escape_character"
:
"no"
,
"auto_create_table"
:
"no"
,
"batch_create_tbl_num"
:
10
,
"data_source"
:
"rand"
,
"insert_mode"
:
"taosc"
,
"non_stop_mode"
:
"no"
,
"line_protocol"
:
"line"
,
"insert_rows"
:
100000
,
"interlace_rows"
:
0
,
"insert_interval"
:
0
,
"disorder_ratio"
:
0
,
"timestamp_step"
:
1
,
"start_timestamp"
:
"2020-10-01 00:00:00.000"
,
"use_sample_ts"
:
"no"
,
"tags_file"
:
""
,
"columns"
:
[
{
"type"
:
"FLOAT"
,
"name"
:
"current"
,
"count"
:
4
,
"max"
:
12
,
"min"
:
8
},
{
"type"
:
"INT"
,
"name"
:
"voltage"
,
"max"
:
225
,
"min"
:
215
},
{
"type"
:
"FLOAT"
,
"name"
:
"phase"
,
"max"
:
1
,
"min"
:
0
}
],
"tags"
:
[
{
"type"
:
"TINYINT"
,
"name"
:
"groupid"
,
"max"
:
10
,
"min"
:
1
},
{
"name"
:
"location"
,
"type"
:
"BINARY"
,
"len"
:
16
,
"values"
:
[
"beijing"
,
"shanghai"
]
}
]
}
]
}
]
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录