mirror of
https://github.com/taosdata/TDengine
synced 2026-05-24 10:09:01 +00:00
157 lines
No EOL
4.9 KiB
Python
157 lines
No EOL
4.9 KiB
Python
import time
|
|
from new_test_framework.utils import tdLog, tdSql, sc, clusterComCheck, clusterComCheck
|
|
|
|
|
|
class TestDatabaseBasic1:
|
|
|
|
def setup_class(cls):
|
|
tdLog.debug(f"start to execute {__file__}")
|
|
|
|
def test_database_basic1(self):
|
|
"""Database: basic 1
|
|
|
|
1. Create database with vgroup option
|
|
2. Show vgroups
|
|
3. Show vnodes
|
|
4. Create same name db and drop loop 100 times(TD-25762)
|
|
|
|
Since: v3.0.0.0
|
|
|
|
Labels: common,ci
|
|
|
|
Jira: None
|
|
|
|
History:
|
|
- 2025-5-12 Simon Guan Migrated from tsim/db/basic1.sim
|
|
- 2025-11-04 Alex Duan Migrated from uncatalog/system-test/0-others/test_create_same_name_db.py
|
|
|
|
"""
|
|
|
|
tdLog.info(f"=============== create database")
|
|
tdSql.prepare(dbname="d1", vgroups=2)
|
|
tdSql.query(f"select * from information_schema.ins_databases")
|
|
tdSql.checkRows(3)
|
|
tdSql.checkData(2, 0, "d1")
|
|
tdSql.checkData(2, 2, 2)
|
|
tdSql.checkData(2, 3, 0)
|
|
|
|
tdLog.info(f"=============== show vgroups1")
|
|
tdSql.execute(f"use d1")
|
|
tdSql.query(f"show vgroups")
|
|
tdSql.checkRows(2)
|
|
tdSql.checkData(0, 0, 2)
|
|
tdSql.checkData(1, 0, 3)
|
|
|
|
tdLog.info(f"=============== drop database")
|
|
tdSql.execute(f"drop database d1")
|
|
tdSql.query(f"select * from information_schema.ins_databases")
|
|
tdSql.checkRows(2)
|
|
|
|
tdLog.info(f"=============== more databases")
|
|
tdSql.execute(f"create database d2 vgroups 2")
|
|
tdSql.execute(f"create database d3 vgroups 3")
|
|
tdSql.execute(f"create database d4 vgroups 4")
|
|
tdSql.query(f"select * from information_schema.ins_databases")
|
|
tdSql.checkRows(5)
|
|
|
|
tdLog.info(f"=============== show vgroups2")
|
|
tdSql.query(f"show d2.vgroups")
|
|
tdSql.checkRows(2)
|
|
tdSql.checkData(0, 0, 4)
|
|
tdSql.checkData(1, 0, 5)
|
|
|
|
tdLog.info(f"=============== show vgroups3")
|
|
tdSql.query(f"show d3.vgroups")
|
|
tdSql.checkRows(3)
|
|
tdSql.checkData(0, 0, 6)
|
|
tdSql.checkData(1, 0, 7)
|
|
tdSql.checkData(2, 0, 8)
|
|
|
|
tdLog.info(f"=============== show vgroups4")
|
|
tdSql.query(f"show d4.vgroups")
|
|
tdSql.checkRows(4)
|
|
tdSql.checkData(0, 0, 9)
|
|
tdSql.checkData(1, 0, 10)
|
|
tdSql.checkData(2, 0, 11)
|
|
tdSql.checkData(3, 0, 12)
|
|
|
|
tdLog.info(f"=============== show vnodes on dnode 1")
|
|
tdLog.info(
|
|
f"=============== Wait for the synchronization status of vnode and Mnode, heartbeat for one second"
|
|
)
|
|
|
|
time.sleep(2)
|
|
tdSql.query(f"show vnodes on dnode 1")
|
|
tdSql.checkRows(9)
|
|
tdSql.checkData(1, 0, 1)
|
|
tdSql.checkData(1, 1, 5)
|
|
tdSql.checkData(1, 2, "d2")
|
|
tdSql.checkData(1, 3, "leader")
|
|
|
|
tdLog.info(f"{tdSql.getData(1,4)} , {tdSql.getData(1,5)}")
|
|
tdSql.checkData(1, 6, 1)
|
|
|
|
tdLog.info(f"================ show vnodes")
|
|
tdSql.query(f"show vnodes")
|
|
tdSql.checkRows(9)
|
|
|
|
tdLog.info(f"=============== drop database")
|
|
tdSql.execute(f"drop database d2")
|
|
tdSql.execute(f"drop database d3")
|
|
tdSql.query(f"select * from information_schema.ins_databases")
|
|
tdSql.checkRows(3)
|
|
tdSql.checkData(2, 0, "d4")
|
|
tdSql.checkData(2, 2, 4)
|
|
tdSql.checkData(2, 3, 0)
|
|
|
|
tdLog.info(f"=============== show vgroups4 again")
|
|
tdSql.error(f"use d1")
|
|
|
|
tdSql.execute(f"use d4")
|
|
tdSql.query(f"show vgroups")
|
|
tdSql.checkRows(4)
|
|
|
|
tdLog.info(f"=============== select * from information_schema.ins_dnodes")
|
|
tdSql.query(f"select * from information_schema.ins_dnodes")
|
|
tdSql.checkData(0, 0, 1)
|
|
tdSql.checkData(0, 2, 4)
|
|
|
|
tdLog.info(f"=============== restart")
|
|
sc.dnodeForceStop(1)
|
|
sc.dnodeStart(1)
|
|
|
|
tdLog.info(f"=============== select * from information_schema.ins_databases")
|
|
tdSql.query(f"select * from information_schema.ins_databases")
|
|
tdSql.checkRows(3)
|
|
|
|
tdSql.error(f"use d1")
|
|
|
|
tdSql.execute(f"use d4")
|
|
tdSql.query(f"show vgroups")
|
|
tdSql.checkRows(4)
|
|
|
|
tdLog.info(f"=============== create databases")
|
|
tdSql.execute(f"create database d5 vgroups 5;")
|
|
|
|
tdLog.info(f"=============== show vgroups")
|
|
tdSql.execute(f"use d5")
|
|
tdSql.query(f"show vgroups")
|
|
tdSql.checkRows(5)
|
|
|
|
tdSql.query(f"show d4.vgroups")
|
|
tdSql.checkRows(4)
|
|
|
|
tdSql.query(f"show d5.vgroups")
|
|
tdSql.checkRows(5)
|
|
|
|
# test_create_same_name_db.py
|
|
self.do_create_same_name_db()
|
|
|
|
def do_create_same_name_db(self):
|
|
try:
|
|
# create same name database multiple times
|
|
for i in range(100):
|
|
tdSql.execute(f"create database db")
|
|
tdSql.execute(f"drop database db")
|
|
except Exception as ex:
|
|
tdLog.exit(str(ex)) |