Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
b636d216
T
TDengine
项目概览
taosdata
/
TDengine
大约 1 年 前同步成功
通知
1184
Star
22015
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
b636d216
编写于
11月 04, 2020
作者:
W
wangyazhou1313
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add testcase for update
上级
9c289dd7
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
806 addition
and
153 deletion
+806
-153
tests/pytest/query/kill_query.py
tests/pytest/query/kill_query.py
+70
-0
tests/pytest/update/merge_commit_data2.py
tests/pytest/update/merge_commit_data2.py
+352
-153
tests/pytest/update/merge_commit_data2_update0.py
tests/pytest/update/merge_commit_data2_update0.py
+384
-0
未找到文件。
tests/pytest/query/kill_query.py
0 → 100644
浏览文件 @
b636d216
###################################################################
# Copyright (c) 2016 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# -*- coding: utf-8 -*-
import
sys
import
taos
from
util.log
import
tdLog
from
util.cases
import
tdCases
from
util.sql
import
tdSql
from
util.dnodes
import
tdDnodes
class
TDTestCase
:
"""
kill query
"""
def
init
(
self
,
conn
,
logSql
):
tdLog
.
debug
(
"start to execute %s"
%
__file__
)
tdSql
.
init
(
conn
.
cursor
(),
logSql
)
def
run
(
self
):
tdSql
.
prepare
()
print
(
"==============step1"
)
tdSql
.
execute
(
"create database if not exists demo;"
);
tdSql
.
execute
(
"use demo;"
)
tdSql
.
execute
(
"CREATE TABLE IF NOT EXISTS demo1 (ts TIMESTAMP, f1 int);"
)
ts
=
1300000000000
for
i
in
range
(
1000
):
tdSql
.
execute
(
" insert into demo1 values({ts}, {data});"
.
format
(
ts
=
ts
,
data
=
i
))
ts
+=
1
print
(
"==============insert into test1 and test2 form test file"
)
print
(
"==============step2"
)
while
True
:
tdSql
.
query
(
'select * from demo1;'
)
print
(
'=============='
,
len
(
tdSql
.
queryResult
))
with
open
(
ordered_csv
)
as
f1
:
num1
=
len
(
f1
.
readlines
())
tdSql
.
checkRows
(
num1
)
tdSql
.
query
(
'select * from test2;'
)
with
open
(
disordered_csv
)
as
f2
:
num2
=
len
(
f2
.
readlines
())
tdSql
.
checkRows
(
num2
)
print
(
"=============execute select count(*) from xxx"
)
def
stop
(
self
):
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdCases
.
addWindows
(
__file__
,
TDTestCase
())
tdCases
.
addLinux
(
__file__
,
TDTestCase
())
tests/pytest/update/merge_commit_data2.py
浏览文件 @
b636d216
# clear env set up
$
t0
=
1603152000000
create
database
db
update
1
days
30
;
## Step 1. UPDATE TWO WHOLE DATA BLOCK REPEATEDLY
create
table
t1
(
ts
timestamp
,
a
int
);
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t1
values
(
$
t0
+
$
i
,
1
);
}
restart
to
commit
check
query
result
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t1
values
(
$
t0
+
5000
+
$
i
,
1
);
}
check
query
result
restart
to
commit
check
query
result
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t1
values
(
$
t0
+
$
i
,
2
);
}
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t1
values
(
$
t0
+
5000
+
$
i
,
1
);
}
check
query
result
restart
to
commit
check
query
result
## Step 2. INSERT IN MIDDLE LITTLE DATA REPEATEDLY
create
table
t2
(
ts
timestamp
,
a
int
);
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t2
values
(
$
t0
+
$
i
,
1
);
}
restart
to
commit
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t2
values
(
$
t0
+
5000
+
$
i
,
1
);
}
restart
to
commit
for
(
$
k
=
0
;
$
k
<
10
;
$
k
++
)
{
for
(
$
i
=
0
;
$
i
<
10
;
$
i
++
)
{
insert
into
t2
values
(
$
t0
+
200
+
$
k
*
10
+
$
i
,
1
);
}
check
query
result
restart
to
commit
check
query
result
}
## Step 3. INSERT IN MIDDLE AND UPDATE TWO BLOCKS
create
table
t3
(
ts
timestamp
,
a
int
);
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t3
values
(
$
t0
+
$
i
,
1
);
}
restart
to
commit
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t3
values
(
$
t0
+
5000
+
$
i
,
1
);
}
restart
to
commit
for
(
$
i
=
0
;
$
i
<
5200
;
$
i
++
)
{
insert
into
t3
values
(
$
t0
+
$
i
,
2
);
}
check
query
result
restart
to
commit
check
query
result
## Step 4. INSERT IN MIDDLE AND UPDATE FIRST HALF OF TWO BLOCKS
create
table
t4
(
ts
timestamp
,
a
int
);
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t4
values
(
$
t0
+
$
i
,
1
);
}
restart
to
commit
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t4
values
(
$
t0
+
5000
+
$
i
,
1
);
}
restart
to
commit
for
(
$
i
=
0
;
$
i
<
100
;
$
i
++
)
{
insert
into
t4
values
(
$
t0
+
$
i
,
2
);
}
for
(
$
i
=
200
;
$
i
<
5000
;
$
i
++
)
{
insert
into
t4
values
(
$
t0
+
$
i
,
2
);
}
for
(
$
i
=
0
;
$
i
<
100
;
$
i
++
)
{
insert
into
t4
values
(
$
t0
+
5000
+
$
i
,
2
);
}
check
query
result
restart
to
commit
check
query
result
## Step 5. INSERT IN MIDDLE AND UPDATE last HALF OF TWO BLOCKS
create
table
t5
(
ts
timestamp
,
a
int
);
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t5
values
(
$
t0
+
$
i
,
1
);
}
restart
to
commit
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t5
values
(
$
t0
+
5000
+
$
i
,
1
);
}
restart
to
commit
for
(
$
i
=
100
;
$
i
<
200
;
$
i
++
)
{
insert
into
t5
values
(
$
t0
+
$
i
,
2
);
}
for
(
$
i
=
200
;
$
i
<
5000
;
$
i
++
)
{
insert
into
t5
values
(
$
t0
+
$
i
,
2
);
}
for
(
$
i
=
100
;
$
i
<
200
;
$
i
++
)
{
insert
into
t5
values
(
$
t0
+
5000
+
$
i
,
2
);
}
check
query
result
restart
to
commit
check
query
result
## Step 6. INSERT MASSIVE DATA AND UPDATE ALL BLOCKS
create
table
t6
(
ts
timestamp
,
a
int
);
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t6
values
(
$
t0
+
$
i
,
1
);
}
restart
to
commit
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t6
values
(
$
t0
+
5000
+
$
i
,
1
);
}
restart
to
commit
for
(
$
i
=
-
1000
;
$
i
<
10000
;
$
i
++
)
{
insert
into
t6
values
(
$
t0
+
$
i
,
2
);
}
check
query
result
restart
to
commit
check
query
result
## Step 7. SPLIT DATA BLOCK
create
table
t7
(
ts
timestamp
,
a
int
);
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t7
values
(
$
t0
+
$
i
,
1
);
}
for
(
$
i
=
0
;
$
i
<
200
;
$
i
++
)
{
insert
into
t7
values
(
$
t0
+
5000
+
$
i
,
1
);
}
restart
to
commit
for
(
$
i
=
-
1000
;
$
i
<
10000
;
$
i
++
)
{
insert
into
t7
values
(
$
t0
+
$
i
,
2
);
}
check
query
result
restart
to
commit
check
query
result
\ No newline at end of file
###################################################################
# Copyright (c) 2016 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# -*- coding: utf-8 -*-
import
sys
from
util.log
import
*
from
util.cases
import
*
from
util.sql
import
*
from
util.dnodes
import
*
import
time
class
TDTestCase
:
def
init
(
self
,
conn
,
logSql
):
tdLog
.
debug
(
"start to execute %s"
%
__file__
)
tdSql
.
init
(
conn
.
cursor
(),
logSql
)
def
restart_taosd
(
self
,
db
):
tdDnodes
.
stop
(
1
)
tdDnodes
.
startWithoutSleep
(
1
)
tdSql
.
execute
(
"use %s;"
%
db
)
def
date_to_timestamp_microseconds
(
self
,
date
):
datetime_obj
=
datetime
.
strptime
(
date
,
"%Y-%m-%d %H:%M:%S.%f"
)
obj_stamp
=
int
(
time
.
mktime
(
datetime_obj
.
timetuple
())
*
1000.0
+
datetime_obj
.
microsecond
/
1000.0
)
return
obj_stamp
def
timestamp_microseconds_to_date
(
self
,
timestamp
):
d
=
datetime
.
datetime
.
fromtimestamp
(
timestamp
/
1000
)
str1
=
d
.
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
return
str1
def
run
(
self
):
print
(
"==========step1"
)
print
(
"create table && insert data"
)
sql
=
'reset query cache'
tdSql
.
execute
(
sql
)
sql
=
'drop database if exists db'
tdSql
.
execute
(
sql
)
sql
=
'create database db update 1 days 30;'
tdSql
.
execute
(
sql
)
sql
=
'use db;'
tdSql
.
execute
(
sql
)
tdSql
.
execute
(
'create table t1 (ts timestamp, a int)'
)
print
(
"==================================1 start"
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t1 values (%d , 1)'
%
(
t0
+
i
))
print
(
"==========step2"
)
print
(
"restart to commit "
)
self
.
restart_taosd
(
'db'
)
print
(
'check query result after restart'
)
tdSql
.
query
(
'select * from db.t1;'
)
for
i
in
range
(
insert_rows
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
"==========step3"
)
print
(
'insert data'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t1 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t1;'
)
for
i
in
range
(
insert_rows
,
insert_rows
*
2
):
tdSql
.
checkData
(
i
,
1
,
1
)
self
.
restart_taosd
(
'db'
)
print
(
'check query result after restart'
)
tdSql
.
query
(
'select * from db.t1;'
)
for
i
in
range
(
insert_rows
,
insert_rows
*
2
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
"==========step4"
)
print
(
'insert data'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t1 values (%d , 2)'
%
(
t0
+
i
))
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t1 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t1;'
)
print
(
tdSql
.
queryResult
)
for
i
in
range
(
insert_rows
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
insert_rows
,
insert_rows
*
2
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
'check query result after restart'
)
self
.
restart_taosd
(
'db'
)
tdSql
.
query
(
'select * from db.t1;'
)
# print(tdSql.queryResult)
for
i
in
range
(
insert_rows
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
insert_rows
,
insert_rows
*
2
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
"==================================2 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t2 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t2 values (%d , 1)'
%
(
t0
+
i
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t2 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
k
in
range
(
10
):
for
i
in
range
(
10
):
tdSql
.
execute
(
'insert into t2 values (%d , 1)'
%
(
t0
+
200
+
k
*
10
+
i
))
print
(
'insert into t2 values (%d , 1)'
%
(
t0
+
200
+
k
*
10
+
i
))
print
(
"==========step2"
)
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t2;'
)
for
i
in
range
(
insert_rows
*
2
+
100
):
tdSql
.
checkData
(
i
,
1
,
1
)
# print(tdSql.queryResult)
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
print
(
'check query result after restart'
)
tdSql
.
query
(
'select * from db.t2;'
)
for
i
in
range
(
insert_rows
*
2
+
100
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
"==================================3 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t3 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t3 values (%d , 1)'
%
(
t0
+
i
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t3 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
5200
):
tdSql
.
execute
(
'insert into t3 values (%d , 2)'
%
(
t0
+
i
))
print
(
"==========step2"
)
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t3;'
)
for
i
in
range
(
5200
):
tdSql
.
checkData
(
i
,
1
,
2
)
# print(tdSql.queryResult)
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
print
(
'check query result after restart'
)
tdSql
.
query
(
'select * from db.t3;'
)
for
i
in
range
(
5200
):
tdSql
.
checkData
(
i
,
1
,
2
)
print
(
"==================================4 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t4 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t4 values (%d , 1)'
%
(
t0
+
i
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t4 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
100
):
tdSql
.
execute
(
'insert into t4 values (%d , 2)'
%
(
t0
+
i
))
for
i
in
range
(
200
,
5000
):
tdSql
.
execute
(
'insert into t4 values (%d , 2)'
%
(
t0
+
i
))
for
i
in
range
(
100
):
tdSql
.
execute
(
'insert into t4 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t4;'
)
for
i
in
range
(
100
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
100
,
200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
200
,
5000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
5000
,
5200
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
'check query result after restart'
)
self
.
restart_taosd
(
'db'
)
tdSql
.
query
(
'select * from db.t4;'
)
for
i
in
range
(
100
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
100
,
200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
200
,
5000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
5000
,
5200
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
"==================================5 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t5 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t5 values (%d , 1)'
%
(
t0
+
i
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t5 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
100
,
200
):
tdSql
.
execute
(
'insert into t5 values (%d , 2)'
%
(
t0
+
i
))
for
i
in
range
(
200
,
5000
):
tdSql
.
execute
(
'insert into t5 values (%d , 2)'
%
(
t0
+
i
))
for
i
in
range
(
100
,
200
):
tdSql
.
execute
(
'insert into t5 values (%d , 2)'
%
(
t0
+
i
+
5000
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t5;'
)
for
i
in
range
(
100
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
100
,
5000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
5000
,
5100
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
5100
,
5200
):
tdSql
.
checkData
(
i
,
1
,
2
)
print
(
'check query result after restart'
)
self
.
restart_taosd
(
'db'
)
tdSql
.
query
(
'select * from db.t5;'
)
for
i
in
range
(
100
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
100
,
5000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
5000
,
5100
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
5100
,
5200
):
tdSql
.
checkData
(
i
,
1
,
2
)
print
(
"==================================6 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t6 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t6 values (%d , 1)'
%
(
t0
+
i
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t6 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
-
1000
,
10000
):
tdSql
.
execute
(
'insert into t6 values (%d , 2)'
%
(
t0
+
i
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t6;'
)
tdSql
.
checkRows
(
11000
)
for
i
in
range
(
11000
):
tdSql
.
checkData
(
i
,
1
,
2
)
print
(
'check query result after restart'
)
self
.
restart_taosd
(
'db'
)
tdSql
.
query
(
'select * from db.t6;'
)
tdSql
.
checkRows
(
11000
)
for
i
in
range
(
11000
):
tdSql
.
checkData
(
i
,
1
,
2
)
print
(
"==================================7 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t7 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t7 values (%d , 1)'
%
(
t0
+
i
))
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t7 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
-
1000
,
10000
):
tdSql
.
execute
(
'insert into t7 values (%d , 2)'
%
(
t0
+
i
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t7;'
)
tdSql
.
checkRows
(
11000
)
for
i
in
range
(
11000
):
tdSql
.
checkData
(
i
,
1
,
2
)
print
(
'check query result after restart'
)
self
.
restart_taosd
(
'db'
)
tdSql
.
query
(
'select * from db.t7;'
)
tdSql
.
checkRows
(
11000
)
for
i
in
range
(
11000
):
tdSql
.
checkData
(
i
,
1
,
2
)
def
stop
(
self
):
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdCases
.
addWindows
(
__file__
,
TDTestCase
())
tdCases
.
addLinux
(
__file__
,
TDTestCase
())
tests/pytest/update/merge_commit_data2_update0.py
0 → 100644
浏览文件 @
b636d216
###################################################################
# Copyright (c) 2016 by TAOS Technologies, Inc.
# All rights reserved.
#
# This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
# disclosed or used in any form or by any means other than as
# expressly provided by the written permission from Jianhui Tao
#
###################################################################
# -*- coding: utf-8 -*-
import
sys
from
util.log
import
*
from
util.cases
import
*
from
util.sql
import
*
from
util.dnodes
import
*
import
time
class
TDTestCase
:
def
init
(
self
,
conn
,
logSql
):
tdLog
.
debug
(
"start to execute %s"
%
__file__
)
tdSql
.
init
(
conn
.
cursor
(),
logSql
)
def
restart_taosd
(
self
,
db
):
tdDnodes
.
stop
(
1
)
tdDnodes
.
startWithoutSleep
(
1
)
tdSql
.
execute
(
"use %s;"
%
db
)
def
date_to_timestamp_microseconds
(
self
,
date
):
datetime_obj
=
datetime
.
strptime
(
date
,
"%Y-%m-%d %H:%M:%S.%f"
)
obj_stamp
=
int
(
time
.
mktime
(
datetime_obj
.
timetuple
())
*
1000.0
+
datetime_obj
.
microsecond
/
1000.0
)
return
obj_stamp
def
timestamp_microseconds_to_date
(
self
,
timestamp
):
d
=
datetime
.
datetime
.
fromtimestamp
(
timestamp
/
1000
)
str1
=
d
.
strftime
(
"%Y-%m-%d %H:%M:%S.%f"
)
return
str1
def
run
(
self
):
print
(
"==========step1"
)
print
(
"create table && insert data"
)
sql
=
'reset query cache'
tdSql
.
execute
(
sql
)
sql
=
'drop database if exists db'
tdSql
.
execute
(
sql
)
sql
=
'create database db update 0 days 30;'
tdSql
.
execute
(
sql
)
sql
=
'use db;'
tdSql
.
execute
(
sql
)
tdSql
.
execute
(
'create table t1 (ts timestamp, a int)'
)
print
(
"==================================1 start"
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t1 values (%d , 1)'
%
(
t0
+
i
))
print
(
"==========step2"
)
print
(
"restart to commit "
)
self
.
restart_taosd
(
'db'
)
print
(
'check query result after restart'
)
tdSql
.
query
(
'select * from db.t1;'
)
for
i
in
range
(
insert_rows
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
"==========step3"
)
print
(
'insert data'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t1 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t1;'
)
for
i
in
range
(
insert_rows
,
insert_rows
*
2
):
tdSql
.
checkData
(
i
,
1
,
1
)
self
.
restart_taosd
(
'db'
)
print
(
'check query result after restart'
)
tdSql
.
query
(
'select * from db.t1;'
)
for
i
in
range
(
insert_rows
,
insert_rows
*
2
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
"==========step4"
)
print
(
'insert data'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t1 values (%d , 2)'
%
(
t0
+
i
))
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t1 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t1;'
)
print
(
tdSql
.
queryResult
)
for
i
in
range
(
insert_rows
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
insert_rows
,
insert_rows
*
2
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
'check query result after restart'
)
self
.
restart_taosd
(
'db'
)
tdSql
.
query
(
'select * from db.t1;'
)
# print(tdSql.queryResult)
for
i
in
range
(
insert_rows
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
insert_rows
,
insert_rows
*
2
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
"==================================2 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t2 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t2 values (%d , 1)'
%
(
t0
+
i
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t2 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
k
in
range
(
10
):
for
i
in
range
(
10
):
tdSql
.
execute
(
'insert into t2 values (%d , 1)'
%
(
t0
+
200
+
k
*
10
+
i
))
# print('insert into t2 values (%d , 1)' %(t0 + 200 + k * 10 + i))
print
(
"==========step2"
)
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t2;'
)
for
i
in
range
(
insert_rows
*
2
+
100
):
tdSql
.
checkData
(
i
,
1
,
1
)
# print(tdSql.queryResult)
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
print
(
'check query result after restart'
)
tdSql
.
query
(
'select * from db.t2;'
)
for
i
in
range
(
insert_rows
*
2
+
100
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
"==================================3 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t3 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t3 values (%d , 1)'
%
(
t0
+
i
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t3 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
5200
):
tdSql
.
execute
(
'insert into t3 values (%d , 2)'
%
(
t0
+
i
))
print
(
"==========step2"
)
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t3;'
)
for
i
in
range
(
200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
200
,
5000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
5000
,
5200
):
tdSql
.
checkData
(
i
,
1
,
1
)
# print(tdSql.queryResult)
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
print
(
'check query result after restart'
)
tdSql
.
query
(
'select * from db.t3;'
)
for
i
in
range
(
200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
200
,
5000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
5000
,
5200
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
"==================================4 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t4 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t4 values (%d , 1)'
%
(
t0
+
i
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t4 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
100
):
tdSql
.
execute
(
'insert into t4 values (%d , 2)'
%
(
t0
+
i
))
for
i
in
range
(
200
,
5000
):
tdSql
.
execute
(
'insert into t4 values (%d , 2)'
%
(
t0
+
i
))
for
i
in
range
(
100
):
tdSql
.
execute
(
'insert into t4 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t4;'
)
for
i
in
range
(
200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
200
,
5000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
5000
,
5200
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
'check query result after restart'
)
self
.
restart_taosd
(
'db'
)
tdSql
.
query
(
'select * from db.t4;'
)
for
i
in
range
(
200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
200
,
5000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
5000
,
5200
):
tdSql
.
checkData
(
i
,
1
,
1
)
#
print
(
"==================================5 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t5 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t5 values (%d , 1)'
%
(
t0
+
i
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t5 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
100
,
200
):
tdSql
.
execute
(
'insert into t5 values (%d , 2)'
%
(
t0
+
i
))
for
i
in
range
(
200
,
5000
):
tdSql
.
execute
(
'insert into t5 values (%d , 2)'
%
(
t0
+
i
))
for
i
in
range
(
100
,
200
):
tdSql
.
execute
(
'insert into t5 values (%d , 2)'
%
(
t0
+
i
+
5000
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t5;'
)
for
i
in
range
(
200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
200
,
5000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
5000
,
5200
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
'check query result after restart'
)
self
.
restart_taosd
(
'db'
)
tdSql
.
query
(
'select * from db.t5;'
)
for
i
in
range
(
200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
200
,
5000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
5000
,
5200
):
tdSql
.
checkData
(
i
,
1
,
1
)
print
(
"==================================6 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t6 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t6 values (%d , 1)'
%
(
t0
+
i
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t6 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
-
1000
,
10000
):
tdSql
.
execute
(
'insert into t6 values (%d , 2)'
%
(
t0
+
i
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t6;'
)
tdSql
.
checkRows
(
11000
)
for
i
in
range
(
1000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
1000
,
1200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
1200
,
6000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
6000
,
6200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
6200
,
11000
):
tdSql
.
checkData
(
i
,
1
,
2
)
print
(
'check query result after restart'
)
self
.
restart_taosd
(
'db'
)
tdSql
.
query
(
'select * from db.t6;'
)
tdSql
.
checkRows
(
11000
)
for
i
in
range
(
1000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
1000
,
1200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
1200
,
6000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
6000
,
6200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
6200
,
11000
):
tdSql
.
checkData
(
i
,
1
,
2
)
print
(
"==================================7 start"
)
print
(
"==========step1"
)
print
(
"create table && insert data"
)
tdSql
.
execute
(
'create table t7 (ts timestamp, a int)'
)
insert_rows
=
200
t0
=
1603152000000
tdLog
.
info
(
"insert %d rows"
%
insert_rows
)
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t7 values (%d , 1)'
%
(
t0
+
i
))
for
i
in
range
(
insert_rows
):
tdSql
.
execute
(
'insert into t7 values (%d , 1)'
%
(
t0
+
i
+
5000
))
print
(
'restart to commit'
)
self
.
restart_taosd
(
'db'
)
for
i
in
range
(
-
1000
,
10000
):
tdSql
.
execute
(
'insert into t7 values (%d , 2)'
%
(
t0
+
i
))
print
(
'check query result before restart'
)
tdSql
.
query
(
'select * from db.t7;'
)
tdSql
.
checkRows
(
11000
)
for
i
in
range
(
1000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
1000
,
1200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
1200
,
6000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
6000
,
6200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
6200
,
11000
):
tdSql
.
checkData
(
i
,
1
,
2
)
print
(
'check query result after restart'
)
self
.
restart_taosd
(
'db'
)
tdSql
.
query
(
'select * from db.t7;'
)
tdSql
.
checkRows
(
11000
)
for
i
in
range
(
1000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
1000
,
1200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
1200
,
6000
):
tdSql
.
checkData
(
i
,
1
,
2
)
for
i
in
range
(
6000
,
6200
):
tdSql
.
checkData
(
i
,
1
,
1
)
for
i
in
range
(
6200
,
11000
):
tdSql
.
checkData
(
i
,
1
,
2
)
def
stop
(
self
):
tdSql
.
close
()
tdLog
.
success
(
"%s successfully executed"
%
__file__
)
tdCases
.
addWindows
(
__file__
,
TDTestCase
())
tdCases
.
addLinux
(
__file__
,
TDTestCase
())
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录