提交 149d630f 编写于 作者: H Hui Li

Merge branch 'feature/update_test' of https://github.com/taosdata/TDengine into feature/update_test

...@@ -267,8 +267,8 @@ typedef struct { ...@@ -267,8 +267,8 @@ typedef struct {
#define keyCol(pCols) (&((pCols)->cols[0])) // Key column #define keyCol(pCols) (&((pCols)->cols[0])) // Key column
#define dataColsTKeyAt(pCols, idx) ((TKEY *)(keyCol(pCols)->pData))[(idx)] #define dataColsTKeyAt(pCols, idx) ((TKEY *)(keyCol(pCols)->pData))[(idx)]
#define dataColsKeyAt(pCols, idx) tdGetKey(dataColsTKeyAt(pCols, idx)) #define dataColsKeyAt(pCols, idx) tdGetKey(dataColsTKeyAt(pCols, idx))
#define dataColsTKeyFirst(pCols) ((pCols)->numOfRows == 0) ? TKEY_INVALID : dataColsTKeyAt(pCols, 0) #define dataColsTKeyFirst(pCols) (((pCols)->numOfRows == 0) ? TKEY_INVALID : dataColsTKeyAt(pCols, 0))
#define dataColsKeyFirst(pCols) ((pCols)->numOfRows == 0) ? TSDB_DATA_TIMESTAMP_NULL : dataColsKeyAt(pCols, 0) #define dataColsKeyFirst(pCols) (((pCols)->numOfRows == 0) ? TSDB_DATA_TIMESTAMP_NULL : dataColsKeyAt(pCols, 0))
#define dataColsTKeyLast(pCols) \ #define dataColsTKeyLast(pCols) \
(((pCols)->numOfRows == 0) ? TKEY_INVALID : dataColsTKeyAt(pCols, (pCols)->numOfRows - 1)) (((pCols)->numOfRows == 0) ? TKEY_INVALID : dataColsTKeyAt(pCols, (pCols)->numOfRows - 1))
#define dataColsKeyLast(pCols) \ #define dataColsKeyLast(pCols) \
......
...@@ -46,9 +46,7 @@ class TDTestCase: ...@@ -46,9 +46,7 @@ class TDTestCase:
print("==========step2") print("==========step2")
print("restart to commit ") print("restart to commit ")
tdDnodes.stop(1) tdDnodes.stop(1)
time.sleep(5)
tdDnodes.start(1) tdDnodes.start(1)
time.sleep(5)
tdSql.query("select * from db.t1") tdSql.query("select * from db.t1")
tdSql.checkRows(insertRows) tdSql.checkRows(insertRows)
for k in range(0,100): for k in range(0,100):
...@@ -59,11 +57,9 @@ class TDTestCase: ...@@ -59,11 +57,9 @@ class TDTestCase:
(t0+k*200+i) (t0+k*200+i)
) )
tdDnodes.stop(1) tdDnodes.stop(1)
time.sleep(5)
tdDnodes.start(1) tdDnodes.start(1)
time.sleep(5)
tdSql.query("select * from db.t1") tdSql.query("select * from db.t1")
tdSql.checkRows(insertRows+200*(k+1)) tdSql.checkRows(insertRows+200*k)
print("==========step2") print("==========step2")
print("insert into another table ") print("insert into another table ")
s = 'use db' s = 'use db'
...@@ -75,9 +71,7 @@ class TDTestCase: ...@@ -75,9 +71,7 @@ class TDTestCase:
'insert into t2 values (%d, 1)' % 'insert into t2 values (%d, 1)' %
(t0+i)) (t0+i))
tdDnodes.stop(1) tdDnodes.stop(1)
time.sleep(5)
tdDnodes.start(1) tdDnodes.start(1)
time.sleep(5)
tdSql.query("select * from t2") tdSql.query("select * from t2")
tdSql.checkRows(insertRows) tdSql.checkRows(insertRows)
......
# clear env set up ###################################################################
# Copyright (c) 2016 by TAOS Technologies, Inc.
$t0 = 1603152000000 # All rights reserved.
#
create database db update 1 days 30; # This file is proprietary and confidential to TAOS Technologies.
# No part of this file may be reproduced, stored, transmitted,
## Step 1. UPDATE THE WHOLE DATA BLOCK REPEATEDLY # disclosed or used in any form or by any means other than as
create table t1 (ts timestamp, a int); # expressly provided by the written permission from Jianhui Tao
for ($i = 0; $i < 200; $i++) { #
insert into t1 values ($t0 + $i, 1); ###################################################################
}
# -*- coding: utf-8 -*-
restart to commit
check query result import sys
from util.log import *
for ($k = 0; $k < 10; $k++) { from util.cases import *
for ($i = 0; $i < 200; $i++) { from util.sql import *
insert into t1 values ($t0 + $i, 1); from util.dnodes import *
}
check query result class TDTestCase:
restart to commit def init(self, conn, logSql):
check query result tdLog.debug("start to execute %s" % __file__)
} tdSql.init(conn.cursor(), logSql)
## Step 2. PREPEND DATA def run(self):
create table t2 (ts timestamp, a int); print("==========step1")
for ($i = 0; $i < 200; $i++) { print("UPDATE THE WHOLE DATA BLOCK REPEATEDLY")
insert into t2 values ($t0 + $i, 1); s = 'reset query cache'
} tdSql.execute(s)
s = 'drop database if exists db'
restart to commit tdSql.execute(s)
check query result s = 'create database db update 1 days 30'
tdSql.execute(s)
for ($i = -100; $i < 0; $i++) { s = 'use db'
insert into t2 values ($t0 + $i, 1); tdSql.execute(s)
} ret = tdSql.execute('create table t1 (ts timestamp, a int)')
check query result insertRows = 200
restart to commit t0 = 1603152000000
check query result tdLog.info("insert %d rows" % (insertRows))
for i in range(0, insertRows):
## Step 3. PREPEND MASSIVE DATA ret = tdSql.execute(
create table t3 (ts timestamp, a int); 'insert into t1 values (%d , 1)' %
for ($i = 0; $i < 200; $i++) { (t0 + i))
insert into t3 values ($t0 + $i, 1); tdDnodes.stop(1)
} tdDnodes.start(1)
tdSql.query("select * from t1")
restart to commit tdSql.checkRows(insertRows)
check query result
for k in range(0,10):
for ($i = -6000; $i < 0; $i++) { for i in range (0,insertRows):
insert into t3 values ($t0 + $i, 1); ret = tdSql.execute(
} 'insert into t1 values(%d,1)' %
(t0+i)
check query result )
restart to commit tdSql.query("select * from t1")
check query result tdSql.checkRows(insertRows)
tdDnodes.stop(1)
## Step 4. APPEND DATA tdDnodes.start(1)
create table t4 (ts timestamp, a int); tdSql.query("select * from t1")
for ($i = 0; $i < 200; $i++) { tdSql.checkRows(insertRows)
insert into t4 values ($t0 + $i, 1); print("==========step2")
} print("PREPEND DATA ")
ret = tdSql.execute('create table t2 (ts timestamp, a int)')
restart to commit insertRows = 200
check query result for i in range(0, insertRows):
ret = tdSql.execute(
for ($i = 0; $i < 100; $i++) { 'insert into t2 values (%d , 1)' %
insert into t4 values ($t0 + 200 + $i, 1); (t0+i))
} tdSql.query("select * from t2")
tdSql.checkRows(insertRows)
check query result tdDnodes.stop(1)
restart to commit tdDnodes.start(1)
check query result tdSql.query("select * from t2")
tdSql.checkRows(insertRows)
## Step 5. APPEND MASSIVE DATA for i in range(-100,0):
create table t5 (ts timestamp, a int); ret = tdSql.execute(
for ($i = 0; $i < 200; $i++) { 'insert into t2 values (%d , 1)' %
insert into t5 values ($t0 + $i, 1); (t0+i))
} tdSql.query("select * from t2")
tdSql.checkRows(insertRows+100)
restart to commit tdDnodes.stop(1)
check query result tdDnodes.start(1)
tdSql.query("select * from t2")
for ($i = 0; $i < 6000; $i++) { tdSql.checkRows(insertRows+100)
insert into t5 values ($t0 + 200 + $i, 1); print("==========step3")
} print("PREPEND MASSIVE DATA ")
ret = tdSql.execute('create table t3 (ts timestamp, a int)')
check query result insertRows = 200
restart to commit for i in range(0, insertRows):
check query result ret = tdSql.execute(
'insert into t3 values (%d , 1)' %
## Step 6. UPDATE BLOCK IN TWO STEP (t0+i))
create table t6 (ts timestamp, a int); tdSql.query("select * from t3")
for ($i = 0; $i < 200; $i++) { tdSql.checkRows(insertRows)
insert into t6 values ($t0 + $i, 1); tdDnodes.stop(1)
} tdDnodes.start(1)
tdSql.query("select * from t3")
restart to commit tdSql.checkRows(insertRows)
check query result for i in range(-6000,0):
ret = tdSql.execute(
for ($i = 0; $i < 100; $i++) { 'insert into t3 values (%d , 1)' %
insert into t6 values ($t0 + $i, 2); (t0+i))
} tdSql.query("select * from t3")
tdSql.checkRows(insertRows+6000)
check query result tdDnodes.stop(1)
restart to commit tdDnodes.start(1)
check query result tdSql.query("select * from t3")
tdSql.checkRows(insertRows+6000)
for ($i = 100; $i < 200; $i++) { print("==========step4")
insert into t6 values ($t0 + $i, 2); print("APPEND DATA")
} ret = tdSql.execute('create table t4 (ts timestamp, a int)')
insertRows = 200
check query result for i in range(0, insertRows):
restart to commit ret = tdSql.execute(
check query result 'insert into t4 values (%d , 1)' %
(t0+i))
## Step 7. UPDATE LAST HALF AND INSERT LITTLE DATA tdSql.query("select * from t4")
create table t7 (ts timestamp, a int); tdSql.checkRows(insertRows)
for ($i = 0; $i < 200; $i++) { tdDnodes.stop(1)
insert into t7 values ($t0 + $i, 1); tdDnodes.start(1)
} tdSql.query("select * from t4")
tdSql.checkRows(insertRows)
restart to commit for i in range(0,100):
check query result ret = tdSql.execute(
'insert into t4 values (%d , 1)' %
for ($i = 100; $i < 300; $i++) { (t0+200+i))
insert into t7 values ($t0 + $i, 2); tdSql.query("select * from t4")
} tdSql.checkRows(insertRows+100)
tdDnodes.stop(1)
check query result tdDnodes.start(1)
restart to commit tdSql.query("select * from t4")
check query result tdSql.checkRows(insertRows+100)
print("==========step5")
## Step 8. UPDATE LAST HALF AND INSERT MASSIVE DATA print("APPEND DATA")
create table t8 (ts timestamp, a int); ret = tdSql.execute('create table t5 (ts timestamp, a int)')
for ($i = 0; $i < 200; $i++) { insertRows = 200
insert into t8 values ($t0 + $i, 1); for i in range(0, insertRows):
} ret = tdSql.execute(
'insert into t5 values (%d , 1)' %
restart to commit (t0+i))
check query result tdSql.query("select * from t5")
tdSql.checkRows(insertRows)
for ($i = 100; $i < 6000; $i++) { tdDnodes.stop(1)
insert into t8 values ($t0 + $i, 2); tdDnodes.start(1)
} tdSql.query("select * from t5")
tdSql.checkRows(insertRows)
check query result for i in range(0,6000):
restart to commit ret = tdSql.execute(
check query result 'insert into t5 values (%d , 1)' %
(t0+200+i))
## Step 9. UPDATE FIRST HALF AND PREPEND LITTLE DATA tdSql.query("select * from t5")
create table t9 (ts timestamp, a int); tdSql.checkRows(insertRows+6000)
for ($i = 0; $i < 200; $i++) { tdDnodes.stop(1)
insert into t9 values ($t0 + $i, 1); tdDnodes.start(1)
} tdSql.query("select * from t5")
tdSql.checkRows(insertRows+6000)
restart to commit print("==========step6")
check query result print("UPDATE BLOCK IN TWO STEP")
ret = tdSql.execute('create table t6 (ts timestamp, a int)')
for ($i = -100; $i < 100; $i++) { insertRows = 200
insert into t9 values ($t0 + $i, 2); for i in range(0, insertRows):
} ret = tdSql.execute(
'insert into t6 values (%d , 1)' %
check query result (t0+i))
restart to commit tdSql.query("select * from t6")
check query result tdSql.checkRows(insertRows)
tdDnodes.stop(1)
## Step 10. UPDATE FIRST HALF AND PREPEND MASSIVE DATA tdDnodes.start(1)
create table t10 (ts timestamp, a int); tdSql.query("select * from t6")
for ($i = 0; $i < 200; $i++) { tdSql.checkRows(insertRows)
insert into t10 values ($t0 + $i, 1); for i in range(0,100):
} ret = tdSql.execute(
'insert into t6 values (%d , 2)' %
restart to commit (t0+i))
check query result tdSql.query("select * from t6")
tdSql.checkRows(insertRows)
for ($i = -6000; $i < 100; $i++) { tdSql.query("select sum(a) from t6")
insert into t10 values ($t0 + $i, 2); tdSql.checkData(0,0,'300')
} tdDnodes.stop(1)
tdDnodes.start(1)
check query result tdSql.query("select * from t6")
restart to commit tdSql.checkRows(insertRows)
check query result tdSql.query("select sum(a) from t6")
tdSql.checkData(0,0,'300')
## Step 11. UPDATE FIRST HALF AND APPEND MASSIVE DATA for i in range(0,200):
create table t11 (ts timestamp, a int); ret = tdSql.execute(
for ($i = 0; $i < 200; $i++) { 'insert into t6 values (%d , 2)' %
insert into t11 values ($t0 + $i, 1); (t0+i))
} tdSql.query("select * from t6")
tdSql.checkRows(insertRows)
restart to commit tdSql.query("select sum(a) from t6")
check query result tdSql.checkData(0,0,'400')
tdDnodes.stop(1)
for ($i = 0; $i < 100; $i++) { tdDnodes.start(1)
insert into t11 values ($t0 + $i, 2); tdSql.query("select * from t6")
} tdSql.checkRows(insertRows)
tdSql.query("select sum(a) from t6")
for ($i = 200; $i < 6000; $i++) { tdSql.checkData(0,0,'400')
insert into t11 values ($t0 + $i, 2); print("==========step7")
} print("UPDATE LAST HALF AND INSERT LITTLE DATA")
ret = tdSql.execute('create table t7 (ts timestamp, a int)')
check query result insertRows = 200
restart to commit for i in range(0, insertRows):
check query result ret = tdSql.execute(
\ No newline at end of file 'insert into t7 values (%d , 1)' %
(t0+i))
tdSql.query("select * from t7")
tdSql.checkRows(insertRows)
tdDnodes.stop(1)
tdDnodes.start(1)
tdSql.query("select * from t7")
tdSql.checkRows(insertRows)
for i in range(100,300):
ret = tdSql.execute(
'insert into t7 values (%d , 2)' %
(t0+i))
tdSql.query("select * from t7")
tdSql.checkRows(300)
tdSql.query("select sum(a) from t7")
tdSql.checkData(0,0,'500')
tdDnodes.stop(1)
tdDnodes.start(1)
tdSql.query("select * from t7")
tdSql.checkRows(300)
tdSql.query("select sum(a) from t7")
tdSql.checkData(0,0,'500')
print("==========step8")
print("UPDATE LAST HALF AND INSERT MASSIVE DATA")
ret = tdSql.execute('create table t8 (ts timestamp, a int)')
insertRows = 200
for i in range(0, insertRows):
ret = tdSql.execute(
'insert into t8 values (%d , 1)' %
(t0+i))
tdSql.query("select * from t8")
tdSql.checkRows(insertRows)
tdDnodes.stop(1)
tdDnodes.start(1)
tdSql.query("select * from t8")
tdSql.checkRows(insertRows)
for i in range(6000):
ret = tdSql.execute(
'insert into t8 values (%d , 2)' %
(t0+i))
tdSql.query("select * from t8")
tdSql.checkRows(6000)
tdSql.query("select sum(a) from t8")
tdSql.checkData(0,0,'12000')
tdDnodes.stop(1)
tdDnodes.start(1)
tdSql.query("select * from t8")
tdSql.checkRows(6000)
tdSql.query("select sum(a) from t8")
tdSql.checkData(0,0,'12000')
print("==========step9")
print("UPDATE FIRST HALF AND PREPEND LITTLE DATA")
ret = tdSql.execute('create table t9 (ts timestamp, a int)')
insertRows = 200
for i in range(0, insertRows):
ret = tdSql.execute(
'insert into t9 values (%d , 1)' %
(t0+i))
tdSql.query("select * from t9")
tdSql.checkRows(insertRows)
tdDnodes.stop(1)
tdDnodes.start(1)
tdSql.query("select * from t9")
tdSql.checkRows(insertRows)
for i in range(-100,100):
ret = tdSql.execute(
'insert into t9 values (%d , 2)' %
(t0+i))
tdSql.query("select * from t9")
tdSql.checkRows(300)
tdSql.query("select sum(a) from t9")
tdSql.checkData(0,0,'500')
tdDnodes.stop(1)
tdDnodes.start(1)
tdSql.query("select * from t9")
tdSql.checkRows(300)
tdSql.query("select sum(a) from t9")
tdSql.checkData(0,0,'500')
print("==========step10")
print("UPDATE FIRST HALF AND PREPEND MASSIVE DATA")
ret = tdSql.execute('create table t10 (ts timestamp, a int)')
insertRows = 200
for i in range(0, insertRows):
ret = tdSql.execute(
'insert into t10 values (%d , 1)' %
(t0+i))
tdSql.query("select * from t10")
tdSql.checkRows(insertRows)
tdDnodes.stop(1)
tdDnodes.start(1)
tdSql.query("select * from t10")
tdSql.checkRows(insertRows)
for i in range(-6000,100):
ret = tdSql.execute(
'insert into t10 values (%d , 2)' %
(t0+i))
tdSql.query("select * from t10")
tdSql.checkRows(6200)
tdSql.query("select sum(a) from t10")
tdSql.checkData(0,0,'12300')
tdDnodes.stop(1)
tdDnodes.start(1)
tdSql.query("select * from t10")
tdSql.checkRows(6200)
tdSql.query("select sum(a) from t10")
tdSql.checkData(0,0,'12300')
print("==========step11")
print("UPDATE FIRST HALF AND APPEND MASSIVE DATA")
ret = tdSql.execute('create table t11 (ts timestamp, a int)')
insertRows = 200
for i in range(0, insertRows):
ret = tdSql.execute(
'insert into t11 values (%d , 1)' %
(t0+i))
tdSql.query("select * from t11")
tdSql.checkRows(insertRows)
tdDnodes.stop(1)
tdDnodes.start(1)
tdSql.query("select * from t11")
tdSql.checkRows(insertRows)
for i in range(100):
ret = tdSql.execute(
'insert into t11 values (%d , 2)' %
(t0+i))
for i in range(200,6000):
ret = tdSql.execute(
'insert into t11 values (%d , 2)' %
(t0+i))
tdSql.query("select * from t11")
tdSql.checkRows(6000)
tdSql.query("select sum(a) from t11")
tdSql.checkData(0,0,'11900')
tdDnodes.stop(1)
tdDnodes.start(1)
tdSql.query("select * from t11")
tdSql.checkRows(6000)
tdSql.query("select sum(a) from t11")
tdSql.checkData(0,0,'11900')
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.
先完成此消息的编辑!
想要评论请 注册