homework-jianmu/tests/system-test/2-query/slimit.py

1822 lines
108 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

###################################################################
# 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 os
import random
import re
from util.log import *
from util.cases import *
from util.sql import *
from util.dnodes import *
class TDTestCase:
def init(self, conn, logSql, replicaVar):
tdLog.debug("start to execute %s" % __file__)
tdSql.init(conn.cursor(), logSql)
self.testcasePath = os.path.split(__file__)[0]
self.testcaseFilename = os.path.split(__file__)[-1]
os.system("rm -rf %s/%s.sql" % (self.testcasePath,self.testcaseFilename))
def getBuildPath(self):
selfPath = os.path.dirname(os.path.realpath(__file__))
if ("community" in selfPath):
projPath = selfPath[:selfPath.find("community")]
else:
projPath = selfPath[:selfPath.find("tests")]
for root, dirs, files in os.walk(projPath):
if ("taosd" in files or "taosd.exe" in files):
rootRealPath = os.path.dirname(os.path.realpath(root))
if ("packaging" not in rootRealPath):
buildPath = root[:len(root)-len("/build/bin")]
break
return buildPath
def run_benchmark(self,dbname,tables,per_table_num,vgroups,replica):
buildPath = self.getBuildPath()
if (buildPath == ""):
tdLog.exit("taosd not found!")
else:
tdLog.info("taosd found in %s" % buildPath)
binPath = buildPath+ "/build/bin/"
print("%staosBenchmark -d %s -t %d -n %d -v %d -a %d -y " % (binPath,dbname,tables,per_table_num,vgroups,replica))
os.system("%staosBenchmark -d %s -t %d -n %d -v %d -a %d -y " % (binPath,dbname,tables,per_table_num,vgroups,replica))
def sql_query_time_cost(self,sql):
startTime = time.time()
tdSql.query(sql)
endTime = time.time()
tdLog.info("sql:%s query time cost (%d)s" % (sql,endTime - startTime))
def sql_limit_retun_n_slimit_return_error(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n = n;sql limit 0 = 0 ;sql slmit n = error;sql slimit 0 = error
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkRows(num)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(num)
sql_0 = re.sub(r'\d\d',"0",sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
sql = sql.replace('limit','slimit')
tdSql.error(sql)
nest_sql = nest_sql.replace('limit','slimit')
tdSql.error(nest_sql)
sql_0 = re.sub(r'\d\d',"0",sql)
tdSql.error(sql_0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
tdSql.error(nest_sql_0)
def sql_data_limit_retun_n_slimit_return_error(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n = n;sql limit 0 = 0 ;sql slmit n = error;sql slimit 0 = error
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,num)
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,num)
sql_0 = re.sub(r'\d\d',"0",sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
sql = sql.replace('limit','slimit')
tdSql.error(sql)
nest_sql = nest_sql.replace('limit','slimit')
tdSql.error(nest_sql)
sql_0 = re.sub(r'\d\d',"0",sql)
tdSql.error(sql_0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
tdSql.error(nest_sql_0)
def sql_limit_retun_1_slimit_return_error(self,sql,tables,per_table_num,base_fun,replace_fun):
#sql limit n =1;sql limit 0 = 0 ;sql slmit n = error;sql slimit 0 = error
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkRows(1)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(1)
sql_0 = re.sub(r'\d+',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
sql = sql.replace('limit','slimit')
tdSql.error(sql)
nest_sql = nest_sql.replace('limit','slimit')
tdSql.error(nest_sql)
sql_0 = re.sub(r'\d+',"0",sql)
tdSql.error(sql_0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
tdSql.error(nest_sql_0)
def sql_data_limit_retun_1_slimit_return_error(self,sql,tables,per_table_num,base_fun,replace_fun):
#sql limit n =1;sql limit 0 = 0 ;sql slmit n = error;sql slimit 0 = error
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,1)
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,1)
sql_0 = re.sub(r'\d+',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
sql = sql.replace('limit','slimit')
tdSql.error(sql)
nest_sql = nest_sql.replace('limit','slimit')
tdSql.error(nest_sql)
sql_0 = re.sub(r'\d+',"0",sql)
tdSql.error(sql_0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
tdSql.error(nest_sql_0)
def sql_last_limit_retun_1_slimit_return_error(self,sql,tables,per_table_num,base_fun,replace_fun):
#sql limit n =1;sql limit 0 = 0 ;sql slmit n = error;sql slimit 0 = error
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
rows = tdSql.queryRows
if (rows >= 1 or rows <= 4):
tdLog.info("sql checkrows success")
else:
tdLog.exit(f"checkEqual error, sql_rows=={rows}")
self.sql_query_time_cost(nest_sql)
rows = tdSql.queryRows
if (rows >= 1 or rows <= 4):
tdLog.info("sql checkrows success")
else:
tdLog.exit(f"checkEqual error, sql_rows=={rows}")
sql_0 = re.sub(r'\d+',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
sql = sql.replace('limit','slimit')
tdSql.error(sql)
nest_sql = nest_sql.replace('limit','slimit')
tdSql.error(nest_sql)
sql_0 = re.sub(r'\d+',"0",sql)
tdSql.error(sql_0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
tdSql.error(nest_sql_0)
def sql_limit_retun_tables_slimit_return_error(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n;sql limit 0 = 0 ;sql slmit n = error;sql slimit 0 = error
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkRows(tables)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(tables)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
sql = sql.replace('limit','slimit')
tdSql.error(sql)
nest_sql = nest_sql.replace('limit','slimit')
tdSql.error(nest_sql)
sql_0 = re.sub(r'\d+',"0",sql)
tdSql.error(sql_0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
tdSql.error(nest_sql_0)
def sql_limit_retun_tables_slimit_return_n(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n =tables;sql limit 0 = 0 ;sql slmit n = n;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkRows(tables)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(tables)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
sql = sql.replace('limit','slimit')
self.sql_query_time_cost(sql)
tdSql.checkRows(num)
nest_sql = nest_sql.replace('limit','slimit')
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
def sql_data_limit_retun_tables_slimit_return_n(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n =tables;sql limit 0 = 0 ;sql slmit n = n;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,tables)
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,tables)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
sql = sql.replace('limit','slimit')
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,num)
nest_sql = nest_sql.replace('limit','slimit')
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
def sql_limit_retun_n_slimit_return_tables(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n;sql limit 0 = 0 ;sql slmit n = 100;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkRows(num)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
sql = sql.replace('limit','slimit')
self.sql_query_time_cost(sql)
tdSql.checkRows(tables)
nest_sql = nest_sql.replace('limit','slimit')
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(tables)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
def sql_data_limit_retun_n_slimit_return_tables(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n;sql limit 0 = 0 ;sql slmit n = 100;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,num)
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
sql = sql.replace('limit','slimit')
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,tables)
nest_sql = nest_sql.replace('limit','slimit')
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,tables)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
def sql_limit_retun_tables_times_n_slimit_return_error(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n*tables;sql limit 0 = 0 ;sql slmit n = tables*n;sql slimit 0 = 0
#interval
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkRows(num*tables)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(num*tables)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
sql = sql.replace('limit','slimit')
tdSql.error(sql)
nest_sql = nest_sql.replace('limit','slimit')
tdSql.error(nest_sql)
sql_0 = re.sub(r'\d\d',"0",sql)
tdSql.error(sql_0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
tdSql.error(nest_sql_0)
def sql_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n*tables;sql limit 0 = 0 ;sql slmit n = per_table_num*n;sql slimit 0 = 0
#interval
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkRows(num*tables)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(num*tables)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
sql = sql.replace('limit','slimit')
self.sql_query_time_cost(sql)
tdSql.checkRows(num*per_table_num)
nest_sql = nest_sql.replace('limit','slimit')
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(num*per_table_num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
def sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n*tables;sql limit 0 = 0 ;sql slmit n = per_table_num*n;sql slimit 0 = 0
#interval
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,num*tables)
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,num*tables)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
sql = sql.replace('limit','slimit')
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,num*per_table_num)
nest_sql = nest_sql.replace('limit','slimit')
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,num*per_table_num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
def sql_limit_retun_n_slimit_return_per_table_num_times_tables(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n*tables;sql limit 0 = 0 ;sql slmit n = per_table_num*n;sql slimit 0 = 0
#interval
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkRows(num)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
sql = sql.replace('limit','slimit')
self.sql_query_time_cost(sql)
tdSql.checkRows(tables*per_table_num)
nest_sql = nest_sql.replace('limit','slimit')
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(tables*per_table_num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
def sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n*tables;sql limit 0 = 0 ;sql slmit n = per_table_num*n;sql slimit 0 = 0
#interval
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,num)
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql) # \d是匹配数字字符[0-9]+匹配一个或多个
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
sql = sql.replace('limit','slimit')
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,tables*per_table_num)
nest_sql = nest_sql.replace('limit','slimit')
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,tables*per_table_num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
def sql_limit_not_test_slimitkeep_return_per_table_num_times_n(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql sql slmit n = per_table_num*n;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
sql = sql.replace('limit','limit')
self.sql_query_time_cost(sql)
tdSql.checkRows(num*per_table_num)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(num*per_table_num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
def sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql sql slmit n = per_table_num*n;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
sql = sql.replace('limit','limit')
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,num*per_table_num)
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,num*per_table_num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
def sql_limit_not_test_slimitkeep_return_per_table_num_times_tables(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql sql slmit n = per_table_num*tables;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkRows(tables*per_table_num)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(tables*per_table_num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
def sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(self,sql,num,tables,per_table_num,base_fun,replace_fun):
#sql sql slmit n = per_table_num*tables;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,tables*per_table_num)
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,tables*per_table_num)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
def sql_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(self,sql,num,num2,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n*num2;sql limit 0 = 0 ;sql slmit n = num2*n;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkRows(num*num2)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(num*num2)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
sql = sql.replace('limit','limit')
self.sql_query_time_cost(sql)
tdSql.checkRows(num*num2)
nest_sql = nest_sql.replace('limit','limit')
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(num*num2)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
def sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(self,sql,num,num2,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n*num2;sql limit 0 = 0 ;sql slmit n = num2*n;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,num*num2)
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,num*num2)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
sql = sql.replace('limit','limit')
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,num*num2)
nest_sql = nest_sql.replace('limit','limit')
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,num*num2)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
def sql_limit_times_slimitkeep_return_n2(self,sql,num,num2,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n*num2;sql limit 0 = 0 ;sql slmit n = num2*n;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkRows(num2)
self.sql_query_time_cost(nest_sql)
tdSql.checkRows(num2)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkRows(0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkRows(0)
def sql_data_limit_times_slimitkeep_return_n2(self,sql,num,num2,tables,per_table_num,base_fun,replace_fun):
#sql limit n =n*num2;sql limit 0 = 0 ;sql slmit n = num2*n;sql slimit 0 = 0
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,num2)
self.sql_query_time_cost(nest_sql)
tdSql.checkData(0,0,num2)
sql_0 = re.sub(r'\d\d',"0",sql)
self.sql_query_time_cost(sql_0)
tdSql.checkData(0,0,0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
self.sql_query_time_cost(nest_sql_0)
tdSql.checkData(0,0,0)
def sql_retun_error(self,sql,base_fun,replace_fun):
#sql limit n = error;sql limit 0 = error ;sql slmit n = error ;sql slimit 0 = error
sql = sql.replace('%s'%base_fun,'%s'%replace_fun)
nest_sql =" select * from (%s) " %sql
tdSql.error(sql)
tdSql.error(nest_sql)
sql_0 = re.sub(r'\d+',"0",sql)
tdSql.error(sql)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
tdSql.error(nest_sql_0)
sql = sql.replace('limit','slimit')
tdSql.error(sql)
nest_sql = nest_sql.replace('limit','slimit')
tdSql.error(nest_sql)
sql_0 = re.sub(r'\d+',"0",sql)
tdSql.error(sql_0)
nest_sql_0 = re.sub(r'\d\d',"0",nest_sql)
tdSql.error(nest_sql_0)
def fun_base(self,dbname,num,num2,tables,per_table_num,dbnamejoin,base_fun,replace_fun):
tdLog.info("base query ---------1----------")
sql = "select * from %s.meters limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.* from %s.meters a,%s.meters b where a.ts = b.ts limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("base query ---------2----------")
sql = "select * from %s.meters where ts is not null limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.* from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("base query ---------3----------")
sql = "select * from %s.meters where ts is not null order by ts limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.* from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts order by b.ts limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("base query ---------4----------")
sql = "select * from %s.meters where ts is not null order by ts desc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.* from %s.meters a,%s.meters b where b.ts is not null and a.ts = b.ts order by a.ts desc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
def fun_count(self,dbname,num,num2,tables,per_table_num,dbnamejoin,base_fun,replace_fun):
tdLog.info("count query ---------1----------")
sql = "select count(*) from %s.meters limit %d" %(dbname,num)
self.sql_limit_retun_1_slimit_return_error(sql,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_1_slimit_return_error(sql,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_1_slimit_return_error(sql_union,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_1_slimit_return_error(sql_union_all,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(a.*) from %s.meters a,%s.meters b where a.ts = b.ts limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_1_slimit_return_error(sql_join,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_1_slimit_return_error(sql_join,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_1_slimit_return_error(sql_union,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_1_slimit_return_error(sql_union_all,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------2----------")
sql = "select count(*) from %s.meters where ts is not null limit %d" %(dbname,num)
self.sql_limit_retun_1_slimit_return_error(sql,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_1_slimit_return_error(sql,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_1_slimit_return_error(sql_union,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_1_slimit_return_error(sql_union_all,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(a.*) from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_1_slimit_return_error(sql_join,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_1_slimit_return_error(sql_join,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_1_slimit_return_error(sql_union,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_1_slimit_return_error(sql_union_all,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------3----------")
sql = "select count(*) from %s.meters where ts is not null order by ts limit %d" %(dbname,num)
self.sql_retun_error(sql,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_retun_error(sql,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
sql_join = "select count(a.*) from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts order by b.ts limit %d" %(dbname,dbnamejoin,num)
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
tdLog.info("count query ---------4----------")
sql = "select count(*) from %s.meters where ts is not null order by ts desc limit %d" %(dbname,num)
self.sql_retun_error(sql,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_retun_error(sql,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
sql_join = "select count(a.*) from %s.meters a,%s.meters b where b.ts is not null and a.ts = b.ts order by a.ts desc limit %d" %(dbname,dbnamejoin,num)
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
tdLog.info("count query ---------5----------")
sql = "select count(*) from %s.meters where ts is not null group by tbname limit %d" %(dbname,num)
self.sql_limit_retun_tables_slimit_return_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_tables_slimit_return_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts group by b.tbname limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_tables_slimit_return_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_tables_slimit_return_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------6----------")
sql = "select count(*) from %s.meters where ts is not null partition by tbname limit %d" %(dbname,num)
self.sql_limit_retun_tables_slimit_return_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_tables_slimit_return_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by b.tbname limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_tables_slimit_return_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_tables_slimit_return_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------7----------")
sql = "select count(*) cc from %s.meters where ts is not null group by tbname order by cc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts group by b.tbname order by cc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------8----------")
sql = "select count(*) cc from %s.meters where ts is not null partition by tbname order by cc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by b.tbname order by cc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------9----------")
sql = "select count(*) cc from %s.meters where ts is not null interval(1a) limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts interval(1a) limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------10----------")
sql = "select count(*) cc from %s.meters where ts is not null interval(1a) order by cc asc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts interval(1a) order by cc asc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------11----------")
sql = "select count(*) cc from %s.meters where ts is not null interval(1a) order by cc desc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts interval(1a) order by cc desc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------12----------")
sql = "select tbname,count(*) cc from %s.meters where ts is not null interval(1a) group by tbname limit %d" %(dbname,num)
self.sql_retun_error(sql,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_retun_error(sql,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
sql_join = "select a.tbname,count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts interval(1a) group by b.tbname limit %d" %(dbname,dbnamejoin,num)
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
tdLog.info("count query ---------13----------")
sql = "select tbname,count(*) cc from %s.meters where ts is not null interval(1a) partition by tbname limit %d" %(dbname,num)
self.sql_retun_error(sql,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_retun_error(sql,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
sql_join = "select a.tbname,count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts interval(1a) partition by b.tbname limit %d" %(dbname,dbnamejoin,num)
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
tdLog.info("count query ---------14----------")
sql = "select tbname,count(*) cc from %s.meters where ts is not null partition by tbname interval(1a) limit %d" %(dbname,num)
self.sql_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------15----------")
sql = "select tbname,count(*) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc asc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc asc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------16----------")
sql = "select tbname,count(*) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc desc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc desc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------17----------")
sql = "select tbname,count(*) cc from %s.meters where ts is not null partition by tbname interval(1a) slimit %d" %(dbname,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) slimit %d" %(dbname,dbnamejoin,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------18----------")
sql = "select tbname,count(*) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc asc slimit %d" %(dbname,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc asc slimit %d" %(dbname,dbnamejoin,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------19----------")
sql = "select tbname,count(*) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc desc slimit %d" %(dbname,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc desc slimit %d" %(dbname,dbnamejoin,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------20----------")
sql = "select tbname,count(*) cc from %s.meters where ts is not null partition by tbname interval(1a) slimit %d limit %d" %(dbname,num,num2)
self.sql_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) slimit %d limit %d" %(dbname,dbnamejoin,num,num2)
self.sql_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------21----------")
sql = "select tbname,count(*) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc asc slimit %d limit %d" %(dbname,num,num2)
self.sql_limit_times_slimitkeep_return_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_times_slimitkeep_return_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc asc slimit %d limit %d" %(dbname,dbnamejoin,num,num2)
self.sql_limit_times_slimitkeep_return_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_times_slimitkeep_return_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
tdLog.info("count query ---------22----------")
sql = "select tbname,count(*) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc desc slimit %d limit %d" %(dbname,num,num2)
self.sql_limit_times_slimitkeep_return_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_times_slimitkeep_return_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,count(*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc desc slimit %d limit %d" %(dbname,dbnamejoin,num,num2)
self.sql_limit_times_slimitkeep_return_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_times_slimitkeep_return_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
def fun_last(self,dbname,num,num2,tables,per_table_num,dbnamejoin,base_fun,replace_fun):
tdLog.info("last query ---------1----------")
sql = "select last(*) from %s.meters limit %d" %(dbname,num)
self.sql_limit_retun_1_slimit_return_error(sql,tables,per_table_num,base_fun,replace_fun)
sql = "select last(*) from (%s)" %sql
self.sql_limit_retun_1_slimit_return_error(sql,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_last_limit_retun_1_slimit_return_error(sql_union,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_last_limit_retun_1_slimit_return_error(sql_union_all,tables,per_table_num,base_fun,replace_fun)
sql_join = "select last(a.*) from %s.meters a,%s.meters b where a.ts = b.ts limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_1_slimit_return_error(sql_join,tables,per_table_num,base_fun,replace_fun)
sql_join = "select last(*) from (%s)" %sql_join
self.sql_limit_retun_1_slimit_return_error(sql_join,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_last_limit_retun_1_slimit_return_error(sql_union,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_last_limit_retun_1_slimit_return_error(sql_union_all,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------2----------")
sql = "select last(*) from %s.meters where ts is not null limit %d" %(dbname,num)
self.sql_limit_retun_1_slimit_return_error(sql,tables,per_table_num,base_fun,replace_fun)
sql = "select last(*) from (%s)" %sql
self.sql_limit_retun_1_slimit_return_error(sql,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_last_limit_retun_1_slimit_return_error(sql_union,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_last_limit_retun_1_slimit_return_error(sql_union_all,tables,per_table_num,base_fun,replace_fun)
sql_join = "select last(a.*) from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_1_slimit_return_error(sql_join,tables,per_table_num,base_fun,replace_fun)
sql_join = "select last(*) from (%s)" %sql_join
self.sql_limit_retun_1_slimit_return_error(sql_join,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_last_limit_retun_1_slimit_return_error(sql_union,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_last_limit_retun_1_slimit_return_error(sql_union_all,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------3----------")
sql = "select last(*) from %s.meters where ts is not null order by ts limit %d" %(dbname,num)
self.sql_retun_error(sql,base_fun,replace_fun)
sql = "select last(*) from (%s)" %sql
self.sql_retun_error(sql,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
sql_join = "select last(a.*) from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts order by b.ts limit %d" %(dbname,dbnamejoin,num)
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_join = "select last(*) from (%s)" %sql_join
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
tdLog.info("last query ---------4----------")
sql = "select last(*) from %s.meters where ts is not null order by ts desc limit %d" %(dbname,num)
self.sql_retun_error(sql,base_fun,replace_fun)
sql = "select last(*) from (%s)" %sql
self.sql_retun_error(sql,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
sql_join = "select last(a.*) from %s.meters a,%s.meters b where b.ts is not null and a.ts = b.ts order by a.ts desc limit %d" %(dbname,dbnamejoin,num)
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_join = "select last(*) from (%s)" %sql_join
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
tdLog.info("last query ---------5----------")
sql = "select last(*) from %s.meters where ts is not null group by tbname limit %d" %(dbname,num)
self.sql_limit_retun_tables_slimit_return_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_tables_slimit_return_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select last(a.*) from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts group by b.tbname limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_tables_slimit_return_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_tables_slimit_return_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------6----------")
sql = "select last(*) from %s.meters where ts is not null partition by tbname limit %d" %(dbname,num)
self.sql_limit_retun_tables_slimit_return_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_tables_slimit_return_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select last(a.*) from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by b.tbname limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_tables_slimit_return_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_tables_slimit_return_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_tables_slimit_return_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------7----------")
sql = "select last(ts) cc from %s.meters where ts is not null group by tbname order by cc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts group by b.tbname order by cc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------8----------")
sql = "select last(ts) cc from %s.meters where ts is not null partition by tbname order by cc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by b.tbname order by cc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------9----------")
sql = "select last(*) from %s.meters where ts is not null interval(1a) limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts interval(1a) limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------10----------")
sql = "select last(ts) cc from %s.meters where ts is not null interval(1a) order by cc asc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts interval(1a) order by cc asc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------11----------")
sql = "select last(ts) cc from %s.meters where ts is not null interval(1a) order by cc desc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_error(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts interval(1a) order by cc desc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_error(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_error(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_error(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------12----------")
sql = "select tbname,last(ts) cc from %s.meters where ts is not null interval(1a) group by tbname limit %d" %(dbname,num)
self.sql_retun_error(sql,base_fun,replace_fun)
sql = "select last(*) from (%s)" %sql
self.sql_retun_error(sql,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
sql_join = "select a.tbname,last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts interval(1a) group by b.tbname limit %d" %(dbname,dbnamejoin,num)
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_join = "select last(*) from (%s)" %sql_join
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
tdLog.info("last query ---------13----------")
sql = "select tbname,last(ts) cc from %s.meters where ts is not null interval(1a) partition by tbname limit %d" %(dbname,num)
self.sql_retun_error(sql,base_fun,replace_fun)
sql = "select last(*) from (%s)" %sql
self.sql_retun_error(sql,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
sql_join = "select a.tbname,last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts interval(1a) partition by b.tbname limit %d" %(dbname,dbnamejoin,num)
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_join = "select last(*) from (%s)" %sql_join
self.sql_retun_error(sql_join,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_retun_error(sql_union,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_retun_error(sql_union_all,base_fun,replace_fun)
tdLog.info("last query ---------14----------")
sql = "select tbname,last(*) cc from %s.meters where ts is not null partition by tbname interval(1a) limit %d" %(dbname,num)
self.sql_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_tables_times_n_slimit_return_per_table_num_times_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------15----------")
sql = "select tbname,last(ts) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc asc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc asc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------16----------")
sql = "select tbname,last(ts) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc desc limit %d" %(dbname,num)
self.sql_limit_retun_n_slimit_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc desc limit %d" %(dbname,dbnamejoin,num)
self.sql_limit_retun_n_slimit_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_slimit_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------17----------")
sql = "select tbname,last(*) cc from %s.meters where ts is not null partition by tbname interval(1a) slimit %d" %(dbname,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) slimit %d" %(dbname,dbnamejoin,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_n(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------18----------")
sql = "select tbname,last(ts) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc asc slimit %d" %(dbname,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc asc slimit %d" %(dbname,dbnamejoin,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------19----------")
sql = "select tbname,last(ts) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc desc slimit %d" %(dbname,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc desc slimit %d" %(dbname,dbnamejoin,num)
self.sql_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_join,num,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union,num,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_not_test_slimitkeep_return_per_table_num_times_tables(sql_union_all,num,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------20----------")
sql = "select tbname,last(*) cc from %s.meters where ts is not null partition by tbname interval(1a) slimit %d limit %d" %(dbname,num,num2)
self.sql_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,last(a.*) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) slimit %d limit %d" %(dbname,dbnamejoin,num,num2)
self.sql_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_retun_n_times_n2_slimitkeep_return_n_times_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------21----------")
sql = "select tbname,last(ts) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc asc slimit %d limit %d" %(dbname,num,num2)
self.sql_limit_times_slimitkeep_return_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_times_slimitkeep_return_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc asc slimit %d limit %d" %(dbname,dbnamejoin,num,num2)
self.sql_limit_times_slimitkeep_return_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_times_slimitkeep_return_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
tdLog.info("last query ---------22----------")
sql = "select tbname,last(ts) cc from %s.meters where ts is not null partition by tbname interval(1a) order by cc desc slimit %d limit %d" %(dbname,num,num2)
self.sql_limit_times_slimitkeep_return_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql = "select count(*) from (%s)" %sql
self.sql_data_limit_times_slimitkeep_return_n2(sql,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql,sql)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql,sql_union)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select a.tbname,last(a.ts) cc from %s.meters a,%s.meters b where a.ts is not null and a.ts = b.ts partition by a.tbname interval(1a) order by cc desc slimit %d limit %d" %(dbname,dbnamejoin,num,num2)
self.sql_limit_times_slimitkeep_return_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_join = "select count(*) from (%s)" %sql_join
self.sql_data_limit_times_slimitkeep_return_n2(sql_join,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union = "(%s) union (%s)" %(sql_join,sql_join)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union,num,num2,tables,per_table_num,base_fun,replace_fun)
sql_union_all = "(%s) union all (%s)" %(sql_join,sql_union)
self.sql_data_limit_times_slimitkeep_return_n2(sql_union_all,num,num2,tables,per_table_num,base_fun,replace_fun)
def sql_base_check(self,sql1,sql2):
tdSql.query(sql1)
sql1_result = tdSql.getData(0,0)
tdLog.info("sql:%s , result: %s" %(sql1,sql1_result))
tdSql.query(sql2)
sql2_result = tdSql.getData(0,0)
tdLog.info("sql:%s , result: %s" %(sql2,sql2_result))
if sql1_result==sql2_result:
tdLog.info(f"checkEqual success, sql1_result={sql1_result},sql2_result={sql2_result}")
else :
tdLog.exit(f"checkEqual error, sql1_result=={sql1_result},sql2_result={sql2_result}")
def run_limit_slimit_sql(self,dbname,tables,per_table_num,dbnamejoin):
num,num2 = random.randint(10,100),random.randint(10,100)
self.sql_base(dbname,num,num2,tables,per_table_num,dbnamejoin)
tdSql.execute(" flush database %s;" %dbname)
self.sql_base(dbname,num,num2,tables,per_table_num,dbnamejoin)
def check_sub(self,dbname):
sql = "select count(*) from (select distinct(tbname) from %s.meters)" %dbname
self.sql_query_time_cost(sql)
num = tdSql.getData(0,0)
for i in range(0,num):
sql1 = "select count(*) from %s.d%d" %(dbname,i)
self.sql_query_time_cost(sql1)
sql1_result = tdSql.getData(0,0)
tdLog.info("sql:%s , result: %s" %(sql1,sql1_result))
def sql_base(self,dbname,num,num2,tables,per_table_num,dbnamejoin):
sql = "select count(*) from %s.meters" %dbname
self.sql_query_time_cost(sql)
tdSql.checkData(0,0,tables*per_table_num)
sql = "select count(*) from %s.meters" %dbnamejoin
self.sql_query_time_cost(sql)
self.fun_base(dbname,num,num2,tables,per_table_num,dbnamejoin,'*','*')
# self.fun_count(dbname,num,num2,tables,per_table_num,dbnamejoin,'count','count')
# self.fun_last(dbname,num,num2,tables,per_table_num,dbnamejoin,'last','last')
# #self.fun_last(dbname,num,num2,tables,per_table_num,dbnamejoin,'last','last_row')
# self.fun_last(dbname,num,num2,tables,per_table_num,dbnamejoin,'last','first')
def test(self,dbname,tables,per_table_num,vgroups,replica,dbnamejoin):
self.run_benchmark(dbname,tables,per_table_num,vgroups,replica)
self.run_benchmark(dbnamejoin,tables,per_table_num,vgroups,replica)
self.run_limit_slimit_sql(dbname,tables,per_table_num,dbnamejoin)
def run(self):
startTime = time.time()
dbname = 'test'
dbnamejoin = 'testjoin'
vgroups = random.randint(1,8)
tables = random.randint(100,300)
per_table_num = random.randint(100,500)
replica = 1
#self.test('test',tables,per_table_num,vgroup,1)
#self.test('test',10000,150,vgroup,1)
self.test('test',100,150,vgroups,1,'testjoin') #方便调试调试时不执行下面3个
# self.run_benchmark(dbname,tables,per_table_num,vgroups,replica)
# self.run_benchmark(dbnamejoin,tables*vgroups,per_table_num*vgroups,vgroups*2,replica) #方便测试不同数据量
# self.run_limit_slimit_sql(dbname,tables,per_table_num,dbnamejoin)
endTime = time.time()
print("total time %ds" % (endTime - startTime))
def stop(self):
tdSql.close()
tdLog.success("%s successfully executed" % __file__)
tdCases.addWindows(__file__, TDTestCase())
tdCases.addLinux(__file__, TDTestCase())