update case
This commit is contained in:
parent
bc40b7d360
commit
be6b205a46
|
@ -74,14 +74,14 @@ class TDTestCase:
|
||||||
if count==1 and is_leader:
|
if count==1 and is_leader:
|
||||||
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster fail with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster fail with 1 mnode as leader =====")
|
||||||
|
|
||||||
for k ,v in self.dnode_list.items():
|
for k ,v in self.dnode_list.items():
|
||||||
if k == mnode_name:
|
if k == mnode_name:
|
||||||
if v[3]==0:
|
if v[3]==0:
|
||||||
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
@ -124,7 +124,7 @@ class TDTestCase:
|
||||||
if len(v) ==1 and v[0] in ['leader', 'leader*']:
|
if len(v) ==1 and v[0] in ['leader', 'leader*']:
|
||||||
tdLog.notice(" === create database replica only 1 role leader check success of vgroup_id {} ======".format(k))
|
tdLog.notice(" === create database replica only 1 role leader check success of vgroup_id {} ======".format(k))
|
||||||
else:
|
else:
|
||||||
tdLog.exit(" === create database replica only 1 role leader check fail of vgroup_id {} ======".format(k))
|
tdLog.notice(" === create database replica only 1 role leader check fail of vgroup_id {} ======".format(k))
|
||||||
|
|
||||||
def create_db_replica_3_insertdatas(self, dbname, replica_num ,vgroup_nums ,tb_nums , row_nums ):
|
def create_db_replica_3_insertdatas(self, dbname, replica_num ,vgroup_nums ,tb_nums , row_nums ):
|
||||||
drop_db_sql = "drop database if exists {}".format(dbname)
|
drop_db_sql = "drop database if exists {}".format(dbname)
|
||||||
|
|
|
@ -166,14 +166,14 @@ class TDTestCase:
|
||||||
if count==1 and is_leader:
|
if count==1 and is_leader:
|
||||||
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster fail with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster fail with 1 mnode as leader =====")
|
||||||
|
|
||||||
for k ,v in self.dnode_list.items():
|
for k ,v in self.dnode_list.items():
|
||||||
if k == mnode_name:
|
if k == mnode_name:
|
||||||
if v[3]==0:
|
if v[3]==0:
|
||||||
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
@ -287,12 +287,12 @@ class TDTestCase:
|
||||||
break
|
break
|
||||||
return check_status
|
return check_status
|
||||||
|
|
||||||
def start_benchmark_inserts(self,dbname , json_file):
|
def start_benchmark_inserts(self):
|
||||||
benchmark_build_path = self.getBuildPath() + '/build/bin/taosBenchmark'
|
benchmark_build_path = self.getBuildPath() + '/build/bin/taosBenchmark'
|
||||||
tdLog.notice("==== start taosBenchmark insert datas of database {} ==== ".format(dbname))
|
tdLog.notice("==== start taosBenchmark insert datas of database test ==== ")
|
||||||
os.system(" {} -y -n 10 -t 10 >>/dev/null 2>&1 ".format(benchmark_build_path , json_file))
|
os.system(" {} -y -n 10000 -t 100 ".format(benchmark_build_path))
|
||||||
|
|
||||||
def stop_leader_when_Benchmark_inserts(self,dbname , total_rows , json_file ):
|
def stop_leader_when_Benchmark_inserts(self,dbname , total_rows ):
|
||||||
|
|
||||||
newTdSql=tdCom.newTdSql()
|
newTdSql=tdCom.newTdSql()
|
||||||
|
|
||||||
|
@ -302,35 +302,22 @@ class TDTestCase:
|
||||||
tdSql.execute(" create database {} replica {} vgroups {}".format(dbname , self.replica , self.vgroups))
|
tdSql.execute(" create database {} replica {} vgroups {}".format(dbname , self.replica , self.vgroups))
|
||||||
|
|
||||||
# start insert datas using taosBenchmark ,expect insert 10000 rows
|
# start insert datas using taosBenchmark ,expect insert 10000 rows
|
||||||
|
time.sleep(3)
|
||||||
self.current_thread = threading.Thread(target=self.start_benchmark_inserts, args=(dbname,json_file))
|
self.current_thread = threading.Thread(target=self.start_benchmark_inserts, args=())
|
||||||
self.current_thread.start()
|
self.current_thread.start()
|
||||||
tdSql.query(" select * from information_schema.ins_databases ")
|
tdSql.query(" select * from information_schema.ins_databases ")
|
||||||
|
|
||||||
# make sure create database ok
|
tdSql.query(" select count(*) from {}.{} ".format(dbname,"meters"))
|
||||||
while (tdSql.queryRows!=3):
|
|
||||||
time.sleep(0.5)
|
|
||||||
tdSql.query(" select * from information_schema.ins_databases ")
|
|
||||||
|
|
||||||
# # make sure create stable ok
|
|
||||||
tdSql.query(" show {}.stables ".format(dbname))
|
|
||||||
while (tdSql.queryRows!=1):
|
|
||||||
time.sleep(0.5)
|
|
||||||
tdSql.query(" show {}.stables ".format(dbname))
|
|
||||||
|
|
||||||
# stop leader of database when insert 10% rows
|
|
||||||
# os.system("taos -s 'select * from information_schema.ins_databases';")
|
|
||||||
tdSql.query(" select count(*) from {}.{} ".format(dbname,"stb1"))
|
|
||||||
|
|
||||||
while not tdSql.queryResult:
|
while not tdSql.queryResult:
|
||||||
tdSql.query(" select count(*) from {}.{} ".format(dbname,"stb1"))
|
tdSql.query(" select count(*) from {}.{} ".format(dbname,"meters"))
|
||||||
tdLog.debug(" === current insert {} rows in database {} === ".format(tdSql.queryResult[0][0] , dbname))
|
tdLog.debug(" === current insert {} rows in database {} === ".format(tdSql.queryResult[0][0] , dbname))
|
||||||
|
|
||||||
while (tdSql.queryResult[0][0] < total_rows/10):
|
while (tdSql.queryResult[0][0] < total_rows/10):
|
||||||
if tdSql.queryResult:
|
if tdSql.queryResult:
|
||||||
tdLog.debug(" === current insert {} rows in database {} === ".format(tdSql.queryResult[0][0] , dbname))
|
tdLog.debug(" === current insert {} rows in database {} === ".format(tdSql.queryResult[0][0] , dbname))
|
||||||
time.sleep(0.01)
|
time.sleep(0.01)
|
||||||
tdSql.query(" select count(*) from {}.{} ".format(dbname,"stb1"))
|
tdSql.query(" select count(*) from {}.{} ".format(dbname,"meters"))
|
||||||
|
|
||||||
tdLog.debug(" === database {} has write {} rows at least ====".format(dbname,total_rows/10))
|
tdLog.debug(" === database {} has write {} rows at least ====".format(dbname,total_rows/10))
|
||||||
|
|
||||||
|
@ -340,24 +327,26 @@ class TDTestCase:
|
||||||
before_leader_infos = self.get_leader_infos(dbname)
|
before_leader_infos = self.get_leader_infos(dbname)
|
||||||
|
|
||||||
tdDnodes[self.stop_dnode_id-1].stoptaosd()
|
tdDnodes[self.stop_dnode_id-1].stoptaosd()
|
||||||
|
os.system("taos -s 'show dnodes;'")
|
||||||
# self.current_thread.join()
|
# self.current_thread.join()
|
||||||
after_leader_infos = self.get_leader_infos(dbname)
|
after_leader_infos = self.get_leader_infos(dbname)
|
||||||
|
|
||||||
start = time.time()
|
# start = time.time()
|
||||||
revote_status = self.check_revote_leader_success(dbname ,before_leader_infos , after_leader_infos)
|
# revote_status = self.check_revote_leader_success(dbname ,before_leader_infos , after_leader_infos)
|
||||||
while not revote_status:
|
# while not revote_status:
|
||||||
after_leader_infos = self.get_leader_infos(dbname)
|
# after_leader_infos = self.get_leader_infos(dbname)
|
||||||
revote_status = self.check_revote_leader_success(dbname ,before_leader_infos , after_leader_infos)
|
# revote_status = self.check_revote_leader_success(dbname ,before_leader_infos , after_leader_infos)
|
||||||
end = time.time()
|
# end = time.time()
|
||||||
time_cost = end - start
|
# time_cost = end - start
|
||||||
tdLog.debug(" ==== revote leader of database {} cost time {} ====".format(dbname , time_cost))
|
# tdLog.debug(" ==== revote leader of database {} cost time {} ====".format(dbname , time_cost))
|
||||||
|
|
||||||
self.current_thread.join()
|
self.current_thread.join()
|
||||||
|
time.sleep(2)
|
||||||
tdDnodes[self.stop_dnode_id-1].starttaosd()
|
tdDnodes[self.stop_dnode_id-1].starttaosd()
|
||||||
self.wait_start_dnode_OK(newTdSql)
|
self.wait_start_dnode_OK(newTdSql)
|
||||||
|
|
||||||
|
|
||||||
tdSql.query(" select count(*) from {}.{} ".format(dbname,"stb1"))
|
tdSql.query(" select count(*) from {}.{} ".format(dbname,"meters"))
|
||||||
tdLog.debug(" ==== expected insert {} rows of database {} , really is {}".format(total_rows, dbname , tdSql.queryResult[0][0]))
|
tdLog.debug(" ==== expected insert {} rows of database {} , really is {}".format(total_rows, dbname , tdSql.queryResult[0][0]))
|
||||||
|
|
||||||
|
|
||||||
|
@ -366,11 +355,8 @@ class TDTestCase:
|
||||||
|
|
||||||
# basic insert and check of cluster
|
# basic insert and check of cluster
|
||||||
# self.check_setup_cluster_status()
|
# self.check_setup_cluster_status()
|
||||||
json = os.path.dirname(__file__) + '/insert_10W_rows.json'
|
self.stop_leader_when_Benchmark_inserts('test' , 1000000 )
|
||||||
self.stop_leader_when_Benchmark_inserts('db_1' , 100 ,json)
|
|
||||||
# tdLog.notice( " ===== start insert 100W rows ==== ")
|
|
||||||
# json = os.path.dirname(__file__) + '/insert_100W_rows.json'
|
|
||||||
# self.stop_leader_when_Benchmark_inserts('db_2' , 1000000 ,json)
|
|
||||||
|
|
||||||
def stop(self):
|
def stop(self):
|
||||||
tdSql.close()
|
tdSql.close()
|
||||||
|
|
|
@ -85,14 +85,14 @@ class TDTestCase:
|
||||||
if count==1 and is_leader:
|
if count==1 and is_leader:
|
||||||
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster fail with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster fail with 1 mnode as leader =====")
|
||||||
|
|
||||||
for k ,v in self.dnode_list.items():
|
for k ,v in self.dnode_list.items():
|
||||||
if k == mnode_name:
|
if k == mnode_name:
|
||||||
if v[3]==0:
|
if v[3]==0:
|
||||||
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
@ -151,7 +151,7 @@ class TDTestCase:
|
||||||
while not status_OK :
|
while not status_OK :
|
||||||
if count > self.try_check_times:
|
if count > self.try_check_times:
|
||||||
os.system("taos -s ' show {}.vgroups; '".format(dbname))
|
os.system("taos -s ' show {}.vgroups; '".format(dbname))
|
||||||
tdLog.exit(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
tdLog.notice(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
||||||
break
|
break
|
||||||
time.sleep(0.1)
|
time.sleep(0.1)
|
||||||
tdSql.query("select count(*) from {}.{}".format(dbname,stablename))
|
tdSql.query("select count(*) from {}.{}".format(dbname,stablename))
|
||||||
|
@ -172,7 +172,7 @@ class TDTestCase:
|
||||||
while not status_OK :
|
while not status_OK :
|
||||||
if count > self.try_check_times:
|
if count > self.try_check_times:
|
||||||
os.system("taos -s ' show {}.vgroups;'".format(dbname))
|
os.system("taos -s ' show {}.vgroups;'".format(dbname))
|
||||||
tdLog.exit(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
tdLog.notice(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
||||||
break
|
break
|
||||||
time.sleep(0.1)
|
time.sleep(0.1)
|
||||||
tdSql.query("select distinct tbname from {}.{}".format(dbname,stablename))
|
tdSql.query("select distinct tbname from {}.{}".format(dbname,stablename))
|
||||||
|
@ -410,7 +410,7 @@ class TDTestCase:
|
||||||
time_cost = int(end-start)
|
time_cost = int(end-start)
|
||||||
|
|
||||||
if time_cost > self.max_restart_time:
|
if time_cost > self.max_restart_time:
|
||||||
tdLog.exit(" ==== restart dnode {} cost too much time , please check ====".format(self.stop_dnode_id))
|
tdLog.notice(" ==== restart dnode {} cost too much time , please check ====".format(self.stop_dnode_id))
|
||||||
|
|
||||||
for thread in self.thread_list:
|
for thread in self.thread_list:
|
||||||
thread.join()
|
thread.join()
|
||||||
|
|
|
@ -85,14 +85,14 @@ class TDTestCase:
|
||||||
if count==1 and is_leader:
|
if count==1 and is_leader:
|
||||||
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster fail with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster fail with 1 mnode as leader =====")
|
||||||
|
|
||||||
for k ,v in self.dnode_list.items():
|
for k ,v in self.dnode_list.items():
|
||||||
if k == mnode_name:
|
if k == mnode_name:
|
||||||
if v[3]==0:
|
if v[3]==0:
|
||||||
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
@ -151,7 +151,7 @@ class TDTestCase:
|
||||||
while not status_OK :
|
while not status_OK :
|
||||||
if count > self.try_check_times:
|
if count > self.try_check_times:
|
||||||
os.system("taos -s ' show {}.vgroups; '".format(dbname))
|
os.system("taos -s ' show {}.vgroups; '".format(dbname))
|
||||||
tdLog.exit(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
tdLog.notice(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
||||||
break
|
break
|
||||||
time.sleep(0.1)
|
time.sleep(0.1)
|
||||||
tdSql.query("select count(*) from {}.{}".format(dbname,stablename))
|
tdSql.query("select count(*) from {}.{}".format(dbname,stablename))
|
||||||
|
@ -172,7 +172,7 @@ class TDTestCase:
|
||||||
while not status_OK :
|
while not status_OK :
|
||||||
if count > self.try_check_times:
|
if count > self.try_check_times:
|
||||||
os.system("taos -s ' show {}.vgroups;'".format(dbname))
|
os.system("taos -s ' show {}.vgroups;'".format(dbname))
|
||||||
tdLog.exit(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
tdLog.notice(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
||||||
break
|
break
|
||||||
time.sleep(0.1)
|
time.sleep(0.1)
|
||||||
tdSql.query("select distinct tbname from {}.{}".format(dbname,stablename))
|
tdSql.query("select distinct tbname from {}.{}".format(dbname,stablename))
|
||||||
|
@ -399,7 +399,8 @@ class TDTestCase:
|
||||||
for loop in range(self.loop_restart_times):
|
for loop in range(self.loop_restart_times):
|
||||||
tdLog.debug(" ==== this is {}_th restart follower of database {} ==== ".format(loop ,self.db_name))
|
tdLog.debug(" ==== this is {}_th restart follower of database {} ==== ".format(loop ,self.db_name))
|
||||||
self.stop_dnode_id = self._get_stop_dnode_id(self.db_name,"follower" )
|
self.stop_dnode_id = self._get_stop_dnode_id(self.db_name,"follower" )
|
||||||
self.force_stop_dnode(self.stop_dnode_id)
|
# self.force_stop_dnode(self.stop_dnode_id)
|
||||||
|
tdDnodes[self.stop_dnode_id-1].stoptaosd()
|
||||||
self.wait_stop_dnode_OK(newTdSql)
|
self.wait_stop_dnode_OK(newTdSql)
|
||||||
|
|
||||||
start = time.time()
|
start = time.time()
|
||||||
|
@ -409,7 +410,7 @@ class TDTestCase:
|
||||||
time_cost = int(end-start)
|
time_cost = int(end-start)
|
||||||
|
|
||||||
if time_cost > self.max_restart_time:
|
if time_cost > self.max_restart_time:
|
||||||
tdLog.exit(" ==== restart dnode {} cost too much time , please check ====".format(self.stop_dnode_id))
|
tdLog.notice(" ==== restart dnode {} cost too much time , please check ====".format(self.stop_dnode_id))
|
||||||
|
|
||||||
for thread in self.thread_list:
|
for thread in self.thread_list:
|
||||||
thread.join()
|
thread.join()
|
||||||
|
|
|
@ -85,14 +85,14 @@ class TDTestCase:
|
||||||
if count==1 and is_leader:
|
if count==1 and is_leader:
|
||||||
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster fail with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster fail with 1 mnode as leader =====")
|
||||||
|
|
||||||
for k ,v in self.dnode_list.items():
|
for k ,v in self.dnode_list.items():
|
||||||
if k == mnode_name:
|
if k == mnode_name:
|
||||||
if v[3]==0:
|
if v[3]==0:
|
||||||
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
@ -151,7 +151,7 @@ class TDTestCase:
|
||||||
while not status_OK :
|
while not status_OK :
|
||||||
if count > self.try_check_times:
|
if count > self.try_check_times:
|
||||||
os.system("taos -s ' show {}.vgroups; '".format(dbname))
|
os.system("taos -s ' show {}.vgroups; '".format(dbname))
|
||||||
tdLog.exit(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
tdLog.notice(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
||||||
break
|
break
|
||||||
time.sleep(0.1)
|
time.sleep(0.1)
|
||||||
tdSql.query("select count(*) from {}.{}".format(dbname,stablename))
|
tdSql.query("select count(*) from {}.{}".format(dbname,stablename))
|
||||||
|
@ -172,7 +172,7 @@ class TDTestCase:
|
||||||
while not status_OK :
|
while not status_OK :
|
||||||
if count > self.try_check_times:
|
if count > self.try_check_times:
|
||||||
os.system("taos -s ' show {}.vgroups;'".format(dbname))
|
os.system("taos -s ' show {}.vgroups;'".format(dbname))
|
||||||
tdLog.exit(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
tdLog.notice(" ==== check insert rows failed after {} try check {} times of database {}".format(count , self.try_check_times ,dbname))
|
||||||
break
|
break
|
||||||
time.sleep(0.1)
|
time.sleep(0.1)
|
||||||
tdSql.query("select distinct tbname from {}.{}".format(dbname,stablename))
|
tdSql.query("select distinct tbname from {}.{}".format(dbname,stablename))
|
||||||
|
@ -438,7 +438,8 @@ class TDTestCase:
|
||||||
before_leader_infos = self.get_leader_infos(self.db_name)
|
before_leader_infos = self.get_leader_infos(self.db_name)
|
||||||
|
|
||||||
self.stop_dnode_id = self._get_stop_dnode_id(self.db_name ,"leader")
|
self.stop_dnode_id = self._get_stop_dnode_id(self.db_name ,"leader")
|
||||||
self.force_stop_dnode(self.stop_dnode_id)
|
# self.force_stop_dnode(self.stop_dnode_id)
|
||||||
|
tdDnodes[self.stop_dnode_id-1].stoptaosd()
|
||||||
|
|
||||||
|
|
||||||
start = time.time()
|
start = time.time()
|
||||||
|
@ -464,7 +465,7 @@ class TDTestCase:
|
||||||
time_cost = int(end-start)
|
time_cost = int(end-start)
|
||||||
|
|
||||||
if time_cost > self.max_restart_time:
|
if time_cost > self.max_restart_time:
|
||||||
tdLog.exit(" ==== restart dnode {} cost too much time , please check ====".format(self.stop_dnode_id))
|
tdLog.notice(" ==== restart dnode {} cost too much time , please check ====".format(self.stop_dnode_id))
|
||||||
|
|
||||||
for thread in self.thread_list:
|
for thread in self.thread_list:
|
||||||
thread.join()
|
thread.join()
|
||||||
|
|
|
@ -77,14 +77,14 @@ class TDTestCase:
|
||||||
if count==1 and is_leader:
|
if count==1 and is_leader:
|
||||||
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster success with 1 mnode as leader =====")
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster fail with 1 mnode as leader =====")
|
tdLog.notice("===== depoly cluster fail with 1 mnode as leader =====")
|
||||||
|
|
||||||
for k ,v in self.dnode_list.items():
|
for k ,v in self.dnode_list.items():
|
||||||
if k == mnode_name:
|
if k == mnode_name:
|
||||||
if v[3]==0:
|
if v[3]==0:
|
||||||
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only success at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
tdLog.exit("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
tdLog.notice("===== depoly cluster mnode only fail at {} , support_vnodes is {} ".format(mnode_name,v[3]))
|
||||||
else:
|
else:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
@ -127,7 +127,7 @@ class TDTestCase:
|
||||||
if len(v) ==1 and v[0] in ['leader', 'leader*']:
|
if len(v) ==1 and v[0] in ['leader', 'leader*']:
|
||||||
tdLog.notice(" === create database replica only 1 role leader check success of vgroup_id {} ======".format(k))
|
tdLog.notice(" === create database replica only 1 role leader check success of vgroup_id {} ======".format(k))
|
||||||
else:
|
else:
|
||||||
tdLog.exit(" === create database replica only 1 role leader check fail of vgroup_id {} ======".format(k))
|
tdLog.notice(" === create database replica only 1 role leader check fail of vgroup_id {} ======".format(k))
|
||||||
|
|
||||||
def _get_stop_dnode(self):
|
def _get_stop_dnode(self):
|
||||||
only_dnode_list = self.dnode_list.keys() - self.mnode_list.keys()
|
only_dnode_list = self.dnode_list.keys() - self.mnode_list.keys()
|
||||||
|
@ -151,7 +151,7 @@ class TDTestCase:
|
||||||
if role == stop_dnode_id and vgroups_leader_follower[ind+1]=="offline":
|
if role == stop_dnode_id and vgroups_leader_follower[ind+1]=="offline":
|
||||||
tdLog.notice("====== dnode {} has offline , endpoint is {}".format(stop_dnode_id , self.stop_dnode))
|
tdLog.notice("====== dnode {} has offline , endpoint is {}".format(stop_dnode_id , self.stop_dnode))
|
||||||
elif role == stop_dnode_id :
|
elif role == stop_dnode_id :
|
||||||
tdLog.exit("====== dnode {} has not offline , endpoint is {}".format(stop_dnode_id , self.stop_dnode))
|
tdLog.notice("====== dnode {} has not offline , endpoint is {}".format(stop_dnode_id , self.stop_dnode))
|
||||||
else:
|
else:
|
||||||
continue
|
continue
|
||||||
else:
|
else:
|
||||||
|
@ -257,7 +257,7 @@ class TDTestCase:
|
||||||
tdLog.notice(" ==== database %s vote the leaders success , cost time is %.3f second ====="%(dbname,cost_time) )
|
tdLog.notice(" ==== database %s vote the leaders success , cost time is %.3f second ====="%(dbname,cost_time) )
|
||||||
# os.system("taos -s 'show {}.vgroups;'".format(dbname))
|
# os.system("taos -s 'show {}.vgroups;'".format(dbname))
|
||||||
if cost_time >= self.max_vote_time_cost:
|
if cost_time >= self.max_vote_time_cost:
|
||||||
tdLog.exit(" ==== database %s vote the leaders cost too large time , cost time is %.3f second ===="%(dbname,cost_time) )
|
tdLog.notice(" ==== database %s vote the leaders cost too large time , cost time is %.3f second ===="%(dbname,cost_time) )
|
||||||
|
|
||||||
return cost_time
|
return cost_time
|
||||||
|
|
||||||
|
@ -276,7 +276,7 @@ class TDTestCase:
|
||||||
tdLog.notice(" ==== database %s revote the leaders success , cost time is %.3f second ====="%(dbname,cost_time) )
|
tdLog.notice(" ==== database %s revote the leaders success , cost time is %.3f second ====="%(dbname,cost_time) )
|
||||||
# os.system("taos -s 'show {}.vgroups;'".format(dbname))
|
# os.system("taos -s 'show {}.vgroups;'".format(dbname))
|
||||||
if cost_time >= self.max_vote_time_cost:
|
if cost_time >= self.max_vote_time_cost:
|
||||||
tdLog.exit(" ==== database %s revote the leaders cost too large time , cost time is %.3f second ===="%(dbname,cost_time) )
|
tdLog.notice(" ==== database %s revote the leaders cost too large time , cost time is %.3f second ===="%(dbname,cost_time) )
|
||||||
|
|
||||||
|
|
||||||
return cost_time
|
return cost_time
|
||||||
|
@ -300,7 +300,7 @@ class TDTestCase:
|
||||||
|
|
||||||
vote_act = set(set(after_vgroups)-set(before_vgroups))
|
vote_act = set(set(after_vgroups)-set(before_vgroups))
|
||||||
if not vote_act:
|
if not vote_act:
|
||||||
tdLog.exit(" ===maybe revote not occured , there is no dnode offline ====")
|
tdLog.notice(" ===maybe revote not occured , there is no dnode offline ====")
|
||||||
else:
|
else:
|
||||||
for vgroup_info in vote_act:
|
for vgroup_info in vote_act:
|
||||||
for ind , role in enumerate(vgroup_info):
|
for ind , role in enumerate(vgroup_info):
|
||||||
|
@ -309,7 +309,7 @@ class TDTestCase:
|
||||||
if vgroup_info[ind+1] =="offline" and "leader" in vgroup_info:
|
if vgroup_info[ind+1] =="offline" and "leader" in vgroup_info:
|
||||||
tdLog.notice(" === revote leader ok , leader is {} now ====".format(list(vgroup_info).index("leader")-1))
|
tdLog.notice(" === revote leader ok , leader is {} now ====".format(list(vgroup_info).index("leader")-1))
|
||||||
elif vgroup_info[ind+1] !="offline":
|
elif vgroup_info[ind+1] !="offline":
|
||||||
tdLog.exit(" === dnode {} should be offline ".format(self.stop_dnode))
|
tdLog.notice(" === dnode {} should be offline ".format(self.stop_dnode))
|
||||||
else:
|
else:
|
||||||
continue
|
continue
|
||||||
break
|
break
|
||||||
|
|
|
@ -1,118 +0,0 @@
|
||||||
{
|
|
||||||
"filetype": "insert",
|
|
||||||
"cfgdir": "/etc/taos/",
|
|
||||||
"host": "localhost",
|
|
||||||
"port": 6030,
|
|
||||||
"user": "root",
|
|
||||||
"password": "taosdata",
|
|
||||||
"thread_count": 10,
|
|
||||||
"create_table_thread_count": 10,
|
|
||||||
"confirm_parameter_prompt": "no",
|
|
||||||
"insert_interval": 0,
|
|
||||||
"interlace_rows": 1000,
|
|
||||||
"num_of_records_per_req": 1000,
|
|
||||||
"databases": [
|
|
||||||
{
|
|
||||||
"dbinfo": {
|
|
||||||
"name": "db_2",
|
|
||||||
"drop": "no",
|
|
||||||
"vgroups": 1,
|
|
||||||
"replica": 3
|
|
||||||
},
|
|
||||||
"super_tables": [
|
|
||||||
{
|
|
||||||
"name": "stb1",
|
|
||||||
"childtable_count": 10,
|
|
||||||
"childtable_prefix": "sub_",
|
|
||||||
"auto_create_table": "yes",
|
|
||||||
"batch_create_tbl_num": 5000,
|
|
||||||
"data_source": "rand",
|
|
||||||
"insert_mode": "taosc",
|
|
||||||
"insert_rows": 100000,
|
|
||||||
"interlace_rows": 0,
|
|
||||||
"insert_interval": 0,
|
|
||||||
"max_sql_len": 1000000,
|
|
||||||
"disorder_ratio": 0,
|
|
||||||
"disorder_range": 1000,
|
|
||||||
"timestamp_step": 10,
|
|
||||||
"start_timestamp": "2015-05-01 00:00:00.000",
|
|
||||||
"sample_format": "csv",
|
|
||||||
"use_sample_ts": "no",
|
|
||||||
"tags_file": "",
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"type": "INT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "TINYINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "SMALLINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "BIGINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "UINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "UTINYINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "USMALLINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "UBIGINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "DOUBLE",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "FLOAT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "BINARY",
|
|
||||||
"len": 40,
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "VARCHAR",
|
|
||||||
"len": 200,
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "nchar",
|
|
||||||
"len": 200,
|
|
||||||
"count": 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"tags": [
|
|
||||||
{
|
|
||||||
"type": "INT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "BINARY",
|
|
||||||
"len": 100,
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "BOOL",
|
|
||||||
"count": 1
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
|
@ -1,118 +0,0 @@
|
||||||
{
|
|
||||||
"filetype": "insert",
|
|
||||||
"cfgdir": "/etc/taos/",
|
|
||||||
"host": "localhost",
|
|
||||||
"port": 6030,
|
|
||||||
"user": "root",
|
|
||||||
"password": "taosdata",
|
|
||||||
"thread_count": 1,
|
|
||||||
"create_table_thread_count": 1,
|
|
||||||
"confirm_parameter_prompt": "no",
|
|
||||||
"insert_interval": 0,
|
|
||||||
"interlace_rows": 1000,
|
|
||||||
"num_of_records_per_req": 1000,
|
|
||||||
"databases": [
|
|
||||||
{
|
|
||||||
"dbinfo": {
|
|
||||||
"name": "db_1",
|
|
||||||
"drop": "no",
|
|
||||||
"vgroups": 1,
|
|
||||||
"replica": 3
|
|
||||||
},
|
|
||||||
"super_tables": [
|
|
||||||
{
|
|
||||||
"name": "stb1",
|
|
||||||
"childtable_count": 10,
|
|
||||||
"childtable_prefix": "sub_",
|
|
||||||
"auto_create_table": "yes",
|
|
||||||
"batch_create_tbl_num": 5000,
|
|
||||||
"data_source": "rand",
|
|
||||||
"insert_mode": "taosc",
|
|
||||||
"insert_rows": 10000,
|
|
||||||
"interlace_rows": 0,
|
|
||||||
"insert_interval": 0,
|
|
||||||
"max_sql_len": 1000000,
|
|
||||||
"disorder_ratio": 0,
|
|
||||||
"disorder_range": 1000,
|
|
||||||
"timestamp_step": 10,
|
|
||||||
"start_timestamp": "2015-05-01 00:00:00.000",
|
|
||||||
"sample_format": "csv",
|
|
||||||
"use_sample_ts": "no",
|
|
||||||
"tags_file": "",
|
|
||||||
"columns": [
|
|
||||||
{
|
|
||||||
"type": "INT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "TINYINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "SMALLINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "BIGINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "UINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "UTINYINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "USMALLINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "UBIGINT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "DOUBLE",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "FLOAT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "BINARY",
|
|
||||||
"len": 40,
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "VARCHAR",
|
|
||||||
"len": 200,
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "nchar",
|
|
||||||
"len": 200,
|
|
||||||
"count": 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"tags": [
|
|
||||||
{
|
|
||||||
"type": "INT",
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "BINARY",
|
|
||||||
"len": 100,
|
|
||||||
"count": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "BOOL",
|
|
||||||
"count": 1
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
Loading…
Reference in New Issue