more code
This commit is contained in:
parent
791c9de729
commit
f1470cd79c
|
@ -1,108 +1,84 @@
|
|||
# tests/test_new/xxx/xxx/test_xxx.py
|
||||
# import ...
|
||||
# ./pytest.sh python3 ./test.py -f storage/compact/test_compact_meta.py
|
||||
'''
|
||||
./pytest.sh python3 ./test.py -f storage/compact/test_compact_meta.py
|
||||
'''
|
||||
|
||||
import random
|
||||
import taos
|
||||
import taos
|
||||
import frame
|
||||
import frame.etool
|
||||
import sys
|
||||
from math import inf
|
||||
|
||||
from util.dnodes import tdDnodes
|
||||
from util.sql import *
|
||||
from util.cases import *
|
||||
from util.log import *
|
||||
|
||||
from frame.log import *
|
||||
from frame.cases import *
|
||||
from frame.sql import *
|
||||
from frame.caseBase import *
|
||||
from frame import *
|
||||
from frame.autogen import *
|
||||
sys.path.append("../tests/pytest")
|
||||
|
||||
|
||||
class TestCompactMeta:
|
||||
def init(self):
|
||||
def caseDescription(self):
|
||||
'''
|
||||
case1<Hongze Cheng>: [TS-5445] Compact Meta Data
|
||||
'''
|
||||
return
|
||||
|
||||
def init(self, conn, logSql, replicaVer=1):
|
||||
tdLog.debug("start to execute %s" % __file__)
|
||||
|
||||
def test_template(self):
|
||||
"""用例目标,必填,用一行简短总结
|
||||
<空行>
|
||||
用例详细描述,必填,允许多行
|
||||
<空行>
|
||||
Since: 用例开始支持的TDengine版本,新增用例必填
|
||||
<空行>
|
||||
Labels: 筛选标签,选填,多个标签用英文逗号分隔
|
||||
<空行>
|
||||
Jira: 相关jira任务id,选填
|
||||
<空行>
|
||||
History: 用例变更历史,选填,每行一次变更信息
|
||||
- 日期1 变更人1 变更原因1
|
||||
- 日期2 变更人2 变更原因2
|
||||
"""
|
||||
|
||||
def test_demo(self):
|
||||
"""测试超级表插入各种数据类型
|
||||
|
||||
使用多种数据类型创建超级表,向超级表插入数据,
|
||||
包括:常规数据,空数据,边界值等,插入均执行成功
|
||||
|
||||
Since: v3.3.0.0
|
||||
|
||||
Labels: stable, data_type
|
||||
|
||||
Jira: TD-12345, TS-1234
|
||||
|
||||
History:
|
||||
- 2024-2-6 Feng Chao Created
|
||||
- 2024-2-7 Huo Hong updated for feature TD-23456
|
||||
"""
|
||||
|
||||
def test_case1(self):
|
||||
dbname = 'db'
|
||||
super_table = "stb"
|
||||
child_table_prefix = "ctb"
|
||||
num_of_child_tables = 10000
|
||||
max_alter_times = 100
|
||||
|
||||
# Drop database
|
||||
sql = f'drop database if exists {dbname}'
|
||||
print(sql)
|
||||
tdSql.execute(sql)
|
||||
|
||||
# Create database
|
||||
sql = f'create database {dbname}'
|
||||
print(sql)
|
||||
tdSql.query(sql)
|
||||
|
||||
# # Create super table
|
||||
# sql = f'create {dbname}.{super_table} (ts timestamp, c1 int) tags (tag1 int)'
|
||||
# tdSql.query(sql)
|
||||
|
||||
# # Create child tables
|
||||
# for i in range(num_of_child_tables):
|
||||
# sql = f'create {dbname}.{child_table_prefix}{i} using {dbname}.{super_table} tags ({i})'
|
||||
# tdSql.query(sql)
|
||||
|
||||
# # Alter child tables
|
||||
# for i in range(num_of_child_tables):
|
||||
# for j in range(random.randint(1, max_alter_times)):
|
||||
# sql = f'alter table {dbname}.{child_table_prefix}{i} set tag1 = {i + j}'
|
||||
# tdSql.query(sql)
|
||||
|
||||
# # Alter super tables
|
||||
# for i in range(random.randint(1, max_alter_times)):
|
||||
# sql = f'alter table {dbname}.{super_table} add column c{i+1} int'
|
||||
# tdSql.query(sql)
|
||||
|
||||
# # Compact meta
|
||||
# sql = f'compact database {dbname}'
|
||||
# tdSql.query(sql)
|
||||
tdSql.init(conn.cursor(), True)
|
||||
self.conn = conn
|
||||
|
||||
def run(self):
|
||||
self.test_template()
|
||||
self.test_demo()
|
||||
self.test_case1()
|
||||
|
||||
def stop(self):
|
||||
tdSql.close()
|
||||
tdLog.success("%s successfully executed" % __file__)
|
||||
|
||||
def test_case1(self):
|
||||
"""
|
||||
Description:
|
||||
1. Alter child table tags
|
||||
2. Make sure compact meta works
|
||||
"""
|
||||
db_name = 'db1'
|
||||
stb_name = 'stb1'
|
||||
ctb_name_prefix = 'ctb'
|
||||
num_child_tables = 10000
|
||||
|
||||
tdCases.addLinux(__file__, TDTestCase())
|
||||
tdCases.addWindows(__file__, TDTestCase())
|
||||
# Drop database
|
||||
sql = f'drop database if exists {db_name}'
|
||||
tdSql.execute(sql)
|
||||
|
||||
# Create database
|
||||
sql = f'create database {db_name} vgroups 1'
|
||||
tdSql.execute(sql)
|
||||
|
||||
# Create super table
|
||||
sql = f'create table {db_name}.{stb_name} (ts timestamp, c1 int, c2 int) tags(t1 int)'
|
||||
tdSql.execute(sql)
|
||||
|
||||
# Create child tables
|
||||
for i in range(1, num_child_tables+1):
|
||||
sql = f'create table {db_name}.{ctb_name_prefix}{i} using {db_name}.{stb_name} tags({i})'
|
||||
tdSql.execute(sql)
|
||||
|
||||
# Alter child table tags
|
||||
for i in range(1, num_child_tables+1):
|
||||
sql = f'alter table {db_name}.{ctb_name_prefix}{i} set tag t1 = {i+1}'
|
||||
tdSql.execute(sql)
|
||||
|
||||
# Compact meta
|
||||
sql = f'compact database {db_name} meta_only'
|
||||
tdSql.execute(sql)
|
||||
|
||||
def test_case2(self):
|
||||
"""
|
||||
Description:
|
||||
After compact, the snapshot still works
|
||||
"""
|
||||
pass
|
||||
|
||||
|
||||
tdCases.addWindows(__file__, TestCompactMeta())
|
||||
tdCases.addLinux(__file__, TestCompactMeta())
|
||||
|
|
Loading…
Reference in New Issue