mirror of
https://github.com/taosdata/TDengine
synced 2026-05-24 10:09:01 +00:00
* [TD-4132]<test>: add taosdump-testcase of boundary value testing
* [TD-3952]<test>: add taodemo-testcase that query with restful connector
* merge master
* modify taosdemo-testcase
* add testcase of async subscirbe and max sql num
* testcase-subscribe of super table
* testcase-modify sub
* modify subscribe testcase
* [TD-4238]<test>: add taodemo-testcase that records of number in request sql less than 32767
* add taosdemo-subscribe-testcase
* update taosdemo testcase
* temp commit
* temp commit
* temp commit
* temp1
* temp
* [TD-4835] add lua lib
* [TD-4369]<test>: add testcase of resubscibe
* [TD-4826]<fix>: new error code 0x0406 (Dnode is exiting) for tsc
* [TD-4369]<test>: add testcase of resubscibe and json file
* temp
* update master to develop's version
* Update boundary2.py
* [TD-4912]<hotfix>: fix coredump when drop vnode
* Hotfix/sangshuduo/td 3801 taosdump coverity scan issue (#6642)
* [TD-3801]<fix>: taosdump coverity scan issue.
* merge from commit: 069169e7c1 and fix coverity scan issue.
Co-authored-by: Shuduo Sang <sdsang@taosdata.com>
* [TD-4932]fix jenkins errors on master branch (#6645)
* [TD-4932]fix jenkins errors on master branch
* fix
* fix
* fix
* fix
* [TD-4132]<test>:modify taosdump-testcase of column length
* [TD-4918]<fix>: taosdemo subscribe endAfterResume. (#6653)
* [TD-4915]<fix> fix show-create-database except
* Hotfix/sangshuduo/td 4892 taosdemo sub fetch (#6669)
* [TD-4892]<fix>: taosdemo subscribe fetch result.
* fix stbname length.
* restrict prefix length.
* submit empty
* fix minor code.
* fix crash if no result file.
* decrease few debug print level.
* fix offset issue
* [TD-4987]<fix>: issues memory sanitizier detected. (#6675)
* [TD-4826]<fix>: no extra sleep if no message in vwqueue
* [TD-4593]<fix>: fix vnode cannnot close while syncing
* Hotfix/sangshuduo/td 4918 taosdemo sub afterconsume (#6685)
* [TD-4918]<fix>: taosdemo subscribe endAfterResume.
* fix mask length.
* fix heap use-after-free.
* Hotfix/sangshuduo/td 4987 detected by mem sanitizer (#6684)
* [TD-4987]<fix>: issues memory sanitizier detected.
* fix mask width issue.
* [TD-4828]<fix> handle dnode exit code
* Hotfix/sangshuduo/td 3973 use jemalloc for master (#6702)
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: use jemalloc.
build works as following instructions:
cmake .. -DJEMALLOC_ENABLED=true
make
* fix jemalloc at tag 5.2.1
* fix conflicts
* make install works.
* fix conflicts.
* release script works.
* fix typo
Co-authored-by: Shuduo Sang <sdsang@taosdata.com>
* TD-4835
* only compile in lua
* [td-4748]<fix>:fix the temp file generate buf on windows platform.
* change cmake options
* [TD-5007]<fix>: use build directory's taosdump to test. (#6710)
btw, solve two taosdemo test cases too.
* Hotfix/sangshuduo/td 4838 taosdump binary len bug (#6713)
* [TD-4838]<fix>: taosdump binary length bug.
* taosdump code refactoring.
* fix arm32 compile issue.
* Hotfix/sangshuduo/td 4918 taosdemo sub afterconsume (#6723)
* [TD-4918]<fix>: taosdemo subscribe endAfterResume.
* fix mask length.
* fix heap use-after-free.
* fix illegal input value of consume.
* Hotfix/sangshuduo/td 3197 taosdemo coverity scan for master (#6725)
* [TD-3197]<fix>: taosdemo and taosdump coverity scan issues.
* exit if read sample file failed.
Co-authored-by: Shuduo Sang <sdsang@taosdata.com>
* [TD-4985]<test>:test query limit and offset function
* [TD-4985]<test>:test query limit and offset function
* [TD-4985]<test>:test query limit and offset function
* [TD-4985]<test>:test query limit and offset function
* [TD-5018]<fix>: taosdemo prompt if the batch is too large to insert data. (#6736)
* fix dead loop issue
* fix taosdemoPerformance.py runtime error
* Hotfix/sangshuduo/td 3973 use jemalloc for master (#6753)
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: use jemalloc.
build works as following instructions:
cmake .. -DJEMALLOC_ENABLED=true
make
* fix jemalloc at tag 5.2.1
* fix conflicts
* make install works.
* fix conflicts.
* release script works.
* fix typo
* [TD-3937]<feature>: support jemalloc
add install funtion to all scripts.
Co-authored-by: Shuduo Sang <sdsang@taosdata.com>
* Hotfix/sangshuduo/td 3973 use jemalloc for master (#6763)
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: use jemalloc.
build works as following instructions:
cmake .. -DJEMALLOC_ENABLED=true
make
* fix jemalloc at tag 5.2.1
* fix conflicts
* make install works.
* fix conflicts.
* release script works.
* fix typo
* [TD-3937]<feature>: support jemalloc
add install funtion to all scripts.
* adjust install_jemalloc() position for check compatibility.
Co-authored-by: Shuduo Sang <sdsang@taosdata.com>
* Hotfix/sangshuduo/td 3973 use jemalloc for master (#6765)
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: use jemalloc.
build works as following instructions:
cmake .. -DJEMALLOC_ENABLED=true
make
* fix jemalloc at tag 5.2.1
* fix conflicts
* make install works.
* fix conflicts.
* release script works.
* fix typo
* [TD-3937]<feature>: support jemalloc
add install funtion to all scripts.
* adjust install_jemalloc() position for check compatibility.
* fix position bug.
Co-authored-by: Shuduo Sang <sdsang@taosdata.com>
* [TD-5067]<fix>: taosdemo stmt use sample data (#6760)
* Hotfix/sangshuduo/td 3973 use jemalloc for master (#6768)
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: use jemalloc.
build works as following instructions:
cmake .. -DJEMALLOC_ENABLED=true
make
* fix jemalloc at tag 5.2.1
* fix conflicts
* make install works.
* fix conflicts.
* release script works.
* fix typo
* [TD-3937]<feature>: support jemalloc
add install funtion to all scripts.
* adjust install_jemalloc() position for check compatibility.
* fix position bug.
* add ldconfig for jemalloc library cache refresh.
Co-authored-by: Shuduo Sang <sdsang@taosdata.com>
* [TD-5063]<test>:test insert locking bug
* [TD-5063]<test>:test insert locking bug
* [TD-4705]<fix>: disallow file sync starting when vnode closing
* Hotfix/sangshuduo/td 5053 taosdump support nanosecond for master (#6778)
* cherrypick from develop branch
* fix arm32 compile issue.
* [TD-5053]<feature>: taosdump supports nanosecond.
* fix precision parsing order issue.
* [TD-5053]<fix>: taosdump support nanosecond.
pre-cherry-pick.
* Hotfix/sangshuduo/td 5100 gtest centos for master (#6781)
* cherry pick from develop branch.
* detect both shared library and static library.
* Hotfix/sangshuduo/td 3973 use jemalloc for master (#6789)
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: use jemalloc.
build works as following instructions:
cmake .. -DJEMALLOC_ENABLED=true
make
* fix jemalloc at tag 5.2.1
* fix conflicts
* make install works.
* fix conflicts.
* release script works.
* fix typo
* [TD-3937]<feature>: support jemalloc
add install funtion to all scripts.
* adjust install_jemalloc() position for check compatibility.
* fix position bug.
* add ldconfig for jemalloc library cache refresh.
Co-authored-by: Shuduo Sang <sdsang@taosdata.com>
* Hotfix/sangshuduo/td 3973 use jemalloc for master (#6794)
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: add jemalloc as submodule.
* [TD-3973]<feature>: use jemalloc.
build works as following instructions:
cmake .. -DJEMALLOC_ENABLED=true
make
* fix jemalloc at tag 5.2.1
* fix conflicts
* make install works.
* fix conflicts.
* release script works.
* fix typo
* [TD-3937]<feature>: support jemalloc
add install funtion to all scripts.
* adjust install_jemalloc() position for check compatibility.
* fix position bug.
* add ldconfig for jemalloc library cache refresh.
* cherry pick from develop branch.
* cherry pick from develop branch.
Co-authored-by: Shuduo Sang <sdsang@taosdata.com>
* fix taosdumpTest case as -N will lead no property dumped.
Co-authored-by: tomchon <haoran920c@163.com>
Co-authored-by: Shengliang Guan <slguan@taosdata.com>
Co-authored-by: Minglei Jin <mljin@taosdata.com>
Co-authored-by: Baosheng Chang <changb9@mcmaster.ca>
Co-authored-by: Hongze Cheng <hzcheng@taosdata.com>
Co-authored-by: Shuduo Sang <sdsang@taosdata.com>
Co-authored-by: Yiqing Liu <yqliu@taosdata.com>
Co-authored-by: Hui Li <52318143+plum-lihui@users.noreply.github.com>
Co-authored-by: yihaoDeng <yhdeng@taosdata.com>
Co-authored-by: wpan <wpan@taosdata.com>
Co-authored-by: Haojun Liao <hjxilinx@users.noreply.github.com>
Co-authored-by: Haojun Liao <hjliao@taosdata.com>
Co-authored-by: happyguoxy <happy_guoxy@163.com>
Co-authored-by: Ping Xiao <pxiao@taosdata.com>
178 lines
No EOL
6.6 KiB
Python
178 lines
No EOL
6.6 KiB
Python
###################################################################
|
|
# Copyright (c) 2016 by TAOS Technologies, Inc.
|
|
# All rights reserved.
|
|
#
|
|
# This file is proprietary and confidential to TAOS Technologies.
|
|
# No part of this file may be reproduced, stored, transmitted,
|
|
# disclosed or used in any form or by any means other than as
|
|
# expressly provided by the written permission from Jianhui Tao
|
|
#
|
|
###################################################################
|
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
import sys
|
|
import taos
|
|
from util.log import tdLog
|
|
from util.cases import tdCases
|
|
from util.sql import tdSql
|
|
import random
|
|
|
|
|
|
class TDTestCase:
|
|
def init(self, conn, logSql):
|
|
tdLog.debug("start to execute %s" % __file__)
|
|
tdSql.init(conn.cursor(), logSql)
|
|
|
|
|
|
|
|
def run(self):
|
|
tdSql.prepare()
|
|
# test case for https://jira.taosdata.com:18080/browse/TD-5021
|
|
|
|
tdLog.info("\n\n----------step1 : drop db and create db----------\n")
|
|
tdSql.execute('''drop database if exists db ;''')
|
|
tdSql.execute('''create database db ;''')
|
|
sql = '''show databases;'''
|
|
tdSql.query(sql)
|
|
tdSql.checkRows(1)
|
|
|
|
tdLog.info("\n\n----------step2 : create stable----------\n")
|
|
tdSql.execute('''create stable
|
|
db.stable_1 (ts timestamp, payload binary(256))
|
|
tags(t1 binary(16),t2 int);''')
|
|
sql = '''show db.stables;'''
|
|
tdSql.query(sql)
|
|
tdSql.checkRows(1)
|
|
|
|
tdLog.info("\n\n----------step3 : create table and insert----------\n")
|
|
sql = '''insert into db.table1 using db.stable_1 (t1 , t2) tags ("table_1" , 111) ( values (now, ;'''
|
|
tdLog.info(sql)
|
|
tdSql.error(sql)
|
|
try:
|
|
tdSql.execute(sql)
|
|
tdLog.exit(" unexpected token")
|
|
except Exception as e:
|
|
tdLog.info(repr(e))
|
|
tdLog.info("DB error: syntax error near ', ;' (unexpected token)")
|
|
|
|
sql = '''insert into db.table1(ts , payload) using db.stable_1 (t1 , t2) tags ("table_1" , 111) ( values (now, ;'''
|
|
tdLog.info(sql)
|
|
tdSql.error(sql)
|
|
try:
|
|
tdSql.execute(sql)
|
|
tdLog.exit(" bind columns again")
|
|
except Exception as e:
|
|
tdLog.info(repr(e))
|
|
tdLog.info("DB error: syntax error near ', ;' (bind columns again)")
|
|
|
|
sql = '''insert into db.table1 using db.stable_1 (t1 , t2) tags ("table_1",111) (ts , payload) ( values (now, ;'''
|
|
tdLog.info(sql)
|
|
tdSql.error(sql)
|
|
try:
|
|
tdSql.execute(sql)
|
|
tdLog.exit(" keyword VALUES or FILE required ")
|
|
except Exception as e:
|
|
tdLog.info(repr(e))
|
|
tdLog.info("DB error: invalid SQL: (keyword VALUES or FILE required)")
|
|
|
|
tdSql.execute('''insert into db.table1 using db.stable_1 (t1 , t2)
|
|
tags ("table_1" , 111) values ( now , 1) ''')
|
|
sql = '''select * from db.stable_1;'''
|
|
tdSql.query(sql)
|
|
tdSql.checkRows(1)
|
|
tdSql.checkData(0,1,1)
|
|
tdSql.checkData(0,2,'table_1')
|
|
|
|
tdLog.info("\n\n----------step4 : create table and insert again----------\n")
|
|
sql = '''insert into db.table2 using db.stable_1 (t1) tags ("table_2") ( values (now, ;'''
|
|
tdLog.info(sql)
|
|
tdSql.error(sql)
|
|
try:
|
|
tdSql.execute(sql)
|
|
tdLog.exit(" unexpected token")
|
|
except Exception as e:
|
|
tdLog.info(repr(e))
|
|
tdLog.info("DB error: syntax error near ', ;' (unexpected token)")
|
|
|
|
tdSql.execute('''insert into db.table2 using db.stable_1 (t1)
|
|
tags ("table_2") values ( now , 2) ''')
|
|
sql = '''select * from db.stable_1;'''
|
|
tdSql.query(sql)
|
|
tdSql.checkRows(2)
|
|
tdSql.checkData(1,1,2)
|
|
tdSql.checkData(1,2,'table_2')
|
|
|
|
tdLog.info("\n\n----------step5 : create table and insert without db----------\n")
|
|
tdSql.execute('''use db''')
|
|
sql = '''insert into table3 using stable_1 (t1) tags ("table_3") ( values (now, ;'''
|
|
tdLog.info(sql)
|
|
tdSql.error(sql)
|
|
try:
|
|
tdSql.execute(sql)
|
|
tdLog.exit(" unexpected token")
|
|
except Exception as e:
|
|
tdLog.info(repr(e))
|
|
tdLog.info("DB error: syntax error near ', ;' (unexpected token)")
|
|
|
|
tdSql.execute('''insert into table3 using stable_1 (t1 , t2)
|
|
tags ("table_3" , 333) values ( now , 3) ''')
|
|
sql = '''select * from stable_1;'''
|
|
tdSql.query(sql)
|
|
tdSql.checkRows(3)
|
|
tdSql.checkData(2,1,3)
|
|
tdSql.checkData(2,2,'table_3')
|
|
|
|
tdLog.info("\n\n----------step6 : create tables in one sql ----------\n")
|
|
sql = '''insert into table4 using stable_1 (t1) tags ("table_4") values (now, 4)
|
|
table5 using stable_1 (t1) tags ("table_5") ( values (now, ;'''
|
|
tdLog.info(sql)
|
|
tdSql.error(sql)
|
|
try:
|
|
tdSql.execute(sql)
|
|
tdLog.exit(" unexpected token")
|
|
except Exception as e:
|
|
tdLog.info(repr(e))
|
|
tdLog.info("DB error: syntax error near ', ;' (unexpected token)")
|
|
|
|
tdSql.execute('''insert into table4 using stable_1 (t1) tags ("table_4") values (now, 4)
|
|
table5 using stable_1 (t1) tags ("table_5") values (now, 5) ''')
|
|
sql = '''select * from stable_1;'''
|
|
tdSql.query(sql)
|
|
tdSql.checkRows(5)
|
|
tdSql.checkData(3,1,4)
|
|
tdSql.checkData(3,2,'table_4')
|
|
tdSql.checkData(4,1,5)
|
|
tdSql.checkData(4,2,'table_5')
|
|
|
|
|
|
sql = '''insert into table6 using stable_1 (t1) tags ("table_6") ( values (now,
|
|
table7 using stable_1 (t1) tags ("table_7") values (now, 7);'''
|
|
tdLog.info(sql)
|
|
tdSql.error(sql)
|
|
try:
|
|
tdSql.execute(sql)
|
|
tdLog.exit(" invalid SQL")
|
|
except Exception as e:
|
|
tdLog.info(repr(e))
|
|
tdLog.info("invalid SQL")
|
|
|
|
tdSql.execute('''insert into table6 using stable_1 (t1 , t2) tags ("table_6" , 666) values (now, 6)
|
|
table7 using stable_1 (t1) tags ("table_7") values (now, 7) ''')
|
|
sql = '''select * from stable_1;'''
|
|
tdSql.query(sql)
|
|
tdSql.checkRows(7)
|
|
tdSql.checkData(5,1,6)
|
|
tdSql.checkData(5,2,'table_6')
|
|
tdSql.checkData(6,1,7)
|
|
tdSql.checkData(6,2,'table_7')
|
|
|
|
|
|
|
|
def stop(self):
|
|
tdSql.close()
|
|
tdLog.success("%s successfully executed" % __file__)
|
|
|
|
|
|
tdCases.addWindows(__file__, TDTestCase())
|
|
tdCases.addLinux(__file__, TDTestCase()) |