78 lines
2.3 KiB
Python
78 lines
2.3 KiB
Python
|
|
import taos
|
|
import sys
|
|
import time
|
|
import socket
|
|
import os
|
|
import threading
|
|
import math
|
|
|
|
from util.log import *
|
|
from util.sql import *
|
|
from util.cases import *
|
|
from util.dnodes import *
|
|
from util.common import *
|
|
from util.cluster import *
|
|
|
|
class TDTestCase:
|
|
updatecfgDict = {'checkpointInterval': 1100}
|
|
print("===================: ", updatecfgDict)
|
|
|
|
def init(self, conn, logSql, replicaVar=1):
|
|
tdLog.debug(f"start to excute {__file__}")
|
|
tdSql.init(conn.cursor(), True)
|
|
|
|
|
|
def case1(self):
|
|
tdLog.debug("========case1 start========")
|
|
|
|
os.system("nohup taosBenchmark -y -B 1 -t 4 -S 1000 -n 1000 -i 1000 -v 2 > /dev/null 2>&1 &")
|
|
time.sleep(4)
|
|
tdSql.query("use test")
|
|
tdSql.query("create stream if not exists s1 trigger at_once ignore expired 0 ignore update 0 fill_history 1 into st1 as select _wstart,sum(voltage),groupid from meters partition by groupid interval(2s)")
|
|
tdLog.debug("========create stream useing snode and insert data ok========")
|
|
time.sleep(4)
|
|
|
|
tdDnodes = cluster.dnodes
|
|
tdDnodes[2].stoptaosd()
|
|
time.sleep(2)
|
|
tdDnodes[2].starttaosd()
|
|
tdLog.debug("========vnode restart ok========")
|
|
|
|
time.sleep(30)
|
|
os.system("kill -9 `pgrep taosBenchmark`")
|
|
tdLog.debug("========stop insert ok========")
|
|
time.sleep(2)
|
|
|
|
tdSql.query("select _wstart,sum(voltage),groupid from meters partition by groupid interval(2s) order by groupid,_wstart")
|
|
rowCnt = tdSql.getRows()
|
|
results = []
|
|
for i in range(rowCnt):
|
|
results.append(tdSql.getData(i,1))
|
|
|
|
tdSql.query("select * from st1 order by groupid,_wstart")
|
|
tdSql.checkRows(rowCnt)
|
|
for i in range(rowCnt):
|
|
data1 = tdSql.getData(i,1)
|
|
data2 = results[i]
|
|
if data1 != data2:
|
|
tdLog.info("num: %d, act data: %d, expect data: %d"%(i, data1, data2))
|
|
tdLog.exit("check data error!")
|
|
|
|
# tdLog.debug("========sleep 500s========")
|
|
# time.sleep(500)
|
|
|
|
tdLog.debug("case1 end")
|
|
|
|
def run(self):
|
|
self.case1()
|
|
|
|
def stop(self):
|
|
tdSql.close()
|
|
tdLog.success(f"{__file__} successfully executed")
|
|
|
|
event = threading.Event()
|
|
|
|
tdCases.addLinux(__file__, TDTestCase())
|
|
tdCases.addWindows(__file__, TDTestCase())
|