Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
5708590b
T
TDengine
项目概览
taosdata
/
TDengine
大约 2 年 前同步成功
通知
1192
Star
22018
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看板
提交
5708590b
编写于
12月 25, 2020
作者:
H
Haojun Liao
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'develop' into feature/query
上级
001d28f2
9f4a8ba7
变更
135
展开全部
显示空白变更内容
内联
并排
Showing
135 changed file
with
3251 addition
and
1306 deletion
+3251
-1306
packaging/tools/post.sh
packaging/tools/post.sh
+7
-1
packaging/tools/preun.sh
packaging/tools/preun.sh
+1
-1
packaging/tools/set_core.sh
packaging/tools/set_core.sh
+24
-4
src/balance/src/bnMain.c
src/balance/src/bnMain.c
+2
-1
src/balance/src/bnThread.c
src/balance/src/bnThread.c
+5
-1
src/common/inc/tglobal.h
src/common/inc/tglobal.h
+2
-1
src/common/src/tglobal.c
src/common/src/tglobal.c
+14
-3
src/dnode/src/dnodeMain.c
src/dnode/src/dnodeMain.c
+1
-1
src/dnode/src/dnodeVRead.c
src/dnode/src/dnodeVRead.c
+3
-2
src/dnode/src/dnodeVWrite.c
src/dnode/src/dnodeVWrite.c
+1
-0
src/kit/taosdump/taosdump.c
src/kit/taosdump/taosdump.c
+3
-0
src/mnode/src/mnodeMnode.c
src/mnode/src/mnodeMnode.c
+23
-0
src/mnode/src/mnodeSdb.c
src/mnode/src/mnodeSdb.c
+2
-0
src/mnode/src/mnodeVgroup.c
src/mnode/src/mnodeVgroup.c
+3
-3
src/os/inc/osSocket.h
src/os/inc/osSocket.h
+1
-0
src/os/src/detail/osSocket.c
src/os/src/detail/osSocket.c
+4
-0
src/os/src/windows/wSocket.c
src/os/src/windows/wSocket.c
+1
-0
src/sync/inc/syncInt.h
src/sync/inc/syncInt.h
+11
-9
src/sync/inc/syncTcp.h
src/sync/inc/syncTcp.h
+3
-3
src/sync/src/syncArbitrator.c
src/sync/src/syncArbitrator.c
+7
-7
src/sync/src/syncMain.c
src/sync/src/syncMain.c
+215
-93
src/sync/src/syncRestore.c
src/sync/src/syncRestore.c
+25
-9
src/sync/src/syncRetrieve.c
src/sync/src/syncRetrieve.c
+9
-3
src/sync/src/syncTcp.c
src/sync/src/syncTcp.c
+5
-5
src/tsdb/src/tsdbCommit.c
src/tsdb/src/tsdbCommit.c
+5
-0
src/tsdb/src/tsdbMemTable.c
src/tsdb/src/tsdbMemTable.c
+13
-13
src/util/src/tsocket.c
src/util/src/tsocket.c
+12
-0
src/vnode/src/vnodeCfg.c
src/vnode/src/vnodeCfg.c
+3
-2
src/vnode/src/vnodeMgmt.c
src/vnode/src/vnodeMgmt.c
+4
-1
src/vnode/src/vnodeRead.c
src/vnode/src/vnodeRead.c
+9
-5
src/vnode/src/vnodeWrite.c
src/vnode/src/vnodeWrite.c
+1
-1
tests/Jenkinsfile
tests/Jenkinsfile
+41
-41
tests/pytest/concurrent_inquiry.py
tests/pytest/concurrent_inquiry.py
+6
-2
tests/pytest/crash_gen/crash_gen_main.py
tests/pytest/crash_gen/crash_gen_main.py
+11
-8
tests/pytest/crash_gen/db.py
tests/pytest/crash_gen/db.py
+9
-1
tests/pytest/crash_gen/misc.py
tests/pytest/crash_gen/misc.py
+2
-1
tests/pytest/crash_gen_bootstrap.py
tests/pytest/crash_gen_bootstrap.py
+1
-1
tests/pytest/handle_crash_gen_val_log.sh
tests/pytest/handle_crash_gen_val_log.sh
+4
-3
tests/pytest/import_merge/importCacheFileH.py
tests/pytest/import_merge/importCacheFileH.py
+1
-1
tests/pytest/import_merge/importCacheFileHO.py
tests/pytest/import_merge/importCacheFileHO.py
+1
-1
tests/pytest/import_merge/importCacheFileHPO.py
tests/pytest/import_merge/importCacheFileHPO.py
+1
-1
tests/pytest/import_merge/importCacheFileS.py
tests/pytest/import_merge/importCacheFileS.py
+1
-1
tests/pytest/import_merge/importCacheFileSub.py
tests/pytest/import_merge/importCacheFileSub.py
+1
-1
tests/pytest/import_merge/importCacheFileT.py
tests/pytest/import_merge/importCacheFileT.py
+1
-1
tests/pytest/import_merge/importCacheFileTO.py
tests/pytest/import_merge/importCacheFileTO.py
+1
-1
tests/pytest/import_merge/importCacheFileTPO.py
tests/pytest/import_merge/importCacheFileTPO.py
+1
-1
tests/pytest/import_merge/importDataH2.py
tests/pytest/import_merge/importDataH2.py
+1
-1
tests/pytest/import_merge/importDataHO.py
tests/pytest/import_merge/importDataHO.py
+1
-1
tests/pytest/import_merge/importDataHO2.py
tests/pytest/import_merge/importDataHO2.py
+1
-1
tests/pytest/import_merge/importDataHPO.py
tests/pytest/import_merge/importDataHPO.py
+1
-1
tests/pytest/import_merge/importDataLastH.py
tests/pytest/import_merge/importDataLastH.py
+1
-1
tests/pytest/import_merge/importDataLastHO.py
tests/pytest/import_merge/importDataLastHO.py
+1
-1
tests/pytest/import_merge/importDataLastHPO.py
tests/pytest/import_merge/importDataLastHPO.py
+1
-1
tests/pytest/import_merge/importDataLastS.py
tests/pytest/import_merge/importDataLastS.py
+1
-1
tests/pytest/import_merge/importDataLastSub.py
tests/pytest/import_merge/importDataLastSub.py
+3
-3
tests/pytest/import_merge/importDataLastT.py
tests/pytest/import_merge/importDataLastT.py
+1
-1
tests/pytest/import_merge/importDataLastTO.py
tests/pytest/import_merge/importDataLastTO.py
+1
-1
tests/pytest/import_merge/importDataLastTPO.py
tests/pytest/import_merge/importDataLastTPO.py
+1
-1
tests/pytest/import_merge/importDataS.py
tests/pytest/import_merge/importDataS.py
+1
-1
tests/pytest/import_merge/importDataSub.py
tests/pytest/import_merge/importDataSub.py
+1
-1
tests/pytest/import_merge/importDataT.py
tests/pytest/import_merge/importDataT.py
+1
-1
tests/pytest/import_merge/importDataTO.py
tests/pytest/import_merge/importDataTO.py
+1
-1
tests/pytest/import_merge/importDataTPO.py
tests/pytest/import_merge/importDataTPO.py
+2
-2
tests/pytest/import_merge/importHORestart.py
tests/pytest/import_merge/importHORestart.py
+1
-1
tests/pytest/import_merge/importHPORestart.py
tests/pytest/import_merge/importHPORestart.py
+1
-1
tests/pytest/import_merge/importHRestart.py
tests/pytest/import_merge/importHRestart.py
+1
-1
tests/pytest/import_merge/importInsertThenImport.py
tests/pytest/import_merge/importInsertThenImport.py
+1
-1
tests/pytest/import_merge/importLastH.py
tests/pytest/import_merge/importLastH.py
+1
-1
tests/pytest/import_merge/importLastHO.py
tests/pytest/import_merge/importLastHO.py
+1
-1
tests/pytest/import_merge/importLastHPO.py
tests/pytest/import_merge/importLastHPO.py
+1
-1
tests/pytest/import_merge/importLastS.py
tests/pytest/import_merge/importLastS.py
+1
-1
tests/pytest/import_merge/importLastSub.py
tests/pytest/import_merge/importLastSub.py
+1
-1
tests/pytest/import_merge/importLastT.py
tests/pytest/import_merge/importLastT.py
+1
-1
tests/pytest/import_merge/importLastTO.py
tests/pytest/import_merge/importLastTO.py
+1
-1
tests/pytest/import_merge/importLastTPO.py
tests/pytest/import_merge/importLastTPO.py
+1
-1
tests/pytest/import_merge/importSRestart.py
tests/pytest/import_merge/importSRestart.py
+1
-1
tests/pytest/import_merge/importSubRestart.py
tests/pytest/import_merge/importSubRestart.py
+1
-1
tests/pytest/import_merge/importTORestart.py
tests/pytest/import_merge/importTORestart.py
+1
-1
tests/pytest/import_merge/importTPORestart.py
tests/pytest/import_merge/importTPORestart.py
+1
-1
tests/pytest/import_merge/importTRestart.py
tests/pytest/import_merge/importTRestart.py
+1
-1
tests/pytest/query/query.py
tests/pytest/query/query.py
+20
-1
tests/pytest/table/alter_wal0.py
tests/pytest/table/alter_wal0.py
+4
-3
tests/script/general/db/alter_tables_d2.sim
tests/script/general/db/alter_tables_d2.sim
+98
-18
tests/script/general/db/alter_tables_v1.sim
tests/script/general/db/alter_tables_v1.sim
+91
-16
tests/script/general/db/alter_tables_v4.sim
tests/script/general/db/alter_tables_v4.sim
+78
-13
tests/script/general/db/delete_reusevnode.sim
tests/script/general/db/delete_reusevnode.sim
+0
-2
tests/script/general/db/delete_writing1.sim
tests/script/general/db/delete_writing1.sim
+0
-1
tests/script/general/table/delete_writing.sim
tests/script/general/table/delete_writing.sim
+0
-2
tests/script/general/wal/sync.sim
tests/script/general/wal/sync.sim
+30
-9
tests/script/jenkins/basic.txt
tests/script/jenkins/basic.txt
+1
-0
tests/script/jenkins/basic_3.txt
tests/script/jenkins/basic_3.txt
+32
-34
tests/script/jenkins/unique.txt
tests/script/jenkins/unique.txt
+2
-0
tests/script/sh/deploy.sh
tests/script/sh/deploy.sh
+2
-0
tests/script/unique/arbitrator/dn3_mn1_r3_vnode_delDir.sim
tests/script/unique/arbitrator/dn3_mn1_r3_vnode_delDir.sim
+4
-2
tests/script/unique/arbitrator/dn3_mn1_replica_change.sim
tests/script/unique/arbitrator/dn3_mn1_replica_change.sim
+160
-327
tests/script/unique/arbitrator/dn3_mn1_replica_change_dropDnod.sim
...ipt/unique/arbitrator/dn3_mn1_replica_change_dropDnod.sim
+8
-0
tests/script/unique/arbitrator/dn3_mn1_vnode_nomaster.sim
tests/script/unique/arbitrator/dn3_mn1_vnode_nomaster.sim
+5
-3
tests/script/unique/arbitrator/sync_replica3_alterTable_add.sim
...script/unique/arbitrator/sync_replica3_alterTable_add.sim
+3
-9
tests/script/unique/arbitrator/sync_replica_alterTable_background_add.sim
...que/arbitrator/sync_replica_alterTable_background_add.sim
+3
-0
tests/script/unique/big/balance.sim
tests/script/unique/big/balance.sim
+33
-22
tests/script/unique/big/tcp.sim
tests/script/unique/big/tcp.sim
+2
-3
tests/script/unique/cluster/balance1.sim
tests/script/unique/cluster/balance1.sim
+48
-23
tests/script/unique/cluster/balance2.sim
tests/script/unique/cluster/balance2.sim
+47
-15
tests/script/unique/cluster/balance3.sim
tests/script/unique/cluster/balance3.sim
+142
-92
tests/script/unique/cluster/vgroup100.sim
tests/script/unique/cluster/vgroup100.sim
+0
-5
tests/script/unique/db/delete.sim
tests/script/unique/db/delete.sim
+0
-5
tests/script/unique/db/delete_part.sim
tests/script/unique/db/delete_part.sim
+34
-17
tests/script/unique/db/replica_add12.sim
tests/script/unique/db/replica_add12.sim
+155
-48
tests/script/unique/db/replica_add13.sim
tests/script/unique/db/replica_add13.sim
+171
-27
tests/script/unique/db/replica_add23.sim
tests/script/unique/db/replica_add23.sim
+171
-27
tests/script/unique/db/replica_part.sim
tests/script/unique/db/replica_part.sim
+181
-31
tests/script/unique/db/replica_reduce21.sim
tests/script/unique/db/replica_reduce21.sim
+49
-16
tests/script/unique/db/replica_reduce31.sim
tests/script/unique/db/replica_reduce31.sim
+116
-21
tests/script/unique/db/replica_reduce32.sim
tests/script/unique/db/replica_reduce32.sim
+164
-28
tests/script/unique/dnode/balance1.sim
tests/script/unique/dnode/balance1.sim
+7
-9
tests/script/unique/dnode/balance2.sim
tests/script/unique/dnode/balance2.sim
+30
-11
tests/script/unique/dnode/balance3.sim
tests/script/unique/dnode/balance3.sim
+36
-14
tests/script/unique/dnode/offline3.sim
tests/script/unique/dnode/offline3.sim
+111
-0
tests/script/unique/dnode/reason.sim
tests/script/unique/dnode/reason.sim
+91
-20
tests/script/unique/dnode/remove1.sim
tests/script/unique/dnode/remove1.sim
+26
-10
tests/script/unique/dnode/remove2.sim
tests/script/unique/dnode/remove2.sim
+30
-7
tests/script/unique/dnode/vnode_clean.sim
tests/script/unique/dnode/vnode_clean.sim
+12
-14
tests/script/unique/import/replica2.sim
tests/script/unique/import/replica2.sim
+78
-10
tests/script/unique/import/replica3.sim
tests/script/unique/import/replica3.sim
+63
-7
tests/script/unique/mnode/mgmt20.sim
tests/script/unique/mnode/mgmt20.sim
+2
-3
tests/script/unique/mnode/mgmt22.sim
tests/script/unique/mnode/mgmt22.sim
+6
-8
tests/script/unique/mnode/mgmt23.sim
tests/script/unique/mnode/mgmt23.sim
+25
-16
tests/script/unique/mnode/mgmt33.sim
tests/script/unique/mnode/mgmt33.sim
+64
-26
tests/script/unique/mnode/mgmt34.sim
tests/script/unique/mnode/mgmt34.sim
+74
-35
tests/script/unique/mnode/mgmtr2.sim
tests/script/unique/mnode/mgmtr2.sim
+12
-9
tests/script/unique/vnode/many.sim
tests/script/unique/vnode/many.sim
+31
-1
tests/script/unique/vnode/replica2_repeat.sim
tests/script/unique/vnode/replica2_repeat.sim
+33
-2
tests/script/unique/vnode/replica3_basic.sim
tests/script/unique/vnode/replica3_basic.sim
+82
-8
tests/script/unique/vnode/replica3_repeat.sim
tests/script/unique/vnode/replica3_repeat.sim
+37
-2
tests/test-all.sh
tests/test-all.sh
+9
-3
未找到文件。
packaging/tools/post.sh
浏览文件 @
5708590b
...
@@ -266,8 +266,14 @@ function install_config() {
...
@@ -266,8 +266,14 @@ function install_config() {
${
csudo
}
chmod
644
${
cfg_install_dir
}
/
*
${
csudo
}
chmod
644
${
cfg_install_dir
}
/
*
fi
fi
# Save standard input to 6 and open / dev / TTY on standard input
exec
6<&0 0</dev/tty
local_fqdn_check
local_fqdn_check
# restore the backup standard input, and turn off 6
exec
0<&6 6<&-
${
csudo
}
mv
${
cfg_dir
}
/taos.cfg
${
cfg_dir
}
/taos.cfg.org
${
csudo
}
mv
${
cfg_dir
}
/taos.cfg
${
cfg_dir
}
/taos.cfg.org
${
csudo
}
ln
-s
${
cfg_install_dir
}
/taos.cfg
${
cfg_dir
}
${
csudo
}
ln
-s
${
cfg_install_dir
}
/taos.cfg
${
cfg_dir
}
#FQDN_FORMAT="(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"
#FQDN_FORMAT="(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"
...
@@ -422,7 +428,7 @@ function install_service() {
...
@@ -422,7 +428,7 @@ function install_service() {
}
}
function
install_TDengine
()
{
function
install_TDengine
()
{
echo
-e
"
${
GREEN
}
Start to install TD
E
ngine...
${
NC
}
"
echo
-e
"
${
GREEN
}
Start to install TD
e
ngine...
${
NC
}
"
#install log and data dir , then ln to /usr/local/taos
#install log and data dir , then ln to /usr/local/taos
${
csudo
}
mkdir
-p
${
log_dir
}
&&
${
csudo
}
chmod
777
${
log_dir
}
${
csudo
}
mkdir
-p
${
log_dir
}
&&
${
csudo
}
chmod
777
${
log_dir
}
...
...
packaging/tools/preun.sh
浏览文件 @
5708590b
...
@@ -119,4 +119,4 @@ if ((${service_mod}==2)); then
...
@@ -119,4 +119,4 @@ if ((${service_mod}==2)); then
kill_taosd
kill_taosd
fi
fi
echo
-e
"
${
GREEN
}
TD
E
ngine is removed successfully!
${
NC
}
"
echo
-e
"
${
GREEN
}
TD
e
ngine is removed successfully!
${
NC
}
"
packaging/tools/set_core.sh
浏览文件 @
5708590b
...
@@ -2,19 +2,39 @@
...
@@ -2,19 +2,39 @@
#
#
# This file is used to set config for core when taosd crash
# This file is used to set config for core when taosd crash
# Color setting
RED
=
'\033[0;31m'
GREEN
=
'\033[1;32m'
GREEN_DARK
=
'\033[0;32m'
GREEN_UNDERLINE
=
'\033[4;32m'
NC
=
'\033[0m'
set
-e
set
-e
# set -x
# set -x
corePath
=
$1
csudo
=
""
csudo
=
""
if
command
-v
sudo
>
/dev/null
;
then
if
command
-v
sudo
>
/dev/null
;
then
csudo
=
"sudo"
csudo
=
"sudo"
fi
fi
#ulimit -c unlimited
if
[[
!
-n
${
corePath
}
]]
;
then
echo
-e
-n
"
${
GREEN
}
Please enter a file directory to save the coredump file
${
NC
}
:"
read
corePath
while
true
;
do
if
[[
!
-z
"
$corePath
"
]]
;
then
break
else
read
-p
"Please enter a file directory to save the coredump file:"
corePath
fi
done
fi
ulimit
-c
unlimited
${
csudo
}
sed
-i
'/ulimit -c unlimited/d'
/etc/profile
||
:
${
csudo
}
sed
-i
'/ulimit -c unlimited/d'
/etc/profile
||
:
${
csudo
}
sed
-i
'$a\ulimit -c unlimited'
/etc/profile
||
:
${
csudo
}
sed
-i
'$a\ulimit -c unlimited'
/etc/profile
||
:
source
/etc/profile
source
/etc/profile
${
csudo
}
mkdir
-p
/coredump
||
:
${
csudo
}
mkdir
-p
${
corePath
}
||
:
${
csudo
}
sysctl
-w
kernel.core_pattern
=
'/coredump/core-%e-%p'
||
:
${
csudo
}
sysctl
-w
kernel.core_pattern
=
${
corePath
}
/core-%e-%p
||
:
${
csudo
}
echo
'/coredump/core-%e-%p'
|
${
csudo
}
tee
/proc/sys/kernel/core_pattern
||
:
${
csudo
}
echo
"
${
corePath
}
/core-%e-%p"
|
${
csudo
}
tee
/proc/sys/kernel/core_pattern
||
:
src/balance/src/bnMain.c
浏览文件 @
5708590b
...
@@ -330,7 +330,7 @@ void bnReset() {
...
@@ -330,7 +330,7 @@ void bnReset() {
tsAccessSquence
=
0
;
tsAccessSquence
=
0
;
}
}
static
int32_t
bnMonitorVgroups
()
{
static
bool
bnMonitorVgroups
()
{
void
*
pIter
=
NULL
;
void
*
pIter
=
NULL
;
SVgObj
*
pVgroup
=
NULL
;
SVgObj
*
pVgroup
=
NULL
;
bool
hasUpdatingVgroup
=
false
;
bool
hasUpdatingVgroup
=
false
;
...
@@ -489,6 +489,7 @@ void bnCheckStatus() {
...
@@ -489,6 +489,7 @@ void bnCheckStatus() {
mInfo
(
"dnode:%d, set to offline state, access seq:%d last seq:%d laststat:%d"
,
pDnode
->
dnodeId
,
tsAccessSquence
,
mInfo
(
"dnode:%d, set to offline state, access seq:%d last seq:%d laststat:%d"
,
pDnode
->
dnodeId
,
tsAccessSquence
,
pDnode
->
lastAccess
,
pDnode
->
status
);
pDnode
->
lastAccess
,
pDnode
->
status
);
bnSetVgroupOffline
(
pDnode
);
bnSetVgroupOffline
(
pDnode
);
bnStartTimer
(
3000
);
}
}
}
}
mnodeDecDnodeRef
(
pDnode
);
mnodeDecDnodeRef
(
pDnode
);
...
...
src/balance/src/bnThread.c
浏览文件 @
5708590b
...
@@ -31,7 +31,10 @@ static void *bnThreadFunc(void *arg) {
...
@@ -31,7 +31,10 @@ static void *bnThreadFunc(void *arg) {
}
}
pthread_cond_wait
(
&
tsBnThread
.
cond
,
&
tsBnThread
.
mutex
);
pthread_cond_wait
(
&
tsBnThread
.
cond
,
&
tsBnThread
.
mutex
);
mDebug
(
"balance thread wakes up to work"
);
bool
updateSoon
=
bnStart
();
bool
updateSoon
=
bnStart
();
mDebug
(
"balance thread finished this poll, updateSoon:%d"
,
updateSoon
);
bnStartTimer
(
updateSoon
?
1000
:
-
1
);
bnStartTimer
(
updateSoon
?
1000
:
-
1
);
pthread_mutex_unlock
(
&
(
tsBnThread
.
mutex
));
pthread_mutex_unlock
(
&
(
tsBnThread
.
mutex
));
}
}
...
@@ -101,8 +104,8 @@ static void bnProcessTimer(void *handle, void *tmrId) {
...
@@ -101,8 +104,8 @@ static void bnProcessTimer(void *handle, void *tmrId) {
tsBnThread
.
timer
=
NULL
;
tsBnThread
.
timer
=
NULL
;
tsAccessSquence
++
;
tsAccessSquence
++
;
bnCheckStatus
();
bnStartTimer
(
-
1
);
bnStartTimer
(
-
1
);
bnCheckStatus
();
if
(
handle
==
NULL
)
{
if
(
handle
==
NULL
)
{
if
(
tsAccessSquence
%
tsBalanceInterval
==
0
)
{
if
(
tsAccessSquence
%
tsBalanceInterval
==
0
)
{
...
@@ -121,6 +124,7 @@ void bnStartTimer(int64_t mseconds) {
...
@@ -121,6 +124,7 @@ void bnStartTimer(int64_t mseconds) {
bool
updateSoon
=
(
mseconds
!=
-
1
);
bool
updateSoon
=
(
mseconds
!=
-
1
);
if
(
updateSoon
)
{
if
(
updateSoon
)
{
mTrace
(
"balance function will be called after %"
PRId64
" ms"
,
mseconds
);
taosTmrReset
(
bnProcessTimer
,
mseconds
,
(
void
*
)
mseconds
,
tsMnodeTmr
,
&
tsBnThread
.
timer
);
taosTmrReset
(
bnProcessTimer
,
mseconds
,
(
void
*
)
mseconds
,
tsMnodeTmr
,
&
tsBnThread
.
timer
);
}
else
{
}
else
{
taosTmrReset
(
bnProcessTimer
,
tsStatusInterval
*
1000
,
NULL
,
tsMnodeTmr
,
&
tsBnThread
.
timer
);
taosTmrReset
(
bnProcessTimer
,
tsStatusInterval
*
1000
,
NULL
,
tsMnodeTmr
,
&
tsBnThread
.
timer
);
...
...
src/common/inc/tglobal.h
浏览文件 @
5708590b
...
@@ -101,7 +101,8 @@ extern int32_t tsAlternativeRole;
...
@@ -101,7 +101,8 @@ extern int32_t tsAlternativeRole;
extern
int32_t
tsBalanceInterval
;
extern
int32_t
tsBalanceInterval
;
extern
int32_t
tsOfflineThreshold
;
extern
int32_t
tsOfflineThreshold
;
extern
int32_t
tsMnodeEqualVnodeNum
;
extern
int32_t
tsMnodeEqualVnodeNum
;
extern
int32_t
tsFlowCtrl
;
extern
int32_t
tsEnableFlowCtrl
;
extern
int32_t
tsEnableSlaveQuery
;
// restful
// restful
extern
int32_t
tsEnableHttpModule
;
extern
int32_t
tsEnableHttpModule
;
...
...
src/common/src/tglobal.c
浏览文件 @
5708590b
...
@@ -138,7 +138,8 @@ int32_t tsAlternativeRole = 0;
...
@@ -138,7 +138,8 @@ int32_t tsAlternativeRole = 0;
int32_t
tsBalanceInterval
=
300
;
// seconds
int32_t
tsBalanceInterval
=
300
;
// seconds
int32_t
tsOfflineThreshold
=
86400
*
100
;
// seconds 10days
int32_t
tsOfflineThreshold
=
86400
*
100
;
// seconds 10days
int32_t
tsMnodeEqualVnodeNum
=
4
;
int32_t
tsMnodeEqualVnodeNum
=
4
;
int32_t
tsFlowCtrl
=
1
;
int32_t
tsEnableFlowCtrl
=
1
;
int32_t
tsEnableSlaveQuery
=
1
;
// restful
// restful
int32_t
tsEnableHttpModule
=
1
;
int32_t
tsEnableHttpModule
=
1
;
...
@@ -542,7 +543,7 @@ static void doInitGlobalConfig(void) {
...
@@ -542,7 +543,7 @@ static void doInitGlobalConfig(void) {
cfg
.
ptr
=
&
tsOfflineThreshold
;
cfg
.
ptr
=
&
tsOfflineThreshold
;
cfg
.
valType
=
TAOS_CFG_VTYPE_INT32
;
cfg
.
valType
=
TAOS_CFG_VTYPE_INT32
;
cfg
.
cfgType
=
TSDB_CFG_CTYPE_B_CONFIG
|
TSDB_CFG_CTYPE_B_SHOW
;
cfg
.
cfgType
=
TSDB_CFG_CTYPE_B_CONFIG
|
TSDB_CFG_CTYPE_B_SHOW
;
cfg
.
minValue
=
5
;
cfg
.
minValue
=
3
;
cfg
.
maxValue
=
7200000
;
cfg
.
maxValue
=
7200000
;
cfg
.
ptrLength
=
0
;
cfg
.
ptrLength
=
0
;
cfg
.
unitType
=
TAOS_CFG_UTYPE_SECOND
;
cfg
.
unitType
=
TAOS_CFG_UTYPE_SECOND
;
...
@@ -1004,7 +1005,17 @@ static void doInitGlobalConfig(void) {
...
@@ -1004,7 +1005,17 @@ static void doInitGlobalConfig(void) {
// module configs
// module configs
cfg
.
option
=
"flowctrl"
;
cfg
.
option
=
"flowctrl"
;
cfg
.
ptr
=
&
tsFlowCtrl
;
cfg
.
ptr
=
&
tsEnableFlowCtrl
;
cfg
.
valType
=
TAOS_CFG_VTYPE_INT32
;
cfg
.
cfgType
=
TSDB_CFG_CTYPE_B_CONFIG
|
TSDB_CFG_CTYPE_B_SHOW
;
cfg
.
minValue
=
0
;
cfg
.
maxValue
=
1
;
cfg
.
ptrLength
=
0
;
cfg
.
unitType
=
TAOS_CFG_UTYPE_NONE
;
taosInitConfigOption
(
cfg
);
cfg
.
option
=
"slaveQuery"
;
cfg
.
ptr
=
&
tsEnableSlaveQuery
;
cfg
.
valType
=
TAOS_CFG_VTYPE_INT32
;
cfg
.
valType
=
TAOS_CFG_VTYPE_INT32
;
cfg
.
cfgType
=
TSDB_CFG_CTYPE_B_CONFIG
|
TSDB_CFG_CTYPE_B_SHOW
;
cfg
.
cfgType
=
TSDB_CFG_CTYPE_B_CONFIG
|
TSDB_CFG_CTYPE_B_SHOW
;
cfg
.
minValue
=
0
;
cfg
.
minValue
=
0
;
...
...
src/dnode/src/dnodeMain.c
浏览文件 @
5708590b
...
@@ -113,6 +113,7 @@ static void dnodeCleanupTmr() {
...
@@ -113,6 +113,7 @@ static void dnodeCleanupTmr() {
int32_t
dnodeInitSystem
()
{
int32_t
dnodeInitSystem
()
{
dnodeSetRunStatus
(
TSDB_RUN_STATUS_INITIALIZE
);
dnodeSetRunStatus
(
TSDB_RUN_STATUS_INITIALIZE
);
tscEmbedded
=
1
;
tscEmbedded
=
1
;
taosIgnSIGPIPE
();
taosBlockSIGPIPE
();
taosBlockSIGPIPE
();
taosResolveCRC
();
taosResolveCRC
();
taosInitGlobalCfg
();
taosInitGlobalCfg
();
...
@@ -120,7 +121,6 @@ int32_t dnodeInitSystem() {
...
@@ -120,7 +121,6 @@ int32_t dnodeInitSystem() {
taosSetCoreDump
();
taosSetCoreDump
();
taosInitNotes
();
taosInitNotes
();
dnodeInitTmr
();
dnodeInitTmr
();
signal
(
SIGPIPE
,
SIG_IGN
);
if
(
dnodeCreateDir
(
tsLogDir
)
<
0
)
{
if
(
dnodeCreateDir
(
tsLogDir
)
<
0
)
{
printf
(
"failed to create dir: %s, reason: %s
\n
"
,
tsLogDir
,
strerror
(
errno
));
printf
(
"failed to create dir: %s, reason: %s
\n
"
,
tsLogDir
,
strerror
(
errno
));
...
...
src/dnode/src/dnodeVRead.c
浏览文件 @
5708590b
...
@@ -54,6 +54,7 @@ void dnodeCleanupVRead() {
...
@@ -54,6 +54,7 @@ void dnodeCleanupVRead() {
void
dnodeDispatchToVReadQueue
(
SRpcMsg
*
pMsg
)
{
void
dnodeDispatchToVReadQueue
(
SRpcMsg
*
pMsg
)
{
int32_t
queuedMsgNum
=
0
;
int32_t
queuedMsgNum
=
0
;
int32_t
leftLen
=
pMsg
->
contLen
;
int32_t
leftLen
=
pMsg
->
contLen
;
int32_t
code
=
TSDB_CODE_VND_INVALID_VGROUP_ID
;
char
*
pCont
=
pMsg
->
pCont
;
char
*
pCont
=
pMsg
->
pCont
;
while
(
leftLen
>
0
)
{
while
(
leftLen
>
0
)
{
...
@@ -64,7 +65,7 @@ void dnodeDispatchToVReadQueue(SRpcMsg *pMsg) {
...
@@ -64,7 +65,7 @@ void dnodeDispatchToVReadQueue(SRpcMsg *pMsg) {
assert
(
pHead
->
contLen
>
0
);
assert
(
pHead
->
contLen
>
0
);
void
*
pVnode
=
vnodeAcquire
(
pHead
->
vgId
);
void
*
pVnode
=
vnodeAcquire
(
pHead
->
vgId
);
if
(
pVnode
!=
NULL
)
{
if
(
pVnode
!=
NULL
)
{
int32_t
code
=
vnodeWriteToRQueue
(
pVnode
,
pCont
,
pHead
->
contLen
,
TAOS_QTYPE_RPC
,
pMsg
);
code
=
vnodeWriteToRQueue
(
pVnode
,
pCont
,
pHead
->
contLen
,
TAOS_QTYPE_RPC
,
pMsg
);
if
(
code
==
TSDB_CODE_SUCCESS
)
queuedMsgNum
++
;
if
(
code
==
TSDB_CODE_SUCCESS
)
queuedMsgNum
++
;
vnodeRelease
(
pVnode
);
vnodeRelease
(
pVnode
);
}
}
...
@@ -74,7 +75,7 @@ void dnodeDispatchToVReadQueue(SRpcMsg *pMsg) {
...
@@ -74,7 +75,7 @@ void dnodeDispatchToVReadQueue(SRpcMsg *pMsg) {
}
}
if
(
queuedMsgNum
==
0
)
{
if
(
queuedMsgNum
==
0
)
{
SRpcMsg
rpcRsp
=
{.
handle
=
pMsg
->
handle
,
.
code
=
TSDB_CODE_VND_INVALID_VGROUP_ID
};
SRpcMsg
rpcRsp
=
{.
handle
=
pMsg
->
handle
,
.
code
=
code
};
rpcSendResponse
(
&
rpcRsp
);
rpcSendResponse
(
&
rpcRsp
);
}
}
...
...
src/dnode/src/dnodeVWrite.c
浏览文件 @
5708590b
...
@@ -188,6 +188,7 @@ static void *dnodeProcessVWriteQueue(void *wparam) {
...
@@ -188,6 +188,7 @@ static void *dnodeProcessVWriteQueue(void *wparam) {
int32_t
numOfMsgs
;
int32_t
numOfMsgs
;
int32_t
qtype
;
int32_t
qtype
;
taosBlockSIGPIPE
();
dDebug
(
"dnode vwrite worker:%d is running"
,
pWorker
->
workerId
);
dDebug
(
"dnode vwrite worker:%d is running"
,
pWorker
->
workerId
);
while
(
1
)
{
while
(
1
)
{
...
...
src/kit/taosdump/taosdump.c
浏览文件 @
5708590b
...
@@ -332,6 +332,9 @@ static error_t parse_opt(int key, char *arg, struct argp_state *state) {
...
@@ -332,6 +332,9 @@ static error_t parse_opt(int key, char *arg, struct argp_state *state) {
break
;
break
;
case
'N'
:
case
'N'
:
arguments
->
data_batch
=
atoi
(
arg
);
arguments
->
data_batch
=
atoi
(
arg
);
if
(
arguments
->
data_batch
>=
INT16_MAX
)
{
arguments
->
data_batch
=
INT16_MAX
-
1
;
}
break
;
break
;
case
'L'
:
case
'L'
:
{
{
...
...
src/mnode/src/mnodeMnode.c
浏览文件 @
5708590b
...
@@ -377,6 +377,24 @@ static int32_t mnodeCreateMnodeCb(SMnodeMsg *pMsg, int32_t code) {
...
@@ -377,6 +377,24 @@ static int32_t mnodeCreateMnodeCb(SMnodeMsg *pMsg, int32_t code) {
return
code
;
return
code
;
}
}
static
bool
mnodeAllOnline
()
{
void
*
pIter
=
NULL
;
bool
allOnline
=
true
;
while
(
1
)
{
SMnodeObj
*
pMnode
=
NULL
;
pIter
=
mnodeGetNextMnode
(
pIter
,
&
pMnode
);
if
(
pMnode
==
NULL
)
break
;
if
(
pMnode
->
role
!=
TAOS_SYNC_ROLE_MASTER
&&
pMnode
->
role
!=
TAOS_SYNC_ROLE_SLAVE
)
{
allOnline
=
false
;
mnodeDecMnodeRef
(
pMnode
);
}
}
mnodeCancelGetNextMnode
(
pIter
);
return
allOnline
;
}
void
mnodeCreateMnode
(
int32_t
dnodeId
,
char
*
dnodeEp
,
bool
needConfirm
)
{
void
mnodeCreateMnode
(
int32_t
dnodeId
,
char
*
dnodeEp
,
bool
needConfirm
)
{
SMnodeObj
*
pMnode
=
calloc
(
1
,
sizeof
(
SMnodeObj
));
SMnodeObj
*
pMnode
=
calloc
(
1
,
sizeof
(
SMnodeObj
));
pMnode
->
mnodeId
=
dnodeId
;
pMnode
->
mnodeId
=
dnodeId
;
...
@@ -389,6 +407,11 @@ void mnodeCreateMnode(int32_t dnodeId, char *dnodeEp, bool needConfirm) {
...
@@ -389,6 +407,11 @@ void mnodeCreateMnode(int32_t dnodeId, char *dnodeEp, bool needConfirm) {
.
fpRsp
=
mnodeCreateMnodeCb
.
fpRsp
=
mnodeCreateMnodeCb
};
};
if
(
needConfirm
&&
!
mnodeAllOnline
())
{
mDebug
(
"wait all mnode online then create new mnode"
);
return
;
}
int32_t
code
=
TSDB_CODE_SUCCESS
;
int32_t
code
=
TSDB_CODE_SUCCESS
;
if
(
needConfirm
)
{
if
(
needConfirm
)
{
code
=
mnodeSendCreateMnodeMsg
(
dnodeId
,
dnodeEp
);
code
=
mnodeSendCreateMnodeMsg
(
dnodeId
,
dnodeEp
);
...
...
src/mnode/src/mnodeSdb.c
浏览文件 @
5708590b
...
@@ -1081,6 +1081,8 @@ static void *sdbWorkerFp(void *pWorker) {
...
@@ -1081,6 +1081,8 @@ static void *sdbWorkerFp(void *pWorker) {
int32_t
qtype
;
int32_t
qtype
;
void
*
unUsed
;
void
*
unUsed
;
taosBlockSIGPIPE
();
while
(
1
)
{
while
(
1
)
{
int32_t
numOfMsgs
=
taosReadAllQitemsFromQset
(
tsSdbWQset
,
tsSdbWQall
,
&
unUsed
);
int32_t
numOfMsgs
=
taosReadAllQitemsFromQset
(
tsSdbWQset
,
tsSdbWQall
,
&
unUsed
);
if
(
numOfMsgs
==
0
)
{
if
(
numOfMsgs
==
0
)
{
...
...
src/mnode/src/mnodeVgroup.c
浏览文件 @
5708590b
...
@@ -659,7 +659,7 @@ static int32_t mnodeGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *p
...
@@ -659,7 +659,7 @@ static int32_t mnodeGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *p
pShow
->
bytes
[
cols
]
=
4
;
pShow
->
bytes
[
cols
]
=
4
;
pSchema
[
cols
].
type
=
TSDB_DATA_TYPE_INT
;
pSchema
[
cols
].
type
=
TSDB_DATA_TYPE_INT
;
strcpy
(
pSchema
[
cols
].
name
,
"online
Vnode
s"
);
strcpy
(
pSchema
[
cols
].
name
,
"onlines"
);
pSchema
[
cols
].
bytes
=
htons
(
pShow
->
bytes
[
cols
]);
pSchema
[
cols
].
bytes
=
htons
(
pShow
->
bytes
[
cols
]);
cols
++
;
cols
++
;
...
@@ -674,13 +674,13 @@ static int32_t mnodeGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *p
...
@@ -674,13 +674,13 @@ static int32_t mnodeGetVgroupMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *p
for
(
int32_t
i
=
0
;
i
<
pShow
->
maxReplica
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
pShow
->
maxReplica
;
++
i
)
{
pShow
->
bytes
[
cols
]
=
2
;
pShow
->
bytes
[
cols
]
=
2
;
pSchema
[
cols
].
type
=
TSDB_DATA_TYPE_SMALLINT
;
pSchema
[
cols
].
type
=
TSDB_DATA_TYPE_SMALLINT
;
snprintf
(
pSchema
[
cols
].
name
,
TSDB_COL_NAME_LEN
,
"v%d
D
node"
,
i
+
1
);
snprintf
(
pSchema
[
cols
].
name
,
TSDB_COL_NAME_LEN
,
"v%d
_d
node"
,
i
+
1
);
pSchema
[
cols
].
bytes
=
htons
(
pShow
->
bytes
[
cols
]);
pSchema
[
cols
].
bytes
=
htons
(
pShow
->
bytes
[
cols
]);
cols
++
;
cols
++
;
pShow
->
bytes
[
cols
]
=
9
+
VARSTR_HEADER_SIZE
;
pShow
->
bytes
[
cols
]
=
9
+
VARSTR_HEADER_SIZE
;
pSchema
[
cols
].
type
=
TSDB_DATA_TYPE_BINARY
;
pSchema
[
cols
].
type
=
TSDB_DATA_TYPE_BINARY
;
snprintf
(
pSchema
[
cols
].
name
,
TSDB_COL_NAME_LEN
,
"v%d
S
tatus"
,
i
+
1
);
snprintf
(
pSchema
[
cols
].
name
,
TSDB_COL_NAME_LEN
,
"v%d
_s
tatus"
,
i
+
1
);
pSchema
[
cols
].
bytes
=
htons
(
pShow
->
bytes
[
cols
]);
pSchema
[
cols
].
bytes
=
htons
(
pShow
->
bytes
[
cols
]);
cols
++
;
cols
++
;
}
}
...
...
src/os/inc/osSocket.h
浏览文件 @
5708590b
...
@@ -59,6 +59,7 @@ extern "C" {
...
@@ -59,6 +59,7 @@ extern "C" {
// TAOS_OS_FUNC_SOCKET
// TAOS_OS_FUNC_SOCKET
int32_t
taosSetNonblocking
(
SOCKET
sock
,
int32_t
on
);
int32_t
taosSetNonblocking
(
SOCKET
sock
,
int32_t
on
);
void
taosIgnSIGPIPE
();
void
taosBlockSIGPIPE
();
void
taosBlockSIGPIPE
();
// TAOS_OS_FUNC_SOCKET_SETSOCKETOPT
// TAOS_OS_FUNC_SOCKET_SETSOCKETOPT
...
...
src/os/src/detail/osSocket.c
浏览文件 @
5708590b
...
@@ -39,6 +39,10 @@ int32_t taosSetNonblocking(SOCKET sock, int32_t on) {
...
@@ -39,6 +39,10 @@ int32_t taosSetNonblocking(SOCKET sock, int32_t on) {
return
0
;
return
0
;
}
}
void
taosIgnSIGPIPE
()
{
signal
(
SIGPIPE
,
SIG_IGN
);
}
void
taosBlockSIGPIPE
()
{
void
taosBlockSIGPIPE
()
{
sigset_t
signal_mask
;
sigset_t
signal_mask
;
sigemptyset
(
&
signal_mask
);
sigemptyset
(
&
signal_mask
);
...
...
src/os/src/windows/wSocket.c
浏览文件 @
5708590b
...
@@ -46,6 +46,7 @@ int32_t taosSetNonblocking(SOCKET sock, int32_t on) {
...
@@ -46,6 +46,7 @@ int32_t taosSetNonblocking(SOCKET sock, int32_t on) {
return
0
;
return
0
;
}
}
void
taosIgnSIGPIPE
()
{}
void
taosBlockSIGPIPE
()
{}
void
taosBlockSIGPIPE
()
{}
int32_t
taosSetSockOpt
(
SOCKET
socketfd
,
int32_t
level
,
int32_t
optname
,
void
*
optval
,
int32_t
optlen
)
{
int32_t
taosSetSockOpt
(
SOCKET
socketfd
,
int32_t
level
,
int32_t
optname
,
void
*
optval
,
int32_t
optlen
)
{
...
...
src/sync/inc/syncInt.h
浏览文件 @
5708590b
...
@@ -38,7 +38,7 @@ extern "C" {
...
@@ -38,7 +38,7 @@ extern "C" {
#define SYNC_MAX_FWDS 512
#define SYNC_MAX_FWDS 512
#define SYNC_FWD_TIMER 300
#define SYNC_FWD_TIMER 300
#define SYNC_ROLE_TIMER 15000 // ms
#define SYNC_ROLE_TIMER 15000 // ms
#define SYNC_CHECK_INTERVAL 1
// ms
#define SYNC_CHECK_INTERVAL 1
000
// ms
#define SYNC_WAIT_AFTER_CHOOSE_MASTER 10 // ms
#define SYNC_WAIT_AFTER_CHOOSE_MASTER 10 // ms
#define nodeRole pNode->peerInfo[pNode->selfIndex]->role
#define nodeRole pNode->peerInfo[pNode->selfIndex]->role
...
@@ -86,9 +86,10 @@ typedef struct SsyncPeer {
...
@@ -86,9 +86,10 @@ typedef struct SsyncPeer {
int32_t
peerFd
;
// forward FD
int32_t
peerFd
;
// forward FD
int32_t
numOfRetrieves
;
// number of retrieves tried
int32_t
numOfRetrieves
;
// number of retrieves tried
int32_t
fileChanged
;
// a flag to indicate file is changed during retrieving process
int32_t
fileChanged
;
// a flag to indicate file is changed during retrieving process
int32_t
refCount
;
int64_t
rid
;
void
*
timer
;
void
*
timer
;
void
*
pConn
;
void
*
pConn
;
int32_t
refCount
;
// reference count
struct
SSyncNode
*
pSyncNode
;
struct
SSyncNode
*
pSyncNode
;
}
SSyncPeer
;
}
SSyncPeer
;
...
@@ -98,6 +99,7 @@ typedef struct SSyncNode {
...
@@ -98,6 +99,7 @@ typedef struct SSyncNode {
int8_t
quorum
;
int8_t
quorum
;
int8_t
selfIndex
;
int8_t
selfIndex
;
uint32_t
vgId
;
uint32_t
vgId
;
int32_t
refCount
;
int64_t
rid
;
int64_t
rid
;
SSyncPeer
*
peerInfo
[
TAOS_SYNC_MAX_REPLICA
+
1
];
// extra one for arbitrator
SSyncPeer
*
peerInfo
[
TAOS_SYNC_MAX_REPLICA
+
1
];
// extra one for arbitrator
SSyncPeer
*
pMaster
;
SSyncPeer
*
pMaster
;
...
@@ -121,13 +123,13 @@ extern int32_t tsSyncNum;
...
@@ -121,13 +123,13 @@ extern int32_t tsSyncNum;
extern
char
tsNodeFqdn
[
TSDB_FQDN_LEN
];
extern
char
tsNodeFqdn
[
TSDB_FQDN_LEN
];
extern
char
*
syncStatus
[];
extern
char
*
syncStatus
[];
void
*
syncRetrieveData
(
void
*
param
);
void
*
syncRetrieveData
(
void
*
param
);
void
*
syncRestoreData
(
void
*
param
);
void
*
syncRestoreData
(
void
*
param
);
int32_t
syncSaveIntoBuffer
(
SSyncPeer
*
pPeer
,
SWalHead
*
pHead
);
int32_t
syncSaveIntoBuffer
(
SSyncPeer
*
pPeer
,
SWalHead
*
pHead
);
void
syncRestartConnection
(
SSyncPeer
*
pPeer
);
void
syncRestartConnection
(
SSyncPeer
*
pPeer
);
void
syncBroadcastStatus
(
SSyncNode
*
pNode
);
void
syncBroadcastStatus
(
SSyncNode
*
pNode
);
void
syncAddPeerRef
(
SSyncPeer
*
pPeer
);
SSyncPeer
*
syncAcquirePeer
(
int64_t
rid
);
int32_t
syncDecPeerRef
(
SSyncPeer
*
pPeer
);
void
syncReleasePeer
(
SSyncPeer
*
pPeer
);
#ifdef __cplusplus
#ifdef __cplusplus
}
}
...
...
src/sync/inc/syncTcp.h
浏览文件 @
5708590b
...
@@ -25,14 +25,14 @@ typedef struct {
...
@@ -25,14 +25,14 @@ typedef struct {
uint32_t
serverIp
;
uint32_t
serverIp
;
int16_t
port
;
int16_t
port
;
int32_t
bufferSize
;
int32_t
bufferSize
;
void
(
*
processBrokenLink
)(
void
*
ahandle
);
void
(
*
processBrokenLink
)(
int64_t
handleId
);
int32_t
(
*
processIncomingMsg
)(
void
*
ahandle
,
void
*
buffer
);
int32_t
(
*
processIncomingMsg
)(
int64_t
handleId
,
void
*
buffer
);
void
(
*
processIncomingConn
)(
int32_t
fd
,
uint32_t
ip
);
void
(
*
processIncomingConn
)(
int32_t
fd
,
uint32_t
ip
);
}
SPoolInfo
;
}
SPoolInfo
;
void
*
syncOpenTcpThreadPool
(
SPoolInfo
*
pInfo
);
void
*
syncOpenTcpThreadPool
(
SPoolInfo
*
pInfo
);
void
syncCloseTcpThreadPool
(
void
*
);
void
syncCloseTcpThreadPool
(
void
*
);
void
*
syncAllocateTcpConn
(
void
*
,
void
*
ahandle
,
int32_t
connFd
);
void
*
syncAllocateTcpConn
(
void
*
,
int64_t
rid
,
int32_t
connFd
);
void
syncFreeTcpConn
(
void
*
);
void
syncFreeTcpConn
(
void
*
);
#ifdef __cplusplus
#ifdef __cplusplus
...
...
src/sync/src/syncArbitrator.c
浏览文件 @
5708590b
...
@@ -29,8 +29,8 @@
...
@@ -29,8 +29,8 @@
static
void
arbSignalHandler
(
int32_t
signum
,
siginfo_t
*
sigInfo
,
void
*
context
);
static
void
arbSignalHandler
(
int32_t
signum
,
siginfo_t
*
sigInfo
,
void
*
context
);
static
void
arbProcessIncommingConnection
(
int32_t
connFd
,
uint32_t
sourceIp
);
static
void
arbProcessIncommingConnection
(
int32_t
connFd
,
uint32_t
sourceIp
);
static
void
arbProcessBrokenLink
(
void
*
param
);
static
void
arbProcessBrokenLink
(
int64_t
rid
);
static
int32_t
arbProcessPeerMsg
(
void
*
param
,
void
*
buffer
);
static
int32_t
arbProcessPeerMsg
(
int64_t
rid
,
void
*
buffer
);
static
tsem_t
tsArbSem
;
static
tsem_t
tsArbSem
;
static
void
*
tsArbTcpPool
;
static
void
*
tsArbTcpPool
;
...
@@ -138,20 +138,20 @@ static void arbProcessIncommingConnection(int32_t connFd, uint32_t sourceIp) {
...
@@ -138,20 +138,20 @@ static void arbProcessIncommingConnection(int32_t connFd, uint32_t sourceIp) {
sDebug
(
"%s, arbitrator request is accepted"
,
pNode
->
id
);
sDebug
(
"%s, arbitrator request is accepted"
,
pNode
->
id
);
pNode
->
nodeFd
=
connFd
;
pNode
->
nodeFd
=
connFd
;
pNode
->
pConn
=
syncAllocateTcpConn
(
tsArbTcpPool
,
pNode
,
connFd
);
pNode
->
pConn
=
syncAllocateTcpConn
(
tsArbTcpPool
,
(
int64_t
)
pNode
,
connFd
);
return
;
return
;
}
}
static
void
arbProcessBrokenLink
(
void
*
param
)
{
static
void
arbProcessBrokenLink
(
int64_t
rid
)
{
SNodeConn
*
pNode
=
param
;
SNodeConn
*
pNode
=
(
SNodeConn
*
)
rid
;
sDebug
(
"%s, TCP link is broken since %s, close connection"
,
pNode
->
id
,
strerror
(
errno
));
sDebug
(
"%s, TCP link is broken since %s, close connection"
,
pNode
->
id
,
strerror
(
errno
));
tfree
(
pNode
);
tfree
(
pNode
);
}
}
static
int32_t
arbProcessPeerMsg
(
void
*
param
,
void
*
buffer
)
{
static
int32_t
arbProcessPeerMsg
(
int64_t
rid
,
void
*
buffer
)
{
SNodeConn
*
pNode
=
param
;
SNodeConn
*
pNode
=
(
SNodeConn
*
)
rid
;
SSyncHead
head
;
SSyncHead
head
;
int32_t
bytes
=
0
;
int32_t
bytes
=
0
;
char
*
cont
=
(
char
*
)
buffer
;
char
*
cont
=
(
char
*
)
buffer
;
...
...
src/sync/src/syncMain.c
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
src/sync/src/syncRestore.c
浏览文件 @
5708590b
...
@@ -90,15 +90,18 @@ static int32_t syncRestoreFile(SSyncPeer *pPeer, uint64_t *fversion) {
...
@@ -90,15 +90,18 @@ static int32_t syncRestoreFile(SSyncPeer *pPeer, uint64_t *fversion) {
break
;
break
;
}
}
sDebug
(
"%s, file:%s info is received from master, index:%d size:%"
PRId64
" fver:%"
PRIu64
" magic:%d"
,
pPeer
->
id
,
minfo
.
name
,
minfo
.
index
,
minfo
.
size
,
minfo
.
fversion
,
minfo
.
magic
);
// remove extra files on slave between the current and last index
// remove extra files on slave between the current and last index
syncRemoveExtraFile
(
pPeer
,
pindex
+
1
,
minfo
.
index
-
1
);
syncRemoveExtraFile
(
pPeer
,
pindex
+
1
,
minfo
.
index
-
1
);
pindex
=
minfo
.
index
;
pindex
=
minfo
.
index
;
// check the file info
// check the file info
sinfo
=
minfo
;
sinfo
=
minfo
;
s
Debug
(
"%s, get file:%s info size:%"
PRId64
,
pPeer
->
id
,
minfo
.
name
,
minfo
.
size
);
s
info
.
magic
=
(
*
pNode
->
getFileInfo
)(
pNode
->
vgId
,
sinfo
.
name
,
&
sinfo
.
index
,
TAOS_SYNC_MAX_INDEX
,
&
sinfo
.
size
,
&
sinfo
.
fversion
);
s
info
.
magic
=
(
*
pNode
->
getFileInfo
)(
pNode
->
vgId
,
sinfo
.
name
,
&
sinfo
.
index
,
TAOS_SYNC_MAX_INDEX
,
&
sinfo
.
siz
e
,
s
Debug
(
"%s, local file:%s info, index:%d size:%"
PRId64
" fver:%"
PRIu64
" magic:%d"
,
pPeer
->
id
,
sinfo
.
nam
e
,
&
sinfo
.
fversion
);
sinfo
.
index
,
sinfo
.
size
,
sinfo
.
fversion
,
sinfo
.
magic
);
// if file not there or magic is not the same, file shall be synced
// if file not there or magic is not the same, file shall be synced
memset
(
&
fileAck
,
0
,
sizeof
(
SFileAck
));
memset
(
&
fileAck
,
0
,
sizeof
(
SFileAck
));
...
@@ -116,6 +119,8 @@ static int32_t syncRestoreFile(SSyncPeer *pPeer, uint64_t *fversion) {
...
@@ -116,6 +119,8 @@ static int32_t syncRestoreFile(SSyncPeer *pPeer, uint64_t *fversion) {
if
(
fileAck
.
sync
==
0
)
{
if
(
fileAck
.
sync
==
0
)
{
sDebug
(
"%s, %s is the same"
,
pPeer
->
id
,
minfo
.
name
);
sDebug
(
"%s, %s is the same"
,
pPeer
->
id
,
minfo
.
name
);
continue
;
continue
;
}
else
{
sDebug
(
"%s, %s will be received, size:%"
PRId64
,
pPeer
->
id
,
minfo
.
name
,
minfo
.
size
);
}
}
// if sync is required, open file, receive from master, and write to file
// if sync is required, open file, receive from master, and write to file
...
@@ -155,7 +160,7 @@ static int32_t syncRestoreFile(SSyncPeer *pPeer, uint64_t *fversion) {
...
@@ -155,7 +160,7 @@ static int32_t syncRestoreFile(SSyncPeer *pPeer, uint64_t *fversion) {
return
code
;
return
code
;
}
}
static
int32_t
syncRestoreWal
(
SSyncPeer
*
pPeer
)
{
static
int32_t
syncRestoreWal
(
SSyncPeer
*
pPeer
,
uint64_t
*
wver
)
{
SSyncNode
*
pNode
=
pPeer
->
pSyncNode
;
SSyncNode
*
pNode
=
pPeer
->
pSyncNode
;
int32_t
ret
,
code
=
-
1
;
int32_t
ret
,
code
=
-
1
;
uint64_t
lastVer
=
0
;
uint64_t
lastVer
=
0
;
...
@@ -198,6 +203,7 @@ static int32_t syncRestoreWal(SSyncPeer *pPeer) {
...
@@ -198,6 +203,7 @@ static int32_t syncRestoreWal(SSyncPeer *pPeer) {
}
}
free
(
pHead
);
free
(
pHead
);
*
wver
=
lastVer
;
return
code
;
return
code
;
}
}
...
@@ -321,12 +327,19 @@ static int32_t syncRestoreDataStepByStep(SSyncPeer *pPeer) {
...
@@ -321,12 +327,19 @@ static int32_t syncRestoreDataStepByStep(SSyncPeer *pPeer) {
nodeVersion
=
fversion
;
nodeVersion
=
fversion
;
sInfo
(
"%s, start to restore wal"
,
pPeer
->
id
);
sInfo
(
"%s, start to restore wal, fver:%"
PRIu64
,
pPeer
->
id
,
nodeVersion
);
if
(
syncRestoreWal
(
pPeer
)
<
0
)
{
uint64_t
wver
=
0
;
sError
(
"%s, failed to restore wal"
,
pPeer
->
id
);
code
=
syncRestoreWal
(
pPeer
,
&
wver
);
// lastwar
if
(
code
<
0
)
{
sError
(
"%s, failed to restore wal, code:%d"
,
pPeer
->
id
,
code
);
return
-
1
;
return
-
1
;
}
}
if
(
wver
!=
0
)
{
nodeVersion
=
wver
;
sDebug
(
"%s, restore wal finished, set sver:%"
PRIu64
,
pPeer
->
id
,
nodeVersion
);
}
nodeSStatus
=
TAOS_SYNC_STATUS_CACHE
;
nodeSStatus
=
TAOS_SYNC_STATUS_CACHE
;
sInfo
(
"%s, start to insert buffered points, set sstatus:%s"
,
pPeer
->
id
,
syncStatus
[
nodeSStatus
]);
sInfo
(
"%s, start to insert buffered points, set sstatus:%s"
,
pPeer
->
id
,
syncStatus
[
nodeSStatus
]);
if
(
syncProcessBufferedFwd
(
pPeer
)
<
0
)
{
if
(
syncProcessBufferedFwd
(
pPeer
)
<
0
)
{
...
@@ -338,7 +351,10 @@ static int32_t syncRestoreDataStepByStep(SSyncPeer *pPeer) {
...
@@ -338,7 +351,10 @@ static int32_t syncRestoreDataStepByStep(SSyncPeer *pPeer) {
}
}
void
*
syncRestoreData
(
void
*
param
)
{
void
*
syncRestoreData
(
void
*
param
)
{
SSyncPeer
*
pPeer
=
param
;
int64_t
rid
=
(
int64_t
)
param
;
SSyncPeer
*
pPeer
=
syncAcquirePeer
(
rid
);
if
(
pPeer
==
NULL
)
return
NULL
;
SSyncNode
*
pNode
=
pPeer
->
pSyncNode
;
SSyncNode
*
pNode
=
pPeer
->
pSyncNode
;
taosBlockSIGPIPE
();
taosBlockSIGPIPE
();
...
@@ -369,7 +385,7 @@ void *syncRestoreData(void *param) {
...
@@ -369,7 +385,7 @@ void *syncRestoreData(void *param) {
taosClose
(
pPeer
->
syncFd
);
taosClose
(
pPeer
->
syncFd
);
syncCloseRecvBuffer
(
pNode
);
syncCloseRecvBuffer
(
pNode
);
__sync_fetch_and_sub
(
&
tsSyncNum
,
1
);
__sync_fetch_and_sub
(
&
tsSyncNum
,
1
);
sync
DecPeerRef
(
pPeer
);
sync
ReleasePeer
(
pPeer
);
return
NULL
;
return
NULL
;
}
}
src/sync/src/syncRetrieve.c
浏览文件 @
5708590b
...
@@ -104,7 +104,8 @@ static int32_t syncRetrieveFile(SSyncPeer *pPeer) {
...
@@ -104,7 +104,8 @@ static int32_t syncRetrieveFile(SSyncPeer *pPeer) {
fileInfo
.
magic
=
(
*
pNode
->
getFileInfo
)(
pNode
->
vgId
,
fileInfo
.
name
,
&
fileInfo
.
index
,
TAOS_SYNC_MAX_INDEX
,
fileInfo
.
magic
=
(
*
pNode
->
getFileInfo
)(
pNode
->
vgId
,
fileInfo
.
name
,
&
fileInfo
.
index
,
TAOS_SYNC_MAX_INDEX
,
&
fileInfo
.
size
,
&
fileInfo
.
fversion
);
&
fileInfo
.
size
,
&
fileInfo
.
fversion
);
syncBuildFileInfo
(
&
fileInfo
,
pNode
->
vgId
);
syncBuildFileInfo
(
&
fileInfo
,
pNode
->
vgId
);
sDebug
(
"%s, file:%s info is sent, size:%"
PRId64
,
pPeer
->
id
,
fileInfo
.
name
,
fileInfo
.
size
);
sDebug
(
"%s, file:%s info is sent, index:%d size:%"
PRId64
" fver:%"
PRIu64
" magic:%d"
,
pPeer
->
id
,
fileInfo
.
name
,
fileInfo
.
index
,
fileInfo
.
size
,
fileInfo
.
fversion
,
fileInfo
.
magic
);
// send the file info
// send the file info
int32_t
ret
=
taosWriteMsg
(
pPeer
->
syncFd
,
&
(
fileInfo
),
sizeof
(
SFileInfo
));
int32_t
ret
=
taosWriteMsg
(
pPeer
->
syncFd
,
&
(
fileInfo
),
sizeof
(
SFileInfo
));
...
@@ -144,6 +145,8 @@ static int32_t syncRetrieveFile(SSyncPeer *pPeer) {
...
@@ -144,6 +145,8 @@ static int32_t syncRetrieveFile(SSyncPeer *pPeer) {
fileInfo
.
index
++
;
fileInfo
.
index
++
;
sDebug
(
"%s, %s is the same"
,
pPeer
->
id
,
fileInfo
.
name
);
sDebug
(
"%s, %s is the same"
,
pPeer
->
id
,
fileInfo
.
name
);
continue
;
continue
;
}
else
{
sDebug
(
"%s, %s will be sent"
,
pPeer
->
id
,
fileInfo
.
name
);
}
}
// get the full path to file
// get the full path to file
...
@@ -461,7 +464,10 @@ static int32_t syncRetrieveDataStepByStep(SSyncPeer *pPeer) {
...
@@ -461,7 +464,10 @@ static int32_t syncRetrieveDataStepByStep(SSyncPeer *pPeer) {
}
}
void
*
syncRetrieveData
(
void
*
param
)
{
void
*
syncRetrieveData
(
void
*
param
)
{
SSyncPeer
*
pPeer
=
(
SSyncPeer
*
)
param
;
int64_t
rid
=
(
int64_t
)
param
;
SSyncPeer
*
pPeer
=
syncAcquirePeer
(
rid
);
if
(
pPeer
==
NULL
)
return
NULL
;
SSyncNode
*
pNode
=
pPeer
->
pSyncNode
;
SSyncNode
*
pNode
=
pPeer
->
pSyncNode
;
taosBlockSIGPIPE
();
taosBlockSIGPIPE
();
...
@@ -490,7 +496,7 @@ void *syncRetrieveData(void *param) {
...
@@ -490,7 +496,7 @@ void *syncRetrieveData(void *param) {
pPeer
->
fileChanged
=
0
;
pPeer
->
fileChanged
=
0
;
taosClose
(
pPeer
->
syncFd
);
taosClose
(
pPeer
->
syncFd
);
sync
DecPeerRef
(
pPeer
);
sync
ReleasePeer
(
pPeer
);
return
NULL
;
return
NULL
;
}
}
src/sync/src/syncTcp.c
浏览文件 @
5708590b
...
@@ -42,7 +42,7 @@ typedef struct SPoolObj {
...
@@ -42,7 +42,7 @@ typedef struct SPoolObj {
typedef
struct
{
typedef
struct
{
SThreadObj
*
pThread
;
SThreadObj
*
pThread
;
void
*
ahandle
;
int64_t
handleId
;
int32_t
fd
;
int32_t
fd
;
int32_t
closedByApp
;
int32_t
closedByApp
;
}
SConnObj
;
}
SConnObj
;
...
@@ -112,7 +112,7 @@ void syncCloseTcpThreadPool(void *param) {
...
@@ -112,7 +112,7 @@ void syncCloseTcpThreadPool(void *param) {
tfree
(
pPool
);
tfree
(
pPool
);
}
}
void
*
syncAllocateTcpConn
(
void
*
param
,
void
*
pPeer
,
int32_t
connFd
)
{
void
*
syncAllocateTcpConn
(
void
*
param
,
int64_t
rid
,
int32_t
connFd
)
{
struct
epoll_event
event
;
struct
epoll_event
event
;
SPoolObj
*
pPool
=
param
;
SPoolObj
*
pPool
=
param
;
...
@@ -130,7 +130,7 @@ void *syncAllocateTcpConn(void *param, void *pPeer, int32_t connFd) {
...
@@ -130,7 +130,7 @@ void *syncAllocateTcpConn(void *param, void *pPeer, int32_t connFd) {
pConn
->
fd
=
connFd
;
pConn
->
fd
=
connFd
;
pConn
->
pThread
=
pThread
;
pConn
->
pThread
=
pThread
;
pConn
->
ahandle
=
pPeer
;
pConn
->
handleId
=
rid
;
pConn
->
closedByApp
=
0
;
pConn
->
closedByApp
=
0
;
event
.
events
=
EPOLLIN
|
EPOLLRDHUP
;
event
.
events
=
EPOLLIN
|
EPOLLRDHUP
;
...
@@ -164,7 +164,7 @@ static void taosProcessBrokenLink(SConnObj *pConn) {
...
@@ -164,7 +164,7 @@ static void taosProcessBrokenLink(SConnObj *pConn) {
SPoolInfo
*
pInfo
=
&
pPool
->
info
;
SPoolInfo
*
pInfo
=
&
pPool
->
info
;
if
(
pConn
->
closedByApp
==
0
)
shutdown
(
pConn
->
fd
,
SHUT_WR
);
if
(
pConn
->
closedByApp
==
0
)
shutdown
(
pConn
->
fd
,
SHUT_WR
);
(
*
pInfo
->
processBrokenLink
)(
pConn
->
ahandle
);
(
*
pInfo
->
processBrokenLink
)(
pConn
->
handleId
);
pThread
->
numOfFds
--
;
pThread
->
numOfFds
--
;
epoll_ctl
(
pThread
->
pollFd
,
EPOLL_CTL_DEL
,
pConn
->
fd
,
NULL
);
epoll_ctl
(
pThread
->
pollFd
,
EPOLL_CTL_DEL
,
pConn
->
fd
,
NULL
);
...
@@ -221,7 +221,7 @@ static void *syncProcessTcpData(void *param) {
...
@@ -221,7 +221,7 @@ static void *syncProcessTcpData(void *param) {
}
}
if
(
pConn
->
closedByApp
==
0
)
{
if
(
pConn
->
closedByApp
==
0
)
{
if
((
*
pInfo
->
processIncomingMsg
)(
pConn
->
ahandle
,
buffer
)
<
0
)
{
if
((
*
pInfo
->
processIncomingMsg
)(
pConn
->
handleId
,
buffer
)
<
0
)
{
syncFreeTcpConn
(
pConn
);
syncFreeTcpConn
(
pConn
);
continue
;
continue
;
}
}
...
...
src/tsdb/src/tsdbCommit.c
浏览文件 @
5708590b
...
@@ -161,6 +161,11 @@ _err:
...
@@ -161,6 +161,11 @@ _err:
static
void
tsdbEndCommit
(
STsdbRepo
*
pRepo
,
int
eno
)
{
static
void
tsdbEndCommit
(
STsdbRepo
*
pRepo
,
int
eno
)
{
if
(
pRepo
->
appH
.
notifyStatus
)
pRepo
->
appH
.
notifyStatus
(
pRepo
->
appH
.
appH
,
TSDB_STATUS_COMMIT_OVER
,
eno
);
if
(
pRepo
->
appH
.
notifyStatus
)
pRepo
->
appH
.
notifyStatus
(
pRepo
->
appH
.
appH
,
TSDB_STATUS_COMMIT_OVER
,
eno
);
SMemTable
*
pIMem
=
pRepo
->
imem
;
tsdbLockRepo
(
pRepo
);
pRepo
->
imem
=
NULL
;
tsdbUnlockRepo
(
pRepo
);
tsdbUnRefMemTable
(
pRepo
,
pIMem
);
sem_post
(
&
(
pRepo
->
readyToCommit
));
sem_post
(
&
(
pRepo
->
readyToCommit
));
}
}
...
...
src/tsdb/src/tsdbMemTable.c
浏览文件 @
5708590b
...
@@ -17,6 +17,7 @@
...
@@ -17,6 +17,7 @@
#include "tsdbMain.h"
#include "tsdbMain.h"
#define TSDB_DATA_SKIPLIST_LEVEL 5
#define TSDB_DATA_SKIPLIST_LEVEL 5
#define TSDB_MAX_INSERT_BATCH 512
static
SMemTable
*
tsdbNewMemTable
(
STsdbRepo
*
pRepo
);
static
SMemTable
*
tsdbNewMemTable
(
STsdbRepo
*
pRepo
);
static
void
tsdbFreeMemTable
(
SMemTable
*
pMemTable
);
static
void
tsdbFreeMemTable
(
SMemTable
*
pMemTable
);
...
@@ -205,7 +206,7 @@ void *tsdbAllocBytes(STsdbRepo *pRepo, int bytes) {
...
@@ -205,7 +206,7 @@ void *tsdbAllocBytes(STsdbRepo *pRepo, int bytes) {
int
tsdbAsyncCommit
(
STsdbRepo
*
pRepo
)
{
int
tsdbAsyncCommit
(
STsdbRepo
*
pRepo
)
{
if
(
pRepo
->
mem
==
NULL
)
return
0
;
if
(
pRepo
->
mem
==
NULL
)
return
0
;
SMemTable
*
pIMem
=
pRepo
->
imem
;
ASSERT
(
pRepo
->
imem
==
NULL
)
;
sem_wait
(
&
(
pRepo
->
readyToCommit
));
sem_wait
(
&
(
pRepo
->
readyToCommit
));
...
@@ -220,8 +221,6 @@ int tsdbAsyncCommit(STsdbRepo *pRepo) {
...
@@ -220,8 +221,6 @@ int tsdbAsyncCommit(STsdbRepo *pRepo) {
tsdbScheduleCommit
(
pRepo
);
tsdbScheduleCommit
(
pRepo
);
if
(
tsdbUnlockRepo
(
pRepo
)
<
0
)
return
-
1
;
if
(
tsdbUnlockRepo
(
pRepo
)
<
0
)
return
-
1
;
if
(
tsdbUnRefMemTable
(
pRepo
,
pIMem
)
<
0
)
return
-
1
;
return
0
;
return
0
;
}
}
...
@@ -606,19 +605,13 @@ static int tsdbInsertDataToTable(STsdbRepo *pRepo, SSubmitBlk *pBlock, int32_t *
...
@@ -606,19 +605,13 @@ static int tsdbInsertDataToTable(STsdbRepo *pRepo, SSubmitBlk *pBlock, int32_t *
STable
*
pTable
=
NULL
;
STable
*
pTable
=
NULL
;
SSubmitBlkIter
blkIter
=
{
0
};
SSubmitBlkIter
blkIter
=
{
0
};
SDataRow
row
=
NULL
;
SDataRow
row
=
NULL
;
void
*
*
rows
=
NULL
;
void
*
rows
[
TSDB_MAX_INSERT_BATCH
]
=
{
0
}
;
int
rowCounter
=
0
;
int
rowCounter
=
0
;
ASSERT
(
pBlock
->
tid
<
pMeta
->
maxTables
);
ASSERT
(
pBlock
->
tid
<
pMeta
->
maxTables
);
pTable
=
pMeta
->
tables
[
pBlock
->
tid
];
pTable
=
pMeta
->
tables
[
pBlock
->
tid
];
ASSERT
(
pTable
!=
NULL
&&
TABLE_UID
(
pTable
)
==
pBlock
->
uid
);
ASSERT
(
pTable
!=
NULL
&&
TABLE_UID
(
pTable
)
==
pBlock
->
uid
);
rows
=
(
void
**
)
calloc
(
pBlock
->
numOfRows
,
sizeof
(
void
*
));
if
(
rows
==
NULL
)
{
terrno
=
TSDB_CODE_TDB_OUT_OF_MEMORY
;
return
-
1
;
}
tsdbInitSubmitBlkIter
(
pBlock
,
&
blkIter
);
tsdbInitSubmitBlkIter
(
pBlock
,
&
blkIter
);
while
((
row
=
tsdbGetSubmitBlkNext
(
&
blkIter
))
!=
NULL
)
{
while
((
row
=
tsdbGetSubmitBlkNext
(
&
blkIter
))
!=
NULL
)
{
if
(
tsdbCopyRowToMem
(
pRepo
,
row
,
pTable
,
&
(
rows
[
rowCounter
]))
<
0
)
{
if
(
tsdbCopyRowToMem
(
pRepo
,
row
,
pTable
,
&
(
rows
[
rowCounter
]))
<
0
)
{
...
@@ -632,21 +625,28 @@ static int tsdbInsertDataToTable(STsdbRepo *pRepo, SSubmitBlk *pBlock, int32_t *
...
@@ -632,21 +625,28 @@ static int tsdbInsertDataToTable(STsdbRepo *pRepo, SSubmitBlk *pBlock, int32_t *
if
(
rows
[
rowCounter
]
!=
NULL
)
{
if
(
rows
[
rowCounter
]
!=
NULL
)
{
rowCounter
++
;
rowCounter
++
;
}
}
}
if
(
rowCounter
==
TSDB_MAX_INSERT_BATCH
)
{
if
(
tsdbInsertDataToTableImpl
(
pRepo
,
pTable
,
rows
,
rowCounter
)
<
0
)
{
if
(
tsdbInsertDataToTableImpl
(
pRepo
,
pTable
,
rows
,
rowCounter
)
<
0
)
{
goto
_err
;
goto
_err
;
}
}
rowCounter
=
0
;
memset
(
rows
,
0
,
sizeof
(
rows
));
}
}
if
(
rowCounter
>
0
&&
tsdbInsertDataToTableImpl
(
pRepo
,
pTable
,
rows
,
rowCounter
)
<
0
)
{
goto
_err
;
}
STSchema
*
pSchema
=
tsdbGetTableSchemaByVersion
(
pTable
,
pBlock
->
sversion
);
STSchema
*
pSchema
=
tsdbGetTableSchemaByVersion
(
pTable
,
pBlock
->
sversion
);
pRepo
->
stat
.
pointsWritten
+=
points
*
schemaNCols
(
pSchema
);
pRepo
->
stat
.
pointsWritten
+=
points
*
schemaNCols
(
pSchema
);
pRepo
->
stat
.
totalStorage
+=
points
*
schemaVLen
(
pSchema
);
pRepo
->
stat
.
totalStorage
+=
points
*
schemaVLen
(
pSchema
);
free
(
rows
);
return
0
;
return
0
;
_err:
_err:
free
(
rows
);
return
-
1
;
return
-
1
;
}
}
...
...
src/util/src/tsocket.c
浏览文件 @
5708590b
...
@@ -18,6 +18,10 @@
...
@@ -18,6 +18,10 @@
#include "tsocket.h"
#include "tsocket.h"
#include "taoserror.h"
#include "taoserror.h"
#ifndef SIGPIPE
#define SIGPIPE EPIPE
#endif
int32_t
taosGetFqdn
(
char
*
fqdn
)
{
int32_t
taosGetFqdn
(
char
*
fqdn
)
{
char
hostname
[
1024
];
char
hostname
[
1024
];
hostname
[
1023
]
=
'\0'
;
hostname
[
1023
]
=
'\0'
;
...
@@ -115,6 +119,10 @@ int32_t taosWriteMsg(SOCKET fd, void *buf, int32_t nbytes) {
...
@@ -115,6 +119,10 @@ int32_t taosWriteMsg(SOCKET fd, void *buf, int32_t nbytes) {
nleft
-=
nwritten
;
nleft
-=
nwritten
;
ptr
+=
nwritten
;
ptr
+=
nwritten
;
}
}
if
(
errno
==
SIGPIPE
||
errno
==
EPIPE
)
{
return
-
1
;
}
}
}
return
(
nbytes
-
nleft
);
return
(
nbytes
-
nleft
);
...
@@ -142,6 +150,10 @@ int32_t taosReadMsg(SOCKET fd, void *buf, int32_t nbytes) {
...
@@ -142,6 +150,10 @@ int32_t taosReadMsg(SOCKET fd, void *buf, int32_t nbytes) {
nleft
-=
nread
;
nleft
-=
nread
;
ptr
+=
nread
;
ptr
+=
nread
;
}
}
if
(
errno
==
SIGPIPE
||
errno
==
EPIPE
)
{
return
-
1
;
}
}
}
return
(
nbytes
-
nleft
);
return
(
nbytes
-
nleft
);
...
...
src/vnode/src/vnodeCfg.c
浏览文件 @
5708590b
...
@@ -106,9 +106,10 @@ int32_t vnodeReadCfg(SVnodeObj *pVnode) {
...
@@ -106,9 +106,10 @@ int32_t vnodeReadCfg(SVnodeObj *pVnode) {
cJSON
*
vgCfgVersion
=
cJSON_GetObjectItem
(
root
,
"vgCfgVersion"
);
cJSON
*
vgCfgVersion
=
cJSON_GetObjectItem
(
root
,
"vgCfgVersion"
);
if
(
!
vgCfgVersion
||
vgCfgVersion
->
type
!=
cJSON_Number
)
{
if
(
!
vgCfgVersion
||
vgCfgVersion
->
type
!=
cJSON_Number
)
{
vError
(
"vgId:%d, failed to read %s, vgCfgVersion not found"
,
pVnode
->
vgId
,
file
);
vError
(
"vgId:%d, failed to read %s, vgCfgVersion not found"
,
pVnode
->
vgId
,
file
);
goto
PARSE_VCFG_ERROR
;
vnodeMsg
.
cfg
.
vgCfgVersion
=
0
;
}
}
else
{
vnodeMsg
.
cfg
.
vgCfgVersion
=
vgCfgVersion
->
valueint
;
vnodeMsg
.
cfg
.
vgCfgVersion
=
vgCfgVersion
->
valueint
;
}
cJSON
*
cacheBlockSize
=
cJSON_GetObjectItem
(
root
,
"cacheBlockSize"
);
cJSON
*
cacheBlockSize
=
cJSON_GetObjectItem
(
root
,
"cacheBlockSize"
);
if
(
!
cacheBlockSize
||
cacheBlockSize
->
type
!=
cJSON_Number
)
{
if
(
!
cacheBlockSize
||
cacheBlockSize
->
type
!=
cJSON_Number
)
{
...
...
src/vnode/src/vnodeMgmt.c
浏览文件 @
5708590b
...
@@ -89,7 +89,10 @@ static void vnodeIncRef(void *ptNode) {
...
@@ -89,7 +89,10 @@ static void vnodeIncRef(void *ptNode) {
}
}
void
*
vnodeAcquire
(
int32_t
vgId
)
{
void
*
vnodeAcquire
(
int32_t
vgId
)
{
SVnodeObj
**
ppVnode
=
taosHashGetCB
(
tsVnodesHash
,
&
vgId
,
sizeof
(
int32_t
),
vnodeIncRef
,
NULL
,
sizeof
(
void
*
));
SVnodeObj
**
ppVnode
=
NULL
;
if
(
tsVnodesHash
!=
NULL
)
{
ppVnode
=
taosHashGetCB
(
tsVnodesHash
,
&
vgId
,
sizeof
(
int32_t
),
vnodeIncRef
,
NULL
,
sizeof
(
void
*
));
}
if
(
ppVnode
==
NULL
||
*
ppVnode
==
NULL
)
{
if
(
ppVnode
==
NULL
||
*
ppVnode
==
NULL
)
{
terrno
=
TSDB_CODE_VND_INVALID_VGROUP_ID
;
terrno
=
TSDB_CODE_VND_INVALID_VGROUP_ID
;
...
...
src/vnode/src/vnodeRead.c
浏览文件 @
5708590b
...
@@ -65,13 +65,17 @@ static int32_t vnodeCheckRead(SVnodeObj *pVnode) {
...
@@ -65,13 +65,17 @@ static int32_t vnodeCheckRead(SVnodeObj *pVnode) {
return
TSDB_CODE_APP_NOT_READY
;
return
TSDB_CODE_APP_NOT_READY
;
}
}
if
(
pVnode
->
role
!=
TAOS_SYNC_ROLE_SLAVE
&&
pVnode
->
role
!=
TAOS_SYNC_ROLE_MASTER
)
{
if
(
pVnode
->
role
==
TAOS_SYNC_ROLE_MASTER
)
{
vDebug
(
"vgId:%d, replica:%d role:%s, refCount:%d pVnode:%p"
,
pVnode
->
vgId
,
pVnode
->
syncCfg
.
replica
,
return
TSDB_CODE_SUCCESS
;
syncRole
[
pVnode
->
role
],
pVnode
->
refCount
,
pVnode
);
return
TSDB_CODE_APP_NOT_READY
;
}
}
if
(
tsEnableSlaveQuery
&&
pVnode
->
role
==
TAOS_SYNC_ROLE_SLAVE
)
{
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
}
vDebug
(
"vgId:%d, replica:%d role:%s, refCount:%d pVnode:%p, cant provide query service"
,
pVnode
->
vgId
,
pVnode
->
syncCfg
.
replica
,
syncRole
[
pVnode
->
role
],
pVnode
->
refCount
,
pVnode
);
return
TSDB_CODE_APP_NOT_READY
;
}
}
void
vnodeFreeFromRQueue
(
void
*
vparam
,
SVReadMsg
*
pRead
)
{
void
vnodeFreeFromRQueue
(
void
*
vparam
,
SVReadMsg
*
pRead
)
{
...
...
src/vnode/src/vnodeWrite.c
浏览文件 @
5708590b
...
@@ -297,7 +297,7 @@ static int32_t vnodePerformFlowCtrl(SVWriteMsg *pWrite) {
...
@@ -297,7 +297,7 @@ static int32_t vnodePerformFlowCtrl(SVWriteMsg *pWrite) {
if
(
pWrite
->
qtype
!=
TAOS_QTYPE_RPC
)
return
0
;
if
(
pWrite
->
qtype
!=
TAOS_QTYPE_RPC
)
return
0
;
if
(
pVnode
->
queuedWMsg
<
MAX_QUEUED_MSG_NUM
&&
pVnode
->
flowctrlLevel
<=
0
)
return
0
;
if
(
pVnode
->
queuedWMsg
<
MAX_QUEUED_MSG_NUM
&&
pVnode
->
flowctrlLevel
<=
0
)
return
0
;
if
(
tsFlowCtrl
==
0
)
{
if
(
ts
Enable
FlowCtrl
==
0
)
{
int32_t
ms
=
pow
(
2
,
pVnode
->
flowctrlLevel
+
2
);
int32_t
ms
=
pow
(
2
,
pVnode
->
flowctrlLevel
+
2
);
if
(
ms
>
100
)
ms
=
100
;
if
(
ms
>
100
)
ms
=
100
;
vTrace
(
"vgId:%d, msg:%p, app:%p, perform flowctrl for %d ms"
,
pVnode
->
vgId
,
pWrite
,
pWrite
->
rpcMsg
.
ahandle
,
ms
);
vTrace
(
"vgId:%d, msg:%p, app:%p, perform flowctrl for %d ms"
,
pVnode
->
vgId
,
pWrite
,
pWrite
->
rpcMsg
.
ahandle
,
ms
);
...
...
tests/Jenkinsfile
浏览文件 @
5708590b
...
@@ -50,12 +50,7 @@ pipeline {
...
@@ -50,12 +50,7 @@ pipeline {
agent
{
label
'master'
}
agent
{
label
'master'
}
steps
{
steps
{
pre_test
()
pre_test
()
catchError
(
buildResult:
'SUCCESS'
,
stageResult:
'FAILURE'
)
{
sh
'''
cd ${WKC}/tests/pytest
python3 concurrent_inquiry.py -c 1
'''
}
sh
'''
sh
'''
cd ${WKC}/tests
cd ${WKC}/tests
./test-all.sh b1
./test-all.sh b1
...
@@ -82,53 +77,26 @@ pipeline {
...
@@ -82,53 +77,26 @@ pipeline {
./handle_crash_gen_val_log.sh
./handle_crash_gen_val_log.sh
'''
'''
}
}
sh
'''
cd ${WKC}/tests
./test-all.sh b2
date
'''
}
}
stage
(
'test_valgrind'
)
{
agent
{
label
"186"
}
steps
{
pre_test
()
sh
'''
cd ${WKC}/tests/pytest
./valgrind-test.sh 2>&1 > mem-error-out.log
./handle_val_log.sh
date
cd ${WKC}/tests
./test-all.sh b3
date'''
}
}
stage
(
'connector'
){
agent
{
label
"release"
}
steps
{
sh
'''
sh
'''
cd ${WORKSPACE}
systemctl start taosd
git checkout develop
sleep 10
'''
'''
catchError
(
buildResult:
'SUCCESS'
,
stageResult:
'FAILURE'
)
{
catchError
(
buildResult:
'SUCCESS'
,
stageResult:
'FAILURE'
)
{
sh
'''
sh
'''
cd ${W
ORKSPACE
}/tests/gotest
cd ${W
KC
}/tests/gotest
bash batchtest.sh
bash batchtest.sh
'''
'''
}
}
catchError
(
buildResult:
'SUCCESS'
,
stageResult:
'FAILURE'
)
{
catchError
(
buildResult:
'SUCCESS'
,
stageResult:
'FAILURE'
)
{
sh
'''
sh
'''
cd ${W
ORKSPACE
}/tests/examples/python/PYTHONConnectorChecker
cd ${W
KC
}/tests/examples/python/PYTHONConnectorChecker
python3 PythonChecker.py
python3 PythonChecker.py
'''
'''
}
}
catchError
(
buildResult:
'SUCCESS'
,
stageResult:
'FAILURE'
)
{
catchError
(
buildResult:
'SUCCESS'
,
stageResult:
'FAILURE'
)
{
sh
'''
sh
'''
cd ${W
ORKSPACE
}/tests/examples/JDBC/JDBCDemo/
cd ${W
KC
}/tests/examples/JDBC/JDBCDemo/
mvn clean package assembly:single >/dev/null
mvn clean package assembly:single
-DskipTests
>/dev/null
java -jar target/jdbcChecker-SNAPSHOT-jar-with-dependencies.jar -host 127.0.0.1
java -jar target/jdbcChecker-SNAPSHOT-jar-with-dependencies.jar -host 127.0.0.1
'''
'''
}
}
...
@@ -138,9 +106,41 @@ pipeline {
...
@@ -138,9 +106,41 @@ pipeline {
dotnet run
dotnet run
'''
'''
}
}
sh
'''
systemctl stop taosd
cd ${WKC}/tests
./test-all.sh b2
date
'''
}
}
stage
(
'test_valgrind'
)
{
agent
{
label
"186"
}
steps
{
pre_test
()
catchError
(
buildResult:
'SUCCESS'
,
stageResult:
'FAILURE'
)
{
sh
'''
cd ${WKC}/tests/pytest
nohup taosd >/dev/null &
sleep 10
python3 concurrent_inquiry.py -c 1
'''
}
sh
'''
cd ${WKC}/tests/pytest
./valgrind-test.sh 2>&1 > mem-error-out.log
./handle_val_log.sh
date
cd ${WKC}/tests
./test-all.sh b3
date'''
}
}
}
}
stage
(
'arm64_build'
){
stage
(
'arm64_build'
){
agent
{
label
'arm64'
}
agent
{
label
'arm64'
}
steps
{
steps
{
...
...
tests/pytest/concurrent_inquiry.py
浏览文件 @
5708590b
...
@@ -388,7 +388,9 @@ class ConcurrentInquiry:
...
@@ -388,7 +388,9 @@ class ConcurrentInquiry:
print
(
print
(
"Failure thread%d, sql: %s
\n
exception: %s"
%
"Failure thread%d, sql: %s
\n
exception: %s"
%
(
threadID
,
str
(
sql
),
str
(
e
)))
(
threadID
,
str
(
sql
),
str
(
e
)))
#exit(-1)
err_uec
=
'Unable to establish connection'
if
err_uec
in
str
(
e
)
and
loop
>
0
:
exit
(
-
1
)
loop
-=
1
loop
-=
1
if
loop
==
0
:
break
if
loop
==
0
:
break
...
@@ -415,7 +417,9 @@ class ConcurrentInquiry:
...
@@ -415,7 +417,9 @@ class ConcurrentInquiry:
print
(
print
(
"Failure thread%d, sql: %s
\n
exception: %s"
%
"Failure thread%d, sql: %s
\n
exception: %s"
%
(
threadID
,
str
(
sql
),
str
(
e
)))
(
threadID
,
str
(
sql
),
str
(
e
)))
#exit(-1)
err_uec
=
'Unable to establish connection'
if
err_uec
in
str
(
e
)
and
loop
>
0
:
exit
(
-
1
)
loop
-=
1
loop
-=
1
if
loop
==
0
:
break
if
loop
==
0
:
break
...
...
tests/pytest/crash_gen/crash_gen_main.py
浏览文件 @
5708590b
...
@@ -2224,23 +2224,26 @@ class ClientManager:
...
@@ -2224,23 +2224,26 @@ class ClientManager:
if
svcMgr
:
# gConfig.auto_start_service:
if
svcMgr
:
# gConfig.auto_start_service:
svcMgr
.
stopTaosServices
()
svcMgr
.
stopTaosServices
()
svcMgr
=
None
svcMgr
=
None
# Print exec status, etc., AFTER showing messages from the server
self
.
conclude
()
# print("TC failed (2) = {}".format(self.tc.isFailed()))
# Linux return code: ref https://shapeshed.com/unix-exit-codes/
ret
=
1
if
self
.
tc
.
isFailed
()
else
0
self
.
tc
.
cleanup
()
# Release global variables
# Release global variables
gConfig
=
None
gConfig
=
None
gSvcMgr
=
None
gSvcMgr
=
None
logger
=
None
logger
=
None
# Release variables here
self
.
tc
=
None
thPool
=
None
thPool
=
None
dbManager
.
cleanUp
()
# destructor wouldn't run in time
dbManager
=
None
dbManager
=
None
# Print exec status, etc., AFTER showing messages from the server
self
.
conclude
()
# print("TC failed (2) = {}".format(self.tc.isFailed()))
# Linux return code: ref https://shapeshed.com/unix-exit-codes/
ret
=
1
if
self
.
tc
.
isFailed
()
else
0
self
.
tc
.
cleanup
()
# Release variables here
self
.
tc
=
None
gc
.
collect
()
# force garbage collection
gc
.
collect
()
# force garbage collection
# h = hpy()
# h = hpy()
# print("\n----- Final Python Heap -----\n")
# print("\n----- Final Python Heap -----\n")
...
...
tests/pytest/crash_gen/db.py
浏览文件 @
5708590b
...
@@ -394,6 +394,7 @@ class DbManager():
...
@@ -394,6 +394,7 @@ class DbManager():
cType
==
'native'
)
else
DbConn
.
createRest
(
dbTarget
)
cType
==
'native'
)
else
DbConn
.
createRest
(
dbTarget
)
try
:
try
:
self
.
_dbConn
.
open
()
# may throw taos.error.ProgrammingError: disconnected
self
.
_dbConn
.
open
()
# may throw taos.error.ProgrammingError: disconnected
Logging
.
debug
(
"DbManager opened DB connection..."
)
except
taos
.
error
.
ProgrammingError
as
err
:
except
taos
.
error
.
ProgrammingError
as
err
:
# print("Error type: {}, msg: {}, value: {}".format(type(err), err.msg, err))
# print("Error type: {}, msg: {}, value: {}".format(type(err), err.msg, err))
if
(
err
.
msg
==
'client disconnected'
):
# cannot open DB connection
if
(
err
.
msg
==
'client disconnected'
):
# cannot open DB connection
...
@@ -412,6 +413,10 @@ class DbManager():
...
@@ -412,6 +413,10 @@ class DbManager():
# Moved to Database()
# Moved to Database()
# self._stateMachine = StateMechine(self._dbConn)
# self._stateMachine = StateMechine(self._dbConn)
def
__del__
(
self
):
''' Release the underlying DB connection upon deletion of DbManager '''
self
.
cleanUp
()
def
getDbConn
(
self
):
def
getDbConn
(
self
):
return
self
.
_dbConn
return
self
.
_dbConn
...
@@ -438,5 +443,8 @@ class DbManager():
...
@@ -438,5 +443,8 @@ class DbManager():
return
"table_{}"
.
format
(
tblNum
)
return
"table_{}"
.
format
(
tblNum
)
def
cleanUp
(
self
):
def
cleanUp
(
self
):
if
self
.
_dbConn
:
self
.
_dbConn
.
close
()
self
.
_dbConn
.
close
()
self
.
_dbConn
=
None
Logging
.
debug
(
"DbManager closed DB connection..."
)
tests/pytest/crash_gen/misc.py
浏览文件 @
5708590b
...
@@ -2,6 +2,7 @@ import threading
...
@@ -2,6 +2,7 @@ import threading
import
random
import
random
import
logging
import
logging
import
os
import
os
import
sys
import
taos
import
taos
...
@@ -53,7 +54,7 @@ class Logging:
...
@@ -53,7 +54,7 @@ class Logging:
# global misc.logger
# global misc.logger
_logger
=
logging
.
getLogger
(
'CrashGen'
)
# real logger
_logger
=
logging
.
getLogger
(
'CrashGen'
)
# real logger
_logger
.
addFilter
(
LoggingFilter
())
_logger
.
addFilter
(
LoggingFilter
())
ch
=
logging
.
StreamHandler
(
)
ch
=
logging
.
StreamHandler
(
sys
.
stdout
)
# Ref: https://stackoverflow.com/questions/14058453/making-python-loggers-output-all-messages-to-stdout-in-addition-to-log-file
_logger
.
addHandler
(
ch
)
_logger
.
addHandler
(
ch
)
# Logging adapter, to be used as a logger
# Logging adapter, to be used as a logger
...
...
tests/pytest/crash_gen_bootstrap.py
浏览文件 @
5708590b
...
@@ -19,5 +19,5 @@ if __name__ == "__main__":
...
@@ -19,5 +19,5 @@ if __name__ == "__main__":
mExec
.
init
()
mExec
.
init
()
exitCode
=
mExec
.
run
()
exitCode
=
mExec
.
run
()
print
(
"
Exiting with
code: {}"
.
format
(
exitCode
))
print
(
"
\n
Crash_Gen is now exiting with status
code: {}"
.
format
(
exitCode
))
sys
.
exit
(
exitCode
)
sys
.
exit
(
exitCode
)
tests/pytest/handle_crash_gen_val_log.sh
浏览文件 @
5708590b
...
@@ -5,9 +5,10 @@ GREEN='\033[1;32m'
...
@@ -5,9 +5,10 @@ GREEN='\033[1;32m'
GREEN_DARK
=
'\033[0;32m'
GREEN_DARK
=
'\033[0;32m'
GREEN_UNDERLINE
=
'\033[4;32m'
GREEN_UNDERLINE
=
'\033[4;32m'
NC
=
'\033[0m'
NC
=
'\033[0m'
nohup
/var/lib/jenkins/workspace/TDinternal/debug/build/bin/taosd
-c
/var/lib/jenkins/workspace/TDinternal/community/sim/dnode1/cfg
>
/dev/null &
#nohup /var/lib/jenkins/workspace/TDinternal/debug/build/bin/taosd -c /var/lib/jenkins/workspace/TDinternal/community/sim/dnode1/cfg >/dev/null &
nohup
/root/TDinternal/debug/build/bin/taosd
-c
/root/TDinternal/community/sim/dnode1/cfg
>
/dev/null &
./crash_gen.sh
--valgrind
-p
-t
10
-s
250
-b
4
./crash_gen.sh
--valgrind
-p
-t
10
-s
250
-b
4
pidof taosd|xargs
kill
pidof taosd|xargs
kill
-9
grep
'start to execute\|ERROR SUMMARY'
valgrind.err|grep
-v
'grep'
|uniq|tee crash_gen_mem_err.log
grep
'start to execute\|ERROR SUMMARY'
valgrind.err|grep
-v
'grep'
|uniq|tee crash_gen_mem_err.log
for
memError
in
`
grep
'ERROR SUMMARY'
crash_gen_mem_err.log |
awk
'{print $4}'
`
for
memError
in
`
grep
'ERROR SUMMARY'
crash_gen_mem_err.log |
awk
'{print $4}'
`
...
...
tests/pytest/import_merge/importCacheFileH.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importCacheFileHO.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importCacheFileHPO.py
浏览文件 @
5708590b
...
@@ -57,7 +57,7 @@ class TDTestCase:
...
@@ -57,7 +57,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importCacheFileS.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importCacheFileSub.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importCacheFileT.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importCacheFileTO.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importCacheFileTPO.py
浏览文件 @
5708590b
...
@@ -57,7 +57,7 @@ class TDTestCase:
...
@@ -57,7 +57,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataH2.py
浏览文件 @
5708590b
...
@@ -59,7 +59,7 @@ class TDTestCase:
...
@@ -59,7 +59,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataHO.py
浏览文件 @
5708590b
...
@@ -60,7 +60,7 @@ class TDTestCase:
...
@@ -60,7 +60,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataHO2.py
浏览文件 @
5708590b
...
@@ -60,7 +60,7 @@ class TDTestCase:
...
@@ -60,7 +60,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataHPO.py
浏览文件 @
5708590b
...
@@ -62,7 +62,7 @@ class TDTestCase:
...
@@ -62,7 +62,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataLastH.py
浏览文件 @
5708590b
...
@@ -59,7 +59,7 @@ class TDTestCase:
...
@@ -59,7 +59,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataLastHO.py
浏览文件 @
5708590b
...
@@ -59,7 +59,7 @@ class TDTestCase:
...
@@ -59,7 +59,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataLastHPO.py
浏览文件 @
5708590b
...
@@ -61,7 +61,7 @@ class TDTestCase:
...
@@ -61,7 +61,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataLastS.py
浏览文件 @
5708590b
...
@@ -59,7 +59,7 @@ class TDTestCase:
...
@@ -59,7 +59,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataLastSub.py
浏览文件 @
5708590b
...
@@ -32,7 +32,7 @@ class TDTestCase:
...
@@ -32,7 +32,7 @@ class TDTestCase:
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
deploy
(
1
)
tdDnodes
.
deploy
(
1
)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdSql
.
execute
(
'reset query cache'
)
tdSql
.
execute
(
'reset query cache'
)
tdSql
.
execute
(
'drop database if exists db'
)
tdSql
.
execute
(
'drop database if exists db'
)
...
@@ -60,9 +60,9 @@ class TDTestCase:
...
@@ -60,9 +60,9 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"import 10 data totally repetitive"
)
tdLog
.
info
(
"import 10 data totally repetitive"
)
...
...
tests/pytest/import_merge/importDataLastT.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataLastTO.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataLastTPO.py
浏览文件 @
5708590b
...
@@ -57,7 +57,7 @@ class TDTestCase:
...
@@ -57,7 +57,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataS.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataSub.py
浏览文件 @
5708590b
...
@@ -60,7 +60,7 @@ class TDTestCase:
...
@@ -60,7 +60,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataT.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataTO.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importDataTPO.py
浏览文件 @
5708590b
...
@@ -57,9 +57,9 @@ class TDTestCase:
...
@@ -57,9 +57,9 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"import 20 data later with partly overlap"
)
tdLog
.
info
(
"import 20 data later with partly overlap"
)
...
...
tests/pytest/import_merge/importHORestart.py
浏览文件 @
5708590b
...
@@ -57,7 +57,7 @@ class TDTestCase:
...
@@ -57,7 +57,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
10
)
#
tdLog.sleep(10)
tdLog
.
info
(
"================= step6"
)
tdLog
.
info
(
"================= step6"
)
tdSql
.
query
(
'select * from tb1'
)
tdSql
.
query
(
'select * from tb1'
)
...
...
tests/pytest/import_merge/importHPORestart.py
浏览文件 @
5708590b
...
@@ -62,7 +62,7 @@ class TDTestCase:
...
@@ -62,7 +62,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
10
)
#
tdLog.sleep(10)
tdLog
.
info
(
"================= step6"
)
tdLog
.
info
(
"================= step6"
)
tdSql
.
query
(
'select * from tb1'
)
tdSql
.
query
(
'select * from tb1'
)
...
...
tests/pytest/import_merge/importHRestart.py
浏览文件 @
5708590b
...
@@ -54,7 +54,7 @@ class TDTestCase:
...
@@ -54,7 +54,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
10
)
#
tdLog.sleep(10)
tdLog
.
info
(
"================= step6"
)
tdLog
.
info
(
"================= step6"
)
tdSql
.
query
(
'select * from tb1'
)
tdSql
.
query
(
'select * from tb1'
)
...
...
tests/pytest/import_merge/importInsertThenImport.py
浏览文件 @
5708590b
...
@@ -61,7 +61,7 @@ class TDTestCase:
...
@@ -61,7 +61,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
10
)
#
tdLog.sleep(10)
tdLog
.
info
(
"================= step6"
)
tdLog
.
info
(
"================= step6"
)
tdLog
.
info
(
"import 100 sequential data again"
)
tdLog
.
info
(
"import 100 sequential data again"
)
...
...
tests/pytest/import_merge/importLastH.py
浏览文件 @
5708590b
...
@@ -53,7 +53,7 @@ class TDTestCase:
...
@@ -53,7 +53,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importLastHO.py
浏览文件 @
5708590b
...
@@ -53,7 +53,7 @@ class TDTestCase:
...
@@ -53,7 +53,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importLastHPO.py
浏览文件 @
5708590b
...
@@ -55,7 +55,7 @@ class TDTestCase:
...
@@ -55,7 +55,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importLastS.py
浏览文件 @
5708590b
...
@@ -53,7 +53,7 @@ class TDTestCase:
...
@@ -53,7 +53,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importLastSub.py
浏览文件 @
5708590b
...
@@ -53,7 +53,7 @@ class TDTestCase:
...
@@ -53,7 +53,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importLastT.py
浏览文件 @
5708590b
...
@@ -57,7 +57,7 @@ class TDTestCase:
...
@@ -57,7 +57,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importLastTO.py
浏览文件 @
5708590b
...
@@ -57,7 +57,7 @@ class TDTestCase:
...
@@ -57,7 +57,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importLastTPO.py
浏览文件 @
5708590b
...
@@ -59,7 +59,7 @@ class TDTestCase:
...
@@ -59,7 +59,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step4"
)
tdLog
.
info
(
"================= step4"
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
stop
(
1
)
tdLog
.
sleep
(
5
)
#
tdLog.sleep(5)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
...
...
tests/pytest/import_merge/importSRestart.py
浏览文件 @
5708590b
...
@@ -64,7 +64,7 @@ class TDTestCase:
...
@@ -64,7 +64,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
10
)
#
tdLog.sleep(10)
tdLog
.
info
(
"================= step6"
)
tdLog
.
info
(
"================= step6"
)
tdSql
.
query
(
'select * from tb1'
)
tdSql
.
query
(
'select * from tb1'
)
...
...
tests/pytest/import_merge/importSubRestart.py
浏览文件 @
5708590b
...
@@ -64,7 +64,7 @@ class TDTestCase:
...
@@ -64,7 +64,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
10
)
#
tdLog.sleep(10)
tdLog
.
info
(
"================= step6"
)
tdLog
.
info
(
"================= step6"
)
tdSql
.
query
(
'select * from tb1'
)
tdSql
.
query
(
'select * from tb1'
)
...
...
tests/pytest/import_merge/importTORestart.py
浏览文件 @
5708590b
...
@@ -64,7 +64,7 @@ class TDTestCase:
...
@@ -64,7 +64,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
10
)
#
tdLog.sleep(10)
tdLog
.
info
(
"================= step6"
)
tdLog
.
info
(
"================= step6"
)
tdSql
.
query
(
'select * from tb1'
)
tdSql
.
query
(
'select * from tb1'
)
...
...
tests/pytest/import_merge/importTPORestart.py
浏览文件 @
5708590b
...
@@ -68,7 +68,7 @@ class TDTestCase:
...
@@ -68,7 +68,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
10
)
#
tdLog.sleep(10)
tdLog
.
info
(
"================= step6"
)
tdLog
.
info
(
"================= step6"
)
tdSql
.
query
(
'select * from tb1'
)
tdSql
.
query
(
'select * from tb1'
)
...
...
tests/pytest/import_merge/importTRestart.py
浏览文件 @
5708590b
...
@@ -61,7 +61,7 @@ class TDTestCase:
...
@@ -61,7 +61,7 @@ class TDTestCase:
tdLog
.
info
(
"================= step5"
)
tdLog
.
info
(
"================= step5"
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
forcestop
(
1
)
tdDnodes
.
start
(
1
)
tdDnodes
.
start
(
1
)
tdLog
.
sleep
(
10
)
#
tdLog.sleep(10)
tdLog
.
info
(
"================= step6"
)
tdLog
.
info
(
"================= step6"
)
tdSql
.
query
(
'select * from tb1'
)
tdSql
.
query
(
'select * from tb1'
)
...
...
tests/pytest/query/query.py
浏览文件 @
5708590b
...
@@ -16,7 +16,7 @@ import taos
...
@@ -16,7 +16,7 @@ import taos
from
util.log
import
tdLog
from
util.log
import
tdLog
from
util.cases
import
tdCases
from
util.cases
import
tdCases
from
util.sql
import
tdSql
from
util.sql
import
tdSql
from
util.dnodes
import
tdDnodes
class
TDTestCase
:
class
TDTestCase
:
def
init
(
self
,
conn
,
logSql
):
def
init
(
self
,
conn
,
logSql
):
...
@@ -44,6 +44,25 @@ class TDTestCase:
...
@@ -44,6 +44,25 @@ class TDTestCase:
tdSql
.
query
(
"select * from db.st where ts='2020-05-13 10:00:00.000'"
)
tdSql
.
query
(
"select * from db.st where ts='2020-05-13 10:00:00.000'"
)
tdSql
.
checkRows
(
1
)
tdSql
.
checkRows
(
1
)
## test case for https://jira.taosdata.com:18080/browse/TD-2488
tdSql
.
execute
(
"create table m1(ts timestamp, k int) tags(a int)"
)
tdSql
.
execute
(
"create table t1 using m1 tags(1)"
)
tdSql
.
execute
(
"create table t2 using m1 tags(2)"
)
tdSql
.
execute
(
"insert into t1 values('2020-1-1 1:1:1', 1)"
)
tdSql
.
execute
(
"insert into t1 values('2020-1-1 1:10:1', 2)"
)
tdSql
.
execute
(
"insert into t2 values('2020-1-1 1:5:1', 99)"
)
tdSql
.
query
(
"select count(*) from m1 where ts = '2020-1-1 1:5:1' "
)
tdSql
.
checkRows
(
1
)
tdSql
.
checkData
(
0
,
0
,
1
)
tdDnodes
.
stop
(
1
)
tdDnodes
.
start
(
1
)
tdSql
.
query
(
"select count(*) from m1 where ts = '2020-1-1 1:5:1' "
)
tdSql
.
checkRows
(
1
)
tdSql
.
checkData
(
0
,
0
,
1
)
def
stop
(
self
):
def
stop
(
self
):
tdSql
.
close
()
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
...
...
tests/pytest/table/alter_wal0.py
浏览文件 @
5708590b
...
@@ -43,7 +43,8 @@ class TDTestCase:
...
@@ -43,7 +43,8 @@ class TDTestCase:
print
(
"==============step2"
)
print
(
"==============step2"
)
tdDnodes
.
stopAll
()
tdDnodes
.
stopAll
()
filename
=
'/var/lib/taos/mnode/wal/wal0'
path
=
tdDnodes
.
getDnodesRootDir
()
filename
=
path
+
'/dnode1/data/mnode/wal/wal0'
with
open
(
filename
,
'rb'
)
as
f1
:
with
open
(
filename
,
'rb'
)
as
f1
:
temp
=
f1
.
read
()
temp
=
f1
.
read
()
...
@@ -57,12 +58,12 @@ class TDTestCase:
...
@@ -57,12 +58,12 @@ class TDTestCase:
print
(
"==============step3"
)
print
(
"==============step3"
)
tdSql
.
execute
(
"use demo;"
)
tdSql
.
execute
(
"use demo;"
)
tdSql
.
query
(
'show tables;'
)
tdSql
.
query
(
'show tables;'
)
tdSql
.
checkRows
(
10
)
tdSql
.
checkRows
(
9
)
for
i
in
range
(
11
,
21
):
for
i
in
range
(
11
,
21
):
tdSql
.
execute
(
"CREATE table if not exists test{num} using meters tags({num});"
.
format
(
num
=
i
))
tdSql
.
execute
(
"CREATE table if not exists test{num} using meters tags({num});"
.
format
(
num
=
i
))
tdSql
.
query
(
'show tables;'
)
tdSql
.
query
(
'show tables;'
)
tdSql
.
checkRows
(
20
)
tdSql
.
checkRows
(
19
)
print
(
"==============check table numbers and create 10 tables"
)
print
(
"==============check table numbers and create 10 tables"
)
...
...
tests/script/general/db/alter_tables_d2.sim
浏览文件 @
5708590b
...
@@ -11,11 +11,26 @@ system sh/cfg.sh -n dnode2 -c maxTablesPerVnode -v 5
...
@@ -11,11 +11,26 @@ system sh/cfg.sh -n dnode2 -c maxTablesPerVnode -v 5
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
sleep 3000
sql connect
sql connect
sql create dnode $hostname2
sql create dnode $hostname2
sleep 1000
$x = 0
step1:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show dnodes
print dnode1 $data4_1
print dnode2 $data4_2
if $data4_1 != ready then
goto step1
endi
if $data4_2 != ready then
goto step1
endi
print ============================ step1
print ============================ step1
...
@@ -80,10 +95,23 @@ system sh/exec.sh -n dnode1 -s stop -x SIGINT
...
@@ -80,10 +95,23 @@ system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 10
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 10
system sh/cfg.sh -n dnode2 -c maxTablesPerVnode -v 10
system sh/cfg.sh -n dnode2 -c maxTablesPerVnode -v 10
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
sleep 5000
$x = 0
step2:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step1
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step2
endi
sql create table db.t100 using db.st tags(0)
sql create table db.t100 using db.st tags(0)
sql create table db.t101 using db.st tags(1)
sql create table db.t101 using db.st tags(1)
...
@@ -110,7 +138,6 @@ if $rows != 40 then
...
@@ -110,7 +138,6 @@ if $rows != 40 then
return -1
return -1
endi
endi
sql insert into db.t100 values(now, 1)
sql insert into db.t100 values(now, 1)
sql insert into db.t101 values(now, 1)
sql insert into db.t101 values(now, 1)
sql insert into db.t102 values(now, 1)
sql insert into db.t102 values(now, 1)
...
@@ -144,10 +171,24 @@ system sh/exec.sh -n dnode1 -s stop -x SIGINT
...
@@ -144,10 +171,24 @@ system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 15
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 15
system sh/cfg.sh -n dnode2 -c maxTablesPerVnode -v 15
system sh/cfg.sh -n dnode2 -c maxTablesPerVnode -v 15
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
sleep 5000
$x = 0
step3:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step3
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step3
endi
sql create table db.t200 using db.st tags(0)
sql create table db.t200 using db.st tags(0)
sql create table db.t201 using db.st tags(1)
sql create table db.t201 using db.st tags(1)
...
@@ -198,7 +239,7 @@ sql insert into db.t219 values(now, 1)
...
@@ -198,7 +239,7 @@ sql insert into db.t219 values(now, 1)
print ============================ step6
print ============================ step6
sql reset query cache
sql reset query cache
sleep 100
0
sleep 100
sql select * from db.t000
sql select * from db.t000
if $rows != 1 then
if $rows != 1 then
...
@@ -268,10 +309,23 @@ system sh/exec.sh -n dnode1 -s stop -x SIGINT
...
@@ -268,10 +309,23 @@ system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 20
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 20
system sh/cfg.sh -n dnode2 -c maxTablesPerVnode -v 20
system sh/cfg.sh -n dnode2 -c maxTablesPerVnode -v 20
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
sleep 5000
$x = 0
step9:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step9
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step9
endi
sql create table db.t300 using db.st tags(0)
sql create table db.t300 using db.st tags(0)
sql create table db.t301 using db.st tags(1)
sql create table db.t301 using db.st tags(1)
...
@@ -321,7 +375,7 @@ if $rows != 80 then
...
@@ -321,7 +375,7 @@ if $rows != 80 then
endi
endi
sql reset query cache
sql reset query cache
sleep 100
0
sleep 100
sql select * from db.t000
sql select * from db.t000
if $rows != 1 then
if $rows != 1 then
...
@@ -351,13 +405,26 @@ endi
...
@@ -351,13 +405,26 @@ endi
print ============================ step10
print ============================ step10
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
sleep 5000
$x = 0
step10:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step10
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step10
endi
sql reset query cache
sql reset query cache
sleep 100
0
sleep 100
sql show db.tables
sql show db.tables
if $rows != 80 then
if $rows != 80 then
...
@@ -401,10 +468,23 @@ system sh/exec.sh -n dnode1 -s stop -x SIGINT
...
@@ -401,10 +468,23 @@ system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 25
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 25
system sh/cfg.sh -n dnode2 -c maxTablesPerVnode -v 25
system sh/cfg.sh -n dnode2 -c maxTablesPerVnode -v 25
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
sleep 5000
$x = 0
step1xx:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step1xx
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step1xx
endi
sql create table db.t400 using db.st tags(0)
sql create table db.t400 using db.st tags(0)
sql create table db.t401 using db.st tags(1)
sql create table db.t401 using db.st tags(1)
...
@@ -454,7 +534,7 @@ if $rows != 100 then
...
@@ -454,7 +534,7 @@ if $rows != 100 then
endi
endi
sql reset query cache
sql reset query cache
sleep 100
0
sleep 100
sql select * from db.t000
sql select * from db.t000
if $rows != 1 then
if $rows != 1 then
...
...
tests/script/general/db/alter_tables_v1.sim
浏览文件 @
5708590b
...
@@ -5,8 +5,6 @@ system sh/cfg.sh -n dnode1 -c maxVgroupsPerDb -v 1
...
@@ -5,8 +5,6 @@ system sh/cfg.sh -n dnode1 -c maxVgroupsPerDb -v 1
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 10
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 10
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 3000
sql connect
sql connect
print ============================ step1
print ============================ step1
...
@@ -51,9 +49,22 @@ print ============================ step3
...
@@ -51,9 +49,22 @@ print ============================ step3
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 20
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 20
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5000
$x = 0
step2:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step2
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step2
endi
sql create table db.t10 using db.st tags(0)
sql create table db.t10 using db.st tags(0)
sql create table db.t11 using db.st tags(1)
sql create table db.t11 using db.st tags(1)
...
@@ -91,9 +102,22 @@ endi
...
@@ -91,9 +102,22 @@ endi
print ============================ step5
print ============================ step5
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 30
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 30
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5000
$x = 0
step5:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step5
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step5
endi
sql create table db.t20 using db.st tags(0)
sql create table db.t20 using db.st tags(0)
sql create table db.t21 using db.st tags(1)
sql create table db.t21 using db.st tags(1)
...
@@ -124,7 +148,7 @@ sql insert into db.t29 values(now, 1)
...
@@ -124,7 +148,7 @@ sql insert into db.t29 values(now, 1)
print ============================ step6
print ============================ step6
sql reset query cache
sql reset query cache
sleep 100
0
sleep 100
sql select * from db.t0
sql select * from db.t0
if $rows != 1 then
if $rows != 1 then
...
@@ -148,9 +172,22 @@ endi
...
@@ -148,9 +172,22 @@ endi
print ============================ step7
print ============================ step7
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5000
$x = 0
step7:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step7
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step7
endi
sql reset query cache
sql reset query cache
sleep 1000
sleep 1000
...
@@ -190,9 +227,22 @@ endi
...
@@ -190,9 +227,22 @@ endi
print ============================ step9
print ============================ step9
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 40
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 40
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5000
$x = 0
step9:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step9
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step9
endi
sql create table db.t30 using db.st tags(0)
sql create table db.t30 using db.st tags(0)
sql create table db.t31 using db.st tags(1)
sql create table db.t31 using db.st tags(1)
...
@@ -249,12 +299,24 @@ if $rows != 40 then
...
@@ -249,12 +299,24 @@ if $rows != 40 then
return -1
return -1
endi
endi
print ============================ step10
print ============================ step10
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5000
$x = 0
step10:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step10
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step10
endi
sql reset query cache
sql reset query cache
sleep 1000
sleep 1000
...
@@ -294,9 +356,22 @@ endi
...
@@ -294,9 +356,22 @@ endi
print ============================ step12
print ============================ step12
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 50
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 50
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5000
$x = 0
step12:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step12
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step12
endi
sql create table db.t40 using db.st tags(0)
sql create table db.t40 using db.st tags(0)
sql create table db.t41 using db.st tags(1)
sql create table db.t41 using db.st tags(1)
...
...
tests/script/general/db/alter_tables_v4.sim
浏览文件 @
5708590b
...
@@ -5,8 +5,6 @@ system sh/cfg.sh -n dnode1 -c maxVgroupsPerDb -v 4
...
@@ -5,8 +5,6 @@ system sh/cfg.sh -n dnode1 -c maxVgroupsPerDb -v 4
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 5
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 5
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 3000
sql connect
sql connect
print ============================ step1
print ============================ step1
...
@@ -70,9 +68,22 @@ endi
...
@@ -70,9 +68,22 @@ endi
print ============================ step3
print ============================ step3
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 10
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 10
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5000
$x = 0
step3:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step3
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step3
endi
sql create table db.t100 using db.st tags(0)
sql create table db.t100 using db.st tags(0)
sql create table db.t101 using db.st tags(1)
sql create table db.t101 using db.st tags(1)
...
@@ -131,9 +142,22 @@ endi
...
@@ -131,9 +142,22 @@ endi
print ============================ step5
print ============================ step5
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 15
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 15
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5000
$x = 0
step5:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step5
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step5
endi
sql create table db.t200 using db.st tags(0)
sql create table db.t200 using db.st tags(0)
sql create table db.t201 using db.st tags(1)
sql create table db.t201 using db.st tags(1)
...
@@ -184,7 +208,7 @@ sql insert into db.t219 values(now, 1)
...
@@ -184,7 +208,7 @@ sql insert into db.t219 values(now, 1)
print ============================ step6
print ============================ step6
sql reset query cache
sql reset query cache
sleep 100
0
sleep 100
sql select * from db.t000
sql select * from db.t000
if $rows != 1 then
if $rows != 1 then
...
@@ -250,9 +274,22 @@ endi
...
@@ -250,9 +274,22 @@ endi
print ============================ step9
print ============================ step9
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 20
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 20
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5000
$x = 0
step9:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step9
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step9
endi
sql create table db.t300 using db.st tags(0)
sql create table db.t300 using db.st tags(0)
sql create table db.t301 using db.st tags(1)
sql create table db.t301 using db.st tags(1)
...
@@ -331,9 +368,22 @@ endi
...
@@ -331,9 +368,22 @@ endi
print ============================ step10
print ============================ step10
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5000
$x = 0
step10:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step10
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step10
endi
sql reset query cache
sql reset query cache
sleep 1000
sleep 1000
...
@@ -378,9 +428,24 @@ endi
...
@@ -378,9 +428,24 @@ endi
print ============================ step12
print ============================ step12
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 25
system sh/cfg.sh -n dnode1 -c maxTablesPerVnode -v 25
sleep 5000
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5000
$x = 0
step12:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show mnodes -x step12
print mnode1 $data2_1
print mnode1 $data2_2
print mnode1 $data2_3
if $data2_1 != master then
goto step12
endi
sql create table db.t400 using db.st tags(0)
sql create table db.t400 using db.st tags(0)
sql create table db.t401 using db.st tags(1)
sql create table db.t401 using db.st tags(1)
sql create table db.t402 using db.st tags(2)
sql create table db.t402 using db.st tags(2)
...
...
tests/script/general/db/delete_reusevnode.sim
浏览文件 @
5708590b
...
@@ -5,7 +5,6 @@ system sh/deploy.sh -n dnode1 -i 1
...
@@ -5,7 +5,6 @@ system sh/deploy.sh -n dnode1 -i 1
print ========= start dnodes
print ========= start dnodes
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 3000
sql connect
sql connect
print ======== step1
print ======== step1
...
@@ -38,7 +37,6 @@ if $rows != 0 then
...
@@ -38,7 +37,6 @@ if $rows != 0 then
endi
endi
system sh/stop_dnodes.sh
system sh/stop_dnodes.sh
sleep 3000
system sh/deploy.sh -n dnode1 -i 1
system sh/deploy.sh -n dnode1 -i 1
print ========= start dnodes
print ========= start dnodes
...
...
tests/script/general/db/delete_writing1.sim
浏览文件 @
5708590b
...
@@ -22,7 +22,6 @@ system sh/cfg.sh -n dnode4 -c mnodeEqualVnodeNum -v 4
...
@@ -22,7 +22,6 @@ system sh/cfg.sh -n dnode4 -c mnodeEqualVnodeNum -v 4
print ========= start dnodes
print ========= start dnodes
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 3000
sql connect
sql connect
sql create database db
sql create database db
...
...
tests/script/general/table/delete_writing.sim
浏览文件 @
5708590b
...
@@ -21,8 +21,6 @@ system sh/cfg.sh -n dnode4 -c mnodeEqualVnodeNum -v 4
...
@@ -21,8 +21,6 @@ system sh/cfg.sh -n dnode4 -c mnodeEqualVnodeNum -v 4
print ========= start dnodes
print ========= start dnodes
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 3000
sql connect
sql connect
sql create database db
sql create database db
...
...
tests/script/general/wal/sync.sim
浏览文件 @
5708590b
...
@@ -31,7 +31,6 @@ system sh/cfg.sh -n dnode3 -c maxSQLLength -v 940032
...
@@ -31,7 +31,6 @@ system sh/cfg.sh -n dnode3 -c maxSQLLength -v 940032
print ============== deploy
print ============== deploy
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 5001
sql connect
sql connect
sql create dnode $hostname2
sql create dnode $hostname2
...
@@ -43,8 +42,8 @@ print =============== step1
...
@@ -43,8 +42,8 @@ print =============== step1
$x = 0
$x = 0
show1:
show1:
$x = $x + 1
$x = $x + 1
sleep
2
000
sleep
1
000
if $x ==
5
then
if $x ==
10
then
return -1
return -1
endi
endi
sql show mnodes -x show1
sql show mnodes -x show1
...
@@ -82,7 +81,7 @@ restful d1 table_rest 1591772800 30000
...
@@ -82,7 +81,7 @@ restful d1 table_rest 1591772800 30000
restful d1 table_rest 1591872800 30000
restful d1 table_rest 1591872800 30000
restful d1 table_rest 1591972800 30000
restful d1 table_rest 1591972800 30000
sleep 100
0
sleep 100
sql select * from table_rest;
sql select * from table_rest;
print rows: $rows
print rows: $rows
if $rows != 300000 then
if $rows != 300000 then
...
@@ -91,29 +90,51 @@ endi
...
@@ -91,29 +90,51 @@ endi
print =============== step3
print =============== step3
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s stop -x SIGINT
sleep 5000
sql select * from table_rest;
sql select * from table_rest;
print rows: $rows
print rows: $rows
if $rows != 300000 then
if $rows != 300000 then
return -1
return -1
endi
endi
system sh/exec.sh -n dnode1 -s start -x SIGINT
system sh/exec.sh -n dnode1 -s start -x SIGINT
sleep 5000
$x = 0
a1:
$x = $x + 1
sleep 1000
if $x == 40 then
return -1
endi
sql show vgroups
print online vnodes $data03
if $data03 != 3 then
goto a1
endi
print =============== step4
print =============== step4
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
sleep 5000
sql select * from table_rest;
sql select * from table_rest;
print rows: $rows
print rows: $rows
if $rows != 300000 then
if $rows != 300000 then
return -1
return -1
endi
endi
system sh/exec.sh -n dnode2 -s start -x SIGINT
system sh/exec.sh -n dnode2 -s start -x SIGINT
sleep 5000
$x = 0
a2:
$x = $x + 1
sleep 1000
if $x == 40 then
return -1
endi
sql show vgroups
print online vnodes $data03
if $data03 != 3 then
goto a2
endi
print =============== step5
print =============== step5
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec.sh -n dnode3 -s stop -x SIGINT
sleep 5000
sql select * from table_rest;
sql select * from table_rest;
print rows: $rows
print rows: $rows
if $rows != 300000 then
if $rows != 300000 then
...
...
tests/script/jenkins/basic.txt
浏览文件 @
5708590b
...
@@ -288,6 +288,7 @@ cd ../../../debug; make
...
@@ -288,6 +288,7 @@ cd ../../../debug; make
./test.sh -f unique/dnode/data1.sim
./test.sh -f unique/dnode/data1.sim
./test.sh -f unique/dnode/offline1.sim
./test.sh -f unique/dnode/offline1.sim
./test.sh -f unique/dnode/offline2.sim
./test.sh -f unique/dnode/offline2.sim
./test.sh -f unique/dnode/offline3.sim
./test.sh -f unique/dnode/reason.sim
./test.sh -f unique/dnode/reason.sim
./test.sh -f unique/dnode/remove1.sim
./test.sh -f unique/dnode/remove1.sim
./test.sh -f unique/dnode/remove2.sim
./test.sh -f unique/dnode/remove2.sim
...
...
tests/script/jenkins/basic_3.txt
浏览文件 @
5708590b
./test.sh -f unique/stable/balance_replica1.sim
./test.sh -f unique/stable/dnode2_stop.sim
./test.sh -f unique/stable/dnode2.sim
./test.sh -f unique/stable/dnode3.sim
./test.sh -f unique/stable/replica2_dnode4.sim
./test.sh -f unique/stable/replica2_vnode3.sim
./test.sh -f unique/stable/replica3_dnode6.sim
./test.sh -f unique/stable/replica3_vnode3.sim
./test.sh -f unique/mnode/mgmt20.sim
./test.sh -f unique/mnode/mgmt21.sim
./test.sh -f unique/mnode/mgmt22.sim
./test.sh -f unique/mnode/mgmt23.sim
./test.sh -f unique/mnode/mgmt24.sim
#./test.sh -f unique/mnode/mgmt25.sim
#./test.sh -f unique/mnode/mgmt26.sim
./test.sh -f unique/mnode/mgmt33.sim
./test.sh -f unique/mnode/mgmt34.sim
./test.sh -f unique/mnode/mgmtr2.sim
./test.sh -f general/parser/stream_on_sys.sim
./test.sh -f general/stream/metrics_del.sim
./test.sh -f general/stream/metrics_n.sim
./test.sh -f general/stream/metrics_replica1_vnoden.sim
./test.sh -f general/stream/restart_stream.sim
./test.sh -f general/stream/stream_3.sim
./test.sh -f general/stream/stream_restart.sim
./test.sh -f general/stream/table_1.sim
./test.sh -f general/stream/table_del.sim
./test.sh -f general/stream/table_n.sim
./test.sh -f general/stream/table_replica1_vnoden.sim
./test.sh -f unique/arbitrator/check_cluster_cfg_para.sim
./test.sh -f unique/arbitrator/check_cluster_cfg_para.sim
#./test.sh -f unique/arbitrator/dn2_mn1_cache_file_sync.sim
#./test.sh -f unique/arbitrator/dn2_mn1_cache_file_sync.sim
./test.sh -f unique/arbitrator/dn3_mn1_full_createTableFail.sim
./test.sh -f unique/arbitrator/dn3_mn1_full_createTableFail.sim
...
@@ -79,3 +45,35 @@
...
@@ -79,3 +45,35 @@
./test.sh -f unique/migrate/mn2_vn2_repl2_rmMnodeVnodeDir.sim
./test.sh -f unique/migrate/mn2_vn2_repl2_rmMnodeVnodeDir.sim
./test.sh -f unique/migrate/mn2_vn2_repl2_rmMnodeVnodeDir_stopAll_starAll.sim
./test.sh -f unique/migrate/mn2_vn2_repl2_rmMnodeVnodeDir_stopAll_starAll.sim
./test.sh -f unique/migrate/mn2_vn2_repl2_rmVnodeDir.sim
./test.sh -f unique/migrate/mn2_vn2_repl2_rmVnodeDir.sim
./test.sh -f unique/stable/balance_replica1.sim
./test.sh -f unique/stable/dnode2_stop.sim
./test.sh -f unique/stable/dnode2.sim
./test.sh -f unique/stable/dnode3.sim
./test.sh -f unique/stable/replica2_dnode4.sim
./test.sh -f unique/stable/replica2_vnode3.sim
./test.sh -f unique/stable/replica3_dnode6.sim
./test.sh -f unique/stable/replica3_vnode3.sim
./test.sh -f unique/mnode/mgmt20.sim
./test.sh -f unique/mnode/mgmt21.sim
./test.sh -f unique/mnode/mgmt22.sim
./test.sh -f unique/mnode/mgmt23.sim
./test.sh -f unique/mnode/mgmt24.sim
#./test.sh -f unique/mnode/mgmt25.sim
#./test.sh -f unique/mnode/mgmt26.sim
./test.sh -f unique/mnode/mgmt33.sim
./test.sh -f unique/mnode/mgmt34.sim
./test.sh -f unique/mnode/mgmtr2.sim
./test.sh -f general/parser/stream_on_sys.sim
./test.sh -f general/stream/metrics_del.sim
./test.sh -f general/stream/metrics_n.sim
./test.sh -f general/stream/metrics_replica1_vnoden.sim
./test.sh -f general/stream/restart_stream.sim
./test.sh -f general/stream/stream_3.sim
./test.sh -f general/stream/stream_restart.sim
./test.sh -f general/stream/table_1.sim
./test.sh -f general/stream/table_del.sim
./test.sh -f general/stream/table_n.sim
./test.sh -f general/stream/table_replica1_vnoden.sim
tests/script/jenkins/unique.txt
浏览文件 @
5708590b
...
@@ -31,6 +31,8 @@ cd ../../../debug; make
...
@@ -31,6 +31,8 @@ cd ../../../debug; make
./test.sh -f unique/dnode/balancex.sim
./test.sh -f unique/dnode/balancex.sim
./test.sh -f unique/dnode/offline1.sim
./test.sh -f unique/dnode/offline1.sim
./test.sh -f unique/dnode/offline2.sim
./test.sh -f unique/dnode/offline2.sim
./test.sh -f unique/dnode/offline3.sim
./test.sh -f unique/dnode/reason.sim
./test.sh -f unique/dnode/remove1.sim
./test.sh -f unique/dnode/remove1.sim
./test.sh -f unique/dnode/remove2.sim
./test.sh -f unique/dnode/remove2.sim
./test.sh -f unique/dnode/vnode_clean.sim
./test.sh -f unique/dnode/vnode_clean.sim
...
...
tests/script/sh/deploy.sh
浏览文件 @
5708590b
...
@@ -132,10 +132,12 @@ echo "cqdebugFlag 143" >> $TAOS_CFG
...
@@ -132,10 +132,12 @@ echo "cqdebugFlag 143" >> $TAOS_CFG
echo
"monitor 0"
>>
$TAOS_CFG
echo
"monitor 0"
>>
$TAOS_CFG
echo
"monitorInterval 1"
>>
$TAOS_CFG
echo
"monitorInterval 1"
>>
$TAOS_CFG
echo
"http 0"
>>
$TAOS_CFG
echo
"http 0"
>>
$TAOS_CFG
echo
"slaveQuery 0"
>>
$TAOS_CFG
echo
"numOfThreadsPerCore 2.0"
>>
$TAOS_CFG
echo
"numOfThreadsPerCore 2.0"
>>
$TAOS_CFG
echo
"defaultPass taosdata"
>>
$TAOS_CFG
echo
"defaultPass taosdata"
>>
$TAOS_CFG
echo
"numOfLogLines 20000000"
>>
$TAOS_CFG
echo
"numOfLogLines 20000000"
>>
$TAOS_CFG
echo
"mnodeEqualVnodeNum 0"
>>
$TAOS_CFG
echo
"mnodeEqualVnodeNum 0"
>>
$TAOS_CFG
echo
"balanceInterval 1"
>>
$TAOS_CFG
echo
"clog 2"
>>
$TAOS_CFG
echo
"clog 2"
>>
$TAOS_CFG
#echo "cache 1" >> $TAOS_CFG
#echo "cache 1" >> $TAOS_CFG
echo
"days 10"
>>
$TAOS_CFG
echo
"days 10"
>>
$TAOS_CFG
...
...
tests/script/unique/arbitrator/dn3_mn1_r3_vnode_delDir.sim
浏览文件 @
5708590b
...
@@ -360,12 +360,14 @@ print ============== step7: stop dnode3/dnode2, and cluster unable to provide se
...
@@ -360,12 +360,14 @@ print ============== step7: stop dnode3/dnode2, and cluster unable to provide se
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec.sh -n dnode3 -s stop -x SIGINT
sleep 3000
sleep 3000
sql_error select count(*) from $stb
sql select count(*) from $stb -x s71
s71:
print ============== step8: restart dnode2, and cluster Still unable to provide services
print ============== step8: restart dnode2, and cluster Still unable to provide services
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
sleep 3000
sleep 3000
sql_error select count(*) from $stb
sql select count(*) from $stb -x s81
s81:
print ============== step9: restart dnode3, and cluster Resume service delivery
print ============== step9: restart dnode3, and cluster Resume service delivery
system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode3 -s start
...
...
tests/script/unique/arbitrator/dn3_mn1_replica_change.sim
浏览文件 @
5708590b
...
@@ -45,15 +45,30 @@ system sh/exec_tarbitrator.sh -s start
...
@@ -45,15 +45,30 @@ system sh/exec_tarbitrator.sh -s start
print ============== step1: start dnode1, only deploy mnode
print ============== step1: start dnode1, only deploy mnode
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 3000
sql connect
sql connect
print ============== step2: start dnode2 and add into cluster , then create database with replica 1, and create table, insert data
print ============== step2: start dnode2 and add into cluster , then create database with replica 1, and create table, insert data
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
sql create dnode $hostname2
sql create dnode $hostname2
sleep 3000
$sleepTimer = 10000
$x = 0
step1:
$x = $x + 1
sleep 1000
if $x == 40 then
return -1
endi
sql show dnodes
print dnode1 $data4_1
print dnode2 $data4_2
if $data4_1 != ready then
goto step1
endi
if $data4_2 != ready then
goto step1
endi
$db = db
$db = db
sql create database $db replica 1
sql create database $db replica 1
...
@@ -84,7 +99,6 @@ while $i < $tblNum
...
@@ -84,7 +99,6 @@ while $i < $tblNum
endw
endw
sql select count(*) from $stb
sql select count(*) from $stb
sleep 1000
print data00 $data00
print data00 $data00
if $data00 != $totalRows then
if $data00 != $totalRows then
return -1
return -1
...
@@ -92,118 +106,65 @@ endi
...
@@ -92,118 +106,65 @@ endi
print ============== step2-1: stop dnode2 for falling disc, then restart dnode2, and check rows
print ============== step2-1: stop dnode2 for falling disc, then restart dnode2, and check rows
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
sleep $sleepTimer
$loopCnt = 0
wait_dnode2_offline_0:
$loopCnt = $loopCnt + 1
if $loopCnt == 10 then
return -1
endi
sql show dnodes
if $rows != 2 then
sleep 2000
goto wait_dnode2_offline_0
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1
$dnode2Status = $data4_2
#$dnode3Status = $data4_3
#$dnode4Status = $data4_4
#$dnode5Status = $data4_5
if $dnode2Status != offline then
sleep 2000
goto wait_dnode2_offline_0
endi
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
sleep $sleepTimer
$loopCnt = 0
$x = 0
wait_dnode2_reready:
a0:
$loopCnt = $loopCnt + 1
$x = $x + 1
if $loopCnt == 10 then
sleep 1000
if $x == 40 then
return -1
return -1
endi
endi
sql show dnodes
if $rows != 2 then
sql show vgroups
sleep 2000
print online vnodes $data03
goto wait_dnode2_reready
if $data03 != 1 then
endi
goto a0
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1
$dnode2Status = $data4_2
#$dnode3Status = $data4_3
#$dnode4Status = $data4_4
#$dnode5Status = $data4_5
if $dnode2Status != ready then
sleep 2000
goto wait_dnode2_reready
endi
endi
sql select count(*) from $stb
sql select count(*) from $stb
sleep 1000
print data00 $data00
print data00 $data00
if $data00 != $totalRows then
if $data00 != $totalRows then
return -1
return -1
endi
endi
print ============== step3: start dnode3 and add into cluster , then alter replica from 1 to 2, and waiting sync
print ============== step3: start dnode3 and add into cluster , then alter replica from 1 to 2, and waiting sync
system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode3 -s start
sql create dnode $hostname3
sql create dnode $hostname3
sleep 3000
sql alter database $db replica 2
$x = 0
sleep $sleepTimer
step2:
$loopCnt = 0
$x = $x + 1
wait_dnode3_ready:
sleep 1000
$loopCnt = $loopCnt + 1
if $x == 40 then
if $loopCnt == 10 then
return -1
return -1
endi
endi
sql show dnodes
sql show dnodes
if $rows != 3 then
print dnode1 $data4_1
sleep 2000
print dnode2 $data4_2
goto wait_dnode3_ready
print dnode3 $data4_3
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
if $data4_3 != ready then
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
goto step2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1
$dnode2Status = $data4_2
$dnode3Status = $data4_3
#$dnode4Status = $data4_4
#$dnode5Status = $data4_5
if $dnode2Status != ready then
sleep 2000
goto wait_dnode3_ready
endi
endi
if $dnode3Status != ready then
sleep 2000
sql alter database $db replica 2
goto wait_dnode3_ready
$x = 0
a1:
$x = $x + 1
sleep 1000
if $x == 40 then
return -1
endi
sql show vgroups
print online vnodes $data03
if $data03 != 2 then
goto a1
endi
endi
sleep $sleepTimer
# check using select
# check using select
sql select count(*) from $stb
sql select count(*) from $stb
print data00 $data00
print data00 $data00
...
@@ -211,44 +172,22 @@ if $data00 != $totalRows then
...
@@ -211,44 +172,22 @@ if $data00 != $totalRows then
return -1
return -1
endi
endi
print ============== step4: stop dnode2 for checking if sync ok
print ============== step4: stop dnode2 for checking if sync ok
system sh/exec.sh -n dnode2 -s stop
system sh/exec.sh -n dnode2 -s stop
sleep $sleepTimer
$x = 0
$loopCnt = 0
a2:
wait_dnode2_offline:
$x = $x + 1
$loopCnt = $loopCnt + 1
sleep 1000
if $loopCnt == 10 then
if $x == 40 then
return -1
return -1
endi
endi
sql show dnodes
sql show vgroups
if $rows != 3 then
print online vnodes $data03
sleep 2000
if $data03 != 1 then
goto wait_dnode2_offline
goto a2
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1
$dnode2Status = $data4_2
$dnode3Status = $data4_3
#$dnode4Status = $data4_4
#$dnode5Status = $data4_5
if $dnode2Status != offline then
sleep 2000
goto wait_dnode2_offline
endi
if $dnode3Status != ready then
sleep 2000
goto wait_dnode2_offline
endi
endi
sleep $sleepTimer # waitting for move master vnode of dnode2 to dnode3
# check using select
# check using select
sql select count(*) from $stb
sql select count(*) from $stb
print data00 $data00
print data00 $data00
...
@@ -258,38 +197,20 @@ endi
...
@@ -258,38 +197,20 @@ endi
print ============== step5: restart dnode2
print ============== step5: restart dnode2
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
sleep 3000
$x = 0
a3:
$loopCnt = 0
$x = $x + 1
wait_dnode2_ready:
sleep 1000
$loopCnt = $loopCnt + 1
if $x == 40 then
if $loopCnt == 10 then
return -1
return -1
endi
endi
sql show dnodes
sql show vgroups
if $rows != 3 then
print online vnodes $data03
sleep 2000
if $data03 != 2 then
goto wait_dnode2_ready
goto a3
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
#print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
#$dnode1Status = $data4_1
$dnode2Status = $data4_2
$dnode3Status = $data4_3
#$dnode4Status = $data4_4
#$dnode5Status = $data4_5
if $dnode2Status != ready then
sleep 2000
goto wait_dnode2_ready
endi
endi
sleep $sleepTimer
# check using select
# check using select
sql select count(*) from $stb
sql select count(*) from $stb
print data00 $data00
print data00 $data00
...
@@ -300,40 +221,39 @@ endi
...
@@ -300,40 +221,39 @@ endi
print ============== step6: start dnode4 and add into cluster , then alter replica from 2 to 3, and waiting sync
print ============== step6: start dnode4 and add into cluster , then alter replica from 2 to 3, and waiting sync
system sh/exec.sh -n dnode4 -s start
system sh/exec.sh -n dnode4 -s start
sql create dnode $hostname4
sql create dnode $hostname4
sleep 3000
$x = 0
step6:
sql alter database $db replica 3
$x = $x + 1
sleep $sleepTimer
sleep 1000
$loopCnt = 0
if $x == 10 then
wait_dnode4_ready:
$loopCnt = $loopCnt + 1
if $loopCnt == 10 then
return -1
return -1
endi
endi
sql show dnodes
sql show dnodes
if $rows != 4 then
print dnode1 $data4_1
sleep 2000
print dnode2 $data4_2
goto wait_dnode4_ready
print dnode3 $data4_3
print dnode4 $data4_4
if $data4_4 != ready then
goto step6
endi
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
sql alter database $db replica 3
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
$x = 0
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
a4:
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
$x = $x + 1
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
sleep 1000
#$dnode1Status = $data4_1
if $x == 40 then
#$dnode2Status = $data4_2
return -1
$dnode3Status = $data4_3
endi
$dnode4Status = $data4_4
#$dnode5Status = $data4_5
sql show vgroups
print online vnodes $data03
if $dnode4Status != ready then
if $data03 != 3 then
sleep 2000
goto a4
goto wait_dnode4_ready
endi
endi
sleep $sleepTimer
# check using select
# check using select
sql select count(*) from $stb
sql select count(*) from $stb
print data00 $data00
print data00 $data00
...
@@ -343,44 +263,20 @@ endi
...
@@ -343,44 +263,20 @@ endi
print ============== step7: alter replica from 3 to 2, and waiting sync
print ============== step7: alter replica from 3 to 2, and waiting sync
sql alter database $db replica 2
sql alter database $db replica 2
sleep $sleepTimer
$x = 0
$loopCnt = 0
a5:
wait_vgroups_replic_to_2:
$x = $x + 1
$loopCnt = $loopCnt + 1
sleep 1000
if $loopCnt == 10 then
if $x == 40 then
return -1
return -1
endi
endi
sql show vgroups
sql show vgroups
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $data7_1 $data8_1 $data9_1 $data10_1
print online vnodes $data03
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2 $data5_2 $data6_2 $data7_2 $data8_2 $data9_2 $data10_2
if $data03 != 2 then
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 $data5_3 $data6_3 $data7_3 $data8_3 $data9_3 $data10_3
goto a5
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4 $data5_4 $data6_4 $data7_4 $data8_4 $data9_4 $data10_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
$thirdDnode_2 = $data8_1
$thirdDnode_3 = $data8_2
$thirdDnode_4 = $data8_3
$thirdDnode_5 = $data8_4
if $thirdDnode_2 != null then
sleep 2000
goto wait_vgroups_replic_to_2
endi
if $thirdDnode_3 != null then
sleep 2000
goto wait_vgroups_replic_to_2
endi
if $thirdDnode_4 != null then
sleep 2000
goto wait_vgroups_replic_to_2
endi
if $thirdDnode_5 != null then
sleep 2000
goto wait_vgroups_replic_to_2
endi
endi
sleep $sleepTimer #waiting del one replica data
# check using select
# check using select
sql select count(*) from $stb
sql select count(*) from $stb
print data00 $data00
print data00 $data00
...
@@ -390,85 +286,20 @@ endi
...
@@ -390,85 +286,20 @@ endi
print ============== step8: alter replica from 2 to 1, and waiting sync
print ============== step8: alter replica from 2 to 1, and waiting sync
sql alter database $db replica 1
sql alter database $db replica 1
sleep $sleepTimer
$x = 0
$loopCnt = 0
a6:
wait_vgroups_replic_to_1:
$x = $x + 1
$loopCnt = $loopCnt + 1
sleep 1000
if $loopCnt == 10 then
if $x == 40 then
return -1
return -1
endi
endi
sql show vgroups
sql show vgroups
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $data7_1 $data8_1
print online vnodes $data03
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2 $data5_2 $data6_2 $data7_2 $data8_2
if $data03 != 1 then
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 $data5_3 $data6_3 $data7_3 $data8_3
goto a6
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4 $data5_4 $data6_4 $data7_4 $data8_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
$sencodDnode_2 = $data6_1
$sencodDnode_3 = $data6_2
$sencodDnode_4 = $data6_3
$sencodDnode_5 = $data6_4
if $sencodDnode_2 != null then
sleep 2000
goto wait_vgroups_replic_to_1
endi
if $sencodDnode_3 != null then
sleep 2000
goto wait_vgroups_replic_to_1
endi
if $sencodDnode_4 != null then
sleep 2000
goto wait_vgroups_replic_to_1
endi
if $sencodDnode_5 != null then
sleep 2000
goto wait_vgroups_replic_to_1
endi
$loopCnt = 0
all_dnodes_ready:
$loopCnt = $loopCnt + 1
if $loopCnt == 10 then
return -1
endi
sql show dnodes
if $rows != 4 then
sleep 2000
goto all_dnodes_ready
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
$dnode1Status = $data4_1
$dnode2Status = $data4_2
$dnode3Status = $data4_3
$dnode4Status = $data4_4
#$dnode5Status = $data4_5
if $dnode1Status != ready then
sleep 2000
goto all_dnodes_ready
endi
if $dnode2Status != ready then
sleep 2000
goto all_dnodes_ready
endi
if $dnode3Status != ready then
sleep 2000
goto all_dnodes_ready
endi
if $dnode4Status != ready then
sleep 2000
goto all_dnodes_ready
endi
endi
sleep $sleepTimer #waiting del one replica data
# check using select
# check using select
sql select count(*) from $stb
sql select count(*) from $stb
print data00 $data00
print data00 $data00
...
@@ -481,39 +312,31 @@ sql drop dnode $hostname2
...
@@ -481,39 +312,31 @@ sql drop dnode $hostname2
sql drop dnode $hostname3
sql drop dnode $hostname3
sleep $sleepTimer
sleep $sleepTimer
$loopCnt = 0
$x = 0
wait_dnode23_dropped:
step9:
$loopCnt = $loopCnt + 1
$x = $x + 1
if $loopCnt == 10 then
sleep 1000
if $x == 40 then
return -1
return -1
endi
endi
sql show dnodes
sql show dnodes
if $rows != 2 then
if $rows != 2 then
sleep 2000
goto step9
goto wait_dnode23_dropped
endi
endi
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2
$x = 0
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3
a7:
print $data0_4 $data1_4 $data2_4 $data3_4 $data4_4
$x = $x + 1
#print $data0_5 $data1_5 $data2_5 $data3_5 $data4_5
sleep 1000
#print $data0_6 $data1_6 $data2_6 $data3_6 $data4_6
if $x == 40 then
$dnode1Status = $data4_1
$dnode2Status = $data4_2
$dnode3Status = $data4_3
$dnode4Status = $data4_4
if $dnode2Status != null then
sleep 2000
goto wait_dnode23_dropped
endi
if $dnode3Status != null then
sleep 2000
goto wait_dnode23_dropped
endi
if $dnode4Status != ready then
return -1
return -1
endi
sql show vgroups
print online vnodes $data03
if $data03 != 1 then
goto a7
endi
endi
sleep $sleepTimer #waiting move vnode from dnode3/dnode3 to dnode4
sleep $sleepTimer #waiting move vnode from dnode3/dnode3 to dnode4
...
@@ -523,3 +346,13 @@ print data00 $data00
...
@@ -523,3 +346,13 @@ print data00 $data00
if $data00 != $totalRows then
if $data00 != $totalRows then
return -1
return -1
endi
endi
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec.sh -n dnode4 -s stop -x SIGINT
system sh/exec.sh -n dnode5 -s stop -x SIGINT
system sh/exec.sh -n dnode6 -s stop -x SIGINT
system sh/exec.sh -n dnode7 -s stop -x SIGINT
system sh/exec.sh -n dnode8 -s stop -x SIGINT
tests/script/unique/arbitrator/dn3_mn1_replica_change_dropDnod.sim
浏览文件 @
5708590b
...
@@ -140,3 +140,11 @@ if $data00 != $totalRows then
...
@@ -140,3 +140,11 @@ if $data00 != $totalRows then
return -1
return -1
endi
endi
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec.sh -n dnode4 -s stop -x SIGINT
system sh/exec.sh -n dnode5 -s stop -x SIGINT
system sh/exec.sh -n dnode6 -s stop -x SIGINT
system sh/exec.sh -n dnode7 -s stop -x SIGINT
system sh/exec.sh -n dnode8 -s stop -x SIGINT
tests/script/unique/arbitrator/dn3_mn1_vnode_nomaster.sim
浏览文件 @
5708590b
...
@@ -158,13 +158,15 @@ if $dnode4Vtatus != offline then
...
@@ -158,13 +158,15 @@ if $dnode4Vtatus != offline then
sleep 2000
sleep 2000
goto wait_dnode4_vgroup_offline
goto wait_dnode4_vgroup_offline
endi
endi
if $dnode3Vtatus !=
unsynced
then
if $dnode3Vtatus !=
master
then
sleep 2000
sleep 2000
goto wait_dnode4_vgroup_offline
goto wait_dnode4_vgroup_offline
endi
endi
sql_error select count(*) from $stb
sql select count(*) from $stb -x s31
sql_error insert into $tb values (now, 9988)
s31:
#sql_error insert into $tb values (now, 9988) -x s32
#s32:
print ============== step4: restart dnode2, then create database with replica 2, and create table, insert data
print ============== step4: restart dnode2, then create database with replica 2, and create table, insert data
system sh/exec.sh -n dnode2 -s start
system sh/exec.sh -n dnode2 -s start
...
...
tests/script/unique/arbitrator/sync_replica3_alterTable_add.sim
浏览文件 @
5708590b
...
@@ -140,11 +140,9 @@ if $rows != 1 then
...
@@ -140,11 +140,9 @@ if $rows != 1 then
goto wait_dnode4_vgroup_offline
goto wait_dnode4_vgroup_offline
endi
endi
print show vgroups:
print show vgroups:
print $data0_1 $data1_1 $data2_1 $data3_1 $data4_1 $data5_1 $data6_1 $data7_1 $data8_1 $data9_1
print $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09
print $data0_2 $data1_2 $data2_2 $data3_2 $data4_2 $data5_2 $data6_2 $data7_2 $data8_2 $data9_2
$dnode4Vtatus = $data05
print $data0_3 $data1_3 $data2_3 $data3_3 $data4_3 $data5_3 $data6_3 $data7_3 $data8_3 $data9_3
$dnode3Vtatus = $data07
$dnode4Vtatus = $data5_2
$dnode3Vtatus = $data7_2
if $dnode4Vtatus != offline then
if $dnode4Vtatus != offline then
sleep 2000
sleep 2000
...
@@ -198,7 +196,3 @@ if $data00 != $totalRows then
...
@@ -198,7 +196,3 @@ if $data00 != $totalRows then
sleep 2000
sleep 2000
goto wait_table_altered
goto wait_table_altered
endi
endi
tests/script/unique/arbitrator/sync_replica_alterTable_background_add.sim
浏览文件 @
5708590b
...
@@ -14,6 +14,9 @@ sql alter table $stb add column f1 float
...
@@ -14,6 +14,9 @@ sql alter table $stb add column f1 float
$tblNum = $totalTableNum
$tblNum = $totalTableNum
$alterTblNum = 10
$alterTblNum = 10
sql reset query cache
sleep 100
$i = 1
$i = 1
while $i < $alterTblNum
while $i < $alterTblNum
$tb = tb . $i
$tb = tb . $i
...
...
tests/script/unique/big/balance.sim
浏览文件 @
5708590b
...
@@ -21,7 +21,6 @@ system sh/cfg.sh -n dnode5 -c maxTablesPerVnode -v 1000
...
@@ -21,7 +21,6 @@ system sh/cfg.sh -n dnode5 -c maxTablesPerVnode -v 1000
print =============== prepare data
print =============== prepare data
system sh/exec.sh -n dnode1 -s start
system sh/exec.sh -n dnode1 -s start
sleep 3000
sql connect
sql connect
$i = 0
$i = 0
...
@@ -92,8 +91,8 @@ system sh/exec.sh -n dnode2 -s start
...
@@ -92,8 +91,8 @@ system sh/exec.sh -n dnode2 -s start
$x = 0
$x = 0
show1:
show1:
$x = $x + 1
$x = $x + 1
sleep
3
000
sleep
1
000
if $x ==
1
0 then
if $x ==
3
0 then
return -1
return -1
endi
endi
...
@@ -108,7 +107,7 @@ if $data2_2 != 2 then
...
@@ -108,7 +107,7 @@ if $data2_2 != 2 then
endi
endi
sql reset query cache
sql reset query cache
sleep 100
0
sleep 100
sql select count(*) from t10
sql select count(*) from t10
print select count(*) from t10 $data00 expect $rowNum
print select count(*) from t10 $data00 expect $rowNum
...
@@ -143,7 +142,6 @@ endi
...
@@ -143,7 +142,6 @@ endi
print ========== step2
print ========== step2
sql create dnode $hostname3
sql create dnode $hostname3
system sh/exec.sh -n dnode3 -s start
system sh/exec.sh -n dnode3 -s start
sleep 10000
print ========== step3
print ========== step3
sql drop dnode $hostname2
sql drop dnode $hostname2
...
@@ -151,8 +149,8 @@ sql drop dnode $hostname2
...
@@ -151,8 +149,8 @@ sql drop dnode $hostname2
$x = 0
$x = 0
show3:
show3:
$x = $x + 1
$x = $x + 1
sleep
3
000
sleep
1
000
if $x ==
1
0 then
if $x ==
3
0 then
return -1
return -1
endi
endi
...
@@ -171,10 +169,9 @@ if $data2_3 != 2 then
...
@@ -171,10 +169,9 @@ if $data2_3 != 2 then
endi
endi
system sh/exec.sh -n dnode2 -s stop -x SIGINT
system sh/exec.sh -n dnode2 -s stop -x SIGINT
sleep 5000
sql reset query cache
sql reset query cache
sleep 100
0
sleep 100
sql select count(*) from t10
sql select count(*) from t10
print select count(*) from t10 $data00 expect $rowNum
print select count(*) from t10 $data00 expect $rowNum
...
@@ -212,8 +209,8 @@ sql drop dnode $hostname3
...
@@ -212,8 +209,8 @@ sql drop dnode $hostname3
$x = 0
$x = 0
show4:
show4:
$x = $x + 1
$x = $x + 1
sleep
3
000
sleep
1
000
if $x ==
1
0 then
if $x ==
3
0 then
return -1
return -1
endi
endi
...
@@ -228,10 +225,9 @@ if $data2_3 != null then
...
@@ -228,10 +225,9 @@ if $data2_3 != null then
endi
endi
system sh/exec.sh -n dnode3 -s stop -x SIGINT
system sh/exec.sh -n dnode3 -s stop -x SIGINT
sleep 5000
sql reset query cache
sql reset query cache
sleep 100
0
sleep 100
sql select count(*) from t10
sql select count(*) from t10
print select count(*) from t10 $data00 expect $rowNum
print select count(*) from t10 $data00 expect $rowNum
...
@@ -267,14 +263,31 @@ print ========== step5
...
@@ -267,14 +263,31 @@ print ========== step5
system sh/exec.sh -n dnode4 -s start
system sh/exec.sh -n dnode4 -s start
sql create dnode $hostname4
sql create dnode $hostname4
sleep 3000
$x = 0
step5:
$x = $x + 1
sleep 1000
if $x == 10 then
return -1
endi
sql show dnodes
print dnode1 $data4_1
print dnode2 $data4_2
print dnode3 $data4_3
print dnode4 $data4_4
if $data4_4 != ready then
goto step5
endi
sql alter database db replica 2
sql alter database db replica 2
$x = 0
$x = 0
show5:
show5:
$x = $x + 1
$x = $x + 1
sleep
3
000
sleep
1
000
if $x ==
1
0 then
if $x ==
3
0 then
return -1
return -1
endi
endi
...
@@ -289,7 +302,7 @@ if $data2_4 != 4 then
...
@@ -289,7 +302,7 @@ if $data2_4 != 4 then
endi
endi
sql reset query cache
sql reset query cache
sleep 100
0
sleep 100
sql select count(*) from t10
sql select count(*) from t10
print select count(*) from t10 $data00 expect $rowNum
print select count(*) from t10 $data00 expect $rowNum
...
@@ -321,16 +334,14 @@ if $data00 != $totalNum then
...
@@ -321,16 +334,14 @@ if $data00 != $totalNum then
goto show5
goto show5
endi
endi
print ========== step6
print ========== step6
sleep 3000
sql alter database db replica 1
sql alter database db replica 1
$x = 0
$x = 0
show6:
show6:
$x = $x + 1
$x = $x + 1
sleep
3
000
sleep
1
000
if $x ==
1
0 then
if $x ==
3
0 then
return -1
return -1
endi
endi
...
@@ -345,7 +356,7 @@ if $data2_4 != 2 then
...
@@ -345,7 +356,7 @@ if $data2_4 != 2 then
endi
endi
sql reset query cache
sql reset query cache
sleep 100
0
sleep 100
sql select count(*) from t10
sql select count(*) from t10
print select count(*) from t10 $data00 expect $rowNum
print select count(*) from t10 $data00 expect $rowNum
...
...
tests/script/unique/big/tcp.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/cluster/balance1.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/cluster/balance2.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/cluster/balance3.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/cluster/vgroup100.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/db/delete.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/db/delete_part.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/db/replica_add12.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/db/replica_add13.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/db/replica_add23.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/db/replica_part.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/db/replica_reduce21.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/db/replica_reduce31.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/db/replica_reduce32.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/dnode/balance1.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/dnode/balance2.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/dnode/balance3.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/dnode/offline3.sim
0 → 100644
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/dnode/reason.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/dnode/remove1.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/dnode/remove2.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/dnode/vnode_clean.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/import/replica2.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/import/replica3.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/mnode/mgmt20.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/mnode/mgmt22.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/mnode/mgmt23.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/mnode/mgmt33.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/mnode/mgmt34.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/mnode/mgmtr2.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/vnode/many.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/vnode/replica2_repeat.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/vnode/replica3_basic.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/script/unique/vnode/replica3_repeat.sim
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
tests/test-all.sh
浏览文件 @
5708590b
此差异已折叠。
点击以展开。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录