fix: windows test (#20256)
* fix: windows sim test * fix: windows sim test * fix: random on windows * fix: taosd online check * fix: windows path in python test * fix: windows python test * fix: windows python test * fix: windows python test * fix: windows python test * fix: windows python test * fix: windows python test * fix: windows python test * fix: windows python test * fix: windows python test * fix: make_install.bat * fix: python test * fix: jdbc test * fix: develop test * fix: develop test * fix:add log * test:add win case file * test:add win case file * test:add win case file * fix: python test get taosBenchmark path * test:add win case file * test:comment some failed cases in win * test:add win case file * test:add win case file * test:comment some win case file * test:add some win case file --------- Co-authored-by: wangmm0220 <wangmm0220@gmail.com> Co-authored-by: chenhaoran <haoran920c@163.com>
This commit is contained in:
parent
d270f1bccc
commit
449f7115e4
|
@ -124,9 +124,18 @@ call :stop_delete
|
|||
call :check_svc taosd
|
||||
call :check_svc taosadapter
|
||||
|
||||
copy /y C:\\TDengine\\driver\\taos.dll C:\\Windows\\System32 > nul
|
||||
if exist C:\\TDengine\\driver\\taosws.dll (
|
||||
copy /y C:\\TDengine\\driver\\taosws.dll C:\\Windows\\System32 > nul
|
||||
if exist c:\\windows\\sysnative (
|
||||
echo x86
|
||||
copy /y C:\\TDengine\\driver\\taos.dll %windir%\\sysnative > nul
|
||||
if exist C:\\TDengine\\driver\\taosws.dll (
|
||||
copy /y C:\\TDengine\\driver\\taosws.dll %windir%\\sysnative > nul
|
||||
)
|
||||
) else (
|
||||
echo x64
|
||||
copy /y C:\\TDengine\\driver\\taos.dll C:\\Windows\\System32 > nul
|
||||
if exist C:\\TDengine\\driver\\taosws.dll (
|
||||
copy /y C:\\TDengine\\driver\\taosws.dll C:\\Windows\\System32 > nul
|
||||
)
|
||||
)
|
||||
|
||||
rem // create services
|
||||
|
|
|
@ -25,7 +25,7 @@ int32_t qsortHelper(const void* p1, const void* p2, const void* param) {
|
|||
|
||||
// todo refactor: 1) move away; 2) use merge sort instead; 3) qsort is not a stable sort actually.
|
||||
void taosSort(void* base, int64_t sz, int64_t width, __compar_fn_t compar) {
|
||||
#ifdef _ALPINE
|
||||
#if defined(WINDOWS) || defined(_ALPINE)
|
||||
void* param = compar;
|
||||
taosqsort(base, sz, width, param, qsortHelper);
|
||||
#else
|
||||
|
|
|
@ -31,6 +31,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor())
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -33,6 +33,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -30,6 +30,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -29,25 +29,23 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if "community" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("community")]
|
||||
elif "src" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("src")]
|
||||
elif "/tools/" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("/tools/")]
|
||||
if ("community" in selfPath):
|
||||
projPath = selfPath[:selfPath.find("community")]
|
||||
else:
|
||||
projPath = selfPath[: selfPath.find("tests")]
|
||||
projPath = selfPath[:selfPath.find("tests")]
|
||||
|
||||
paths = []
|
||||
for root, dirs, files in os.walk(projPath):
|
||||
if (tool) in files:
|
||||
if ((tool) in files):
|
||||
rootRealPath = os.path.dirname(os.path.realpath(root))
|
||||
if "packaging" not in rootRealPath:
|
||||
if ("packaging" not in rootRealPath):
|
||||
paths.append(os.path.join(root, tool))
|
||||
break
|
||||
if len(paths) == 0:
|
||||
if (len(paths) == 0):
|
||||
tdLog.exit("taosBenchmark not found!")
|
||||
return
|
||||
else:
|
||||
|
|
|
@ -33,6 +33,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if "community" in selfPath:
|
||||
|
|
|
@ -30,6 +30,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -30,6 +30,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -30,6 +30,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -30,6 +30,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -35,6 +35,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -30,6 +30,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -30,6 +30,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -29,28 +29,23 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if "community" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("community")]
|
||||
elif "src" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("src")]
|
||||
elif "/tools/" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("/tools/")]
|
||||
elif "/tests/" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("/tests/")]
|
||||
if ("community" in selfPath):
|
||||
projPath = selfPath[:selfPath.find("community")]
|
||||
else:
|
||||
tdLog.info("cannot found %s in path: %s, use system's" % (tool, selfPath))
|
||||
projPath = "/usr/local/taos/bin/"
|
||||
projPath = selfPath[:selfPath.find("tests")]
|
||||
|
||||
paths = []
|
||||
for root, dummy, files in os.walk(projPath):
|
||||
if (tool) in files:
|
||||
for root, dirs, files in os.walk(projPath):
|
||||
if ((tool) in files):
|
||||
rootRealPath = os.path.dirname(os.path.realpath(root))
|
||||
if "packaging" not in rootRealPath:
|
||||
if ("packaging" not in rootRealPath):
|
||||
paths.append(os.path.join(root, tool))
|
||||
break
|
||||
if len(paths) == 0:
|
||||
if (len(paths) == 0):
|
||||
tdLog.exit("taosBenchmark not found!")
|
||||
return
|
||||
else:
|
||||
|
|
|
@ -30,6 +30,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -31,6 +31,8 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if ("community" in selfPath):
|
||||
|
|
|
@ -32,30 +32,28 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if "community" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("community")]
|
||||
elif "src" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("src")]
|
||||
elif "/tools/" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("/tools/")]
|
||||
elif "/tests/" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("/tests/")]
|
||||
if ("community" in selfPath):
|
||||
projPath = selfPath[:selfPath.find("community")]
|
||||
else:
|
||||
tdLog.info("cannot found %s in path: %s, use system's" % (tool, selfPath))
|
||||
projPath = "/usr/local/taos/bin/"
|
||||
projPath = selfPath[:selfPath.find("tests")]
|
||||
|
||||
paths = []
|
||||
for root, dirs, files in os.walk(projPath):
|
||||
if (tool) in files:
|
||||
if ((tool) in files):
|
||||
rootRealPath = os.path.dirname(os.path.realpath(root))
|
||||
if "packaging" not in rootRealPath:
|
||||
if ("packaging" not in rootRealPath):
|
||||
paths.append(os.path.join(root, tool))
|
||||
break
|
||||
if len(paths) == 0:
|
||||
return ""
|
||||
return paths[0]
|
||||
if (len(paths) == 0):
|
||||
tdLog.exit("taosBenchmark not found!")
|
||||
return
|
||||
else:
|
||||
tdLog.info("taosBenchmark found in %s" % paths[0])
|
||||
return paths[0]
|
||||
|
||||
# 获取taosc接口查询的结果文件中的内容,返回每行数据,并断言数据的第一列内容。
|
||||
def assertfileDataTaosc(self, filename, expectResult):
|
||||
|
|
|
@ -29,27 +29,23 @@ class TDTestCase:
|
|||
tdSql.init(conn.cursor(), logSql)
|
||||
|
||||
def getPath(self, tool="taosBenchmark"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if "community" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("community")]
|
||||
elif "src" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("src")]
|
||||
elif "/tools/" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("/tools/")]
|
||||
elif "/tests/" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("/tests/")]
|
||||
if ("community" in selfPath):
|
||||
projPath = selfPath[:selfPath.find("community")]
|
||||
else:
|
||||
tdLog.exit("cannot found %s in path: %s, use system's" % (tool, selfPath))
|
||||
projPath = selfPath[:selfPath.find("tests")]
|
||||
|
||||
paths = []
|
||||
for root, dirs, files in os.walk(projPath):
|
||||
if (tool) in files:
|
||||
if ((tool) in files):
|
||||
rootRealPath = os.path.dirname(os.path.realpath(root))
|
||||
if "packaging" not in rootRealPath:
|
||||
if ("packaging" not in rootRealPath):
|
||||
paths.append(os.path.join(root, tool))
|
||||
break
|
||||
if len(paths) == 0:
|
||||
if (len(paths) == 0):
|
||||
tdLog.exit("taosBenchmark not found!")
|
||||
return
|
||||
else:
|
||||
|
|
|
@ -30,30 +30,28 @@ class TDTestCase:
|
|||
self.tmpdir = "tmp"
|
||||
|
||||
def getPath(self, tool="taosdump"):
|
||||
if (platform.system().lower() == 'windows'):
|
||||
tool = tool + ".exe"
|
||||
selfPath = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
if "community" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("community")]
|
||||
elif "src" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("src")]
|
||||
elif "/tools/" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("/tools/")]
|
||||
elif "/tests/" in selfPath:
|
||||
projPath = selfPath[: selfPath.find("/tests/")]
|
||||
if ("community" in selfPath):
|
||||
projPath = selfPath[:selfPath.find("community")]
|
||||
else:
|
||||
tdLog.info("cannot found %s in path: %s, use system's" % (tool, selfPath))
|
||||
projPath = "/usr/local/taos/bin"
|
||||
projPath = selfPath[:selfPath.find("tests")]
|
||||
|
||||
paths = []
|
||||
for root, dummy, files in os.walk(projPath):
|
||||
if (tool) in files:
|
||||
for root, dirs, files in os.walk(projPath):
|
||||
if ((tool) in files):
|
||||
rootRealPath = os.path.dirname(os.path.realpath(root))
|
||||
if "packaging" not in rootRealPath:
|
||||
if ("packaging" not in rootRealPath):
|
||||
paths.append(os.path.join(root, tool))
|
||||
break
|
||||
if len(paths) == 0:
|
||||
return ""
|
||||
return paths[0]
|
||||
if (len(paths) == 0):
|
||||
tdLog.exit("taosBenchmark not found!")
|
||||
return
|
||||
else:
|
||||
tdLog.info("taosBenchmark found in %s" % paths[0])
|
||||
return paths[0]
|
||||
|
||||
def run(self):
|
||||
tdSql.prepare()
|
||||
|
|
|
@ -316,9 +316,9 @@ if __name__ == "__main__":
|
|||
print(r)
|
||||
else:
|
||||
pass
|
||||
if restful:
|
||||
tAdapter.init(deployPath, masterIp)
|
||||
tAdapter.stop(force_kill=True)
|
||||
|
||||
tAdapter.init(deployPath, masterIp)
|
||||
tAdapter.stop(force_kill=True)
|
||||
|
||||
if dnodeNums == 1:
|
||||
tdDnodes.deploy(1, updateCfgDict)
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
python3 ./test.py -f 2-query/table_count_scan.py
|
||||
python3 ./test.py -f 2-query/show_create_db.py
|
||||
python3 ./test.py -f 5-taos-tools/taosbenchmark/auto_create_table_json.py
|
||||
python3 ./test.py -f 5-taos-tools/taosbenchmark/custom_col_tag.py
|
||||
python3 ./test.py -f 5-taos-tools/taosbenchmark/default_json.py
|
||||
python3 ./test.py -f 5-taos-tools/taosbenchmark/demo.py
|
||||
python3 ./test.py -f 5-taos-tools/taosbenchmark/insert_alltypes_json.py
|
||||
python3 ./test.py -f 5-taos-tools/taosbenchmark/invalid_commandline.py
|
||||
python3 ./test.py -f 5-taos-tools/taosbenchmark/json_tag.py
|
||||
python3 ./test.py -f 5-taos-tools/taosbenchmark/query_json.py
|
||||
python3 ./test.py -f 5-taos-tools/taosbenchmark/sample_csv_json.py
|
||||
python3 ./test.py -f 5-taos-tools/taosbenchmark/taosdemoTestQueryWithJson.py -R
|
||||
python3 ./test.py -f 5-taos-tools/taosbenchmark/telnet_tcp.py -R
|
|
@ -6,15 +6,10 @@ cd ../../docs/examples/java
|
|||
|
||||
mvn clean test > jdbc-out.log 2>&1
|
||||
tail -n 20 jdbc-out.log
|
||||
|
||||
cases=`grep 'Tests run' jdbc-out.log | awk 'END{print $3}'`
|
||||
totalJDBCCases=`echo ${cases/%,}`
|
||||
failed=`grep 'Tests run' jdbc-out.log | awk 'END{print $5}'`
|
||||
JDBCFailed=`echo ${failed/%,}`
|
||||
error=`grep 'Tests run' jdbc-out.log | awk 'END{print $7}'`
|
||||
JDBCError=`echo ${error/%,}`
|
||||
|
||||
totalJDBCFailed=`expr $JDBCFailed + $JDBCError`
|
||||
totalJDBCCases=`grep 'Tests run' jdbc-out.log | awk -F"[:,]" 'END{ print $2 }'`
|
||||
failed=`grep 'Tests run' jdbc-out.log | awk -F"[:,]" 'END{ print $4 }'`
|
||||
error=`grep 'Tests run' jdbc-out.log | awk -F"[:,]" 'END{ print $6 }'`
|
||||
totalJDBCFailed=`expr $failed + $error`
|
||||
totalJDBCSuccess=`expr $totalJDBCCases - $totalJDBCFailed`
|
||||
|
||||
if [ "$totalJDBCSuccess" -gt "0" ]; then
|
||||
|
|
|
@ -0,0 +1,58 @@
|
|||
case_file="cases_temp_file"
|
||||
|
||||
parm_path=$(dirname $0)
|
||||
parm_path=$(pwd ${parm_path})
|
||||
echo "execute path:${parm_path}"
|
||||
cd ${parm_path}
|
||||
cp cases.task ${case_file}
|
||||
sed -i '/^$/d' ${case_file}
|
||||
sed -i '$a\%%FINISHED%%' ${case_file}
|
||||
|
||||
utest="unit-test"
|
||||
tsimtest="script"
|
||||
systest="system-test"
|
||||
devtest="develop-test"
|
||||
doctest="docs-examples-test"
|
||||
rm -rf win-${utest}.log win-${tsimtest}.log win-${systest}.log win-${devtest}.log win-${doctest}.log
|
||||
rm -rf ${parm_path}/../${utest}/win-test-file ${parm_path}/../${tsimtest}/win-test-file ${parm_path}/../${systest}/win-test-file ${parm_path}/../${devtest}/win-test-file
|
||||
while read -r line
|
||||
do
|
||||
echo "$line"|grep -q "^#"
|
||||
if [ $? -eq 0 ]; then
|
||||
continue
|
||||
fi
|
||||
exec_dir=$(echo "$line"|cut -d ',' -f4)
|
||||
case_cmd=$(echo "$line"|cut -d ',' -f5)
|
||||
if [[ "${exec_dir}" == "${utest}" ]]; then
|
||||
echo ${case_cmd} >> win-${utest}.log
|
||||
continue
|
||||
fi
|
||||
if [[ "${exec_dir}" == "${tsimtest}" ]]; then
|
||||
echo ${case_cmd} >> win-${tsimtest}.log
|
||||
continue
|
||||
fi
|
||||
if [[ "${exec_dir}" == "${systest}" ]]; then
|
||||
if [[ "${case_cmd}" =~ "pytest.sh" ]]; then
|
||||
case_cmd=$(echo "$case_cmd"|cut -d ' ' -f 2-)
|
||||
echo ${case_cmd} >> win-${systest}.log
|
||||
else
|
||||
echo ${case_cmd} >> win-${systest}.log
|
||||
fi
|
||||
continue
|
||||
fi
|
||||
if [[ "${exec_dir}" == "${devtest}" ]]; then
|
||||
echo ${case_cmd} >> win-${devtest}.log
|
||||
continue
|
||||
fi
|
||||
if [[ "${exec_dir}" == "${doctest}" ]]; then
|
||||
echo ${case_cmd} >> win-${doctest}.log
|
||||
continue
|
||||
fi
|
||||
done < ${case_file}
|
||||
mv win-${utest}.log ${parm_path}/../${utest}/win-test-file
|
||||
mv win-${tsimtest}.log ${parm_path}/../${tsimtest}/win-test-file
|
||||
mv win-${systest}.log ${parm_path}/../${systest}/win-test-file
|
||||
mv win-${devtest}.log ${parm_path}/../${devtest}/win-test-file
|
||||
|
||||
|
||||
rm -rf ${case_file}
|
|
@ -94,14 +94,14 @@ class TDCases:
|
|||
|
||||
tdLog.notice("total %d Windows test case(s) executed" % (runNum))
|
||||
|
||||
def runOneWindows(self, conn, fileName):
|
||||
def runOneWindows(self, conn, fileName, replicaVar=1):
|
||||
testModule = self.__dynamicLoadModule(fileName)
|
||||
|
||||
runNum = 0
|
||||
for tmp in self.windowsCases:
|
||||
if tmp.name.find(fileName) != -1:
|
||||
case = testModule.TDTestCase()
|
||||
case.init(conn, self._logSql)
|
||||
case.init(conn, self._logSql,replicaVar)
|
||||
try:
|
||||
case.run()
|
||||
except Exception as e:
|
||||
|
|
|
@ -46,11 +46,11 @@ class TDSimClient:
|
|||
self.path = path
|
||||
|
||||
def getLogDir(self):
|
||||
self.logDir = "%s/sim/psim/log" % (self.path)
|
||||
self.logDir = os.path.join(self.path,"sim","psim","log")
|
||||
return self.logDir
|
||||
|
||||
def getCfgDir(self):
|
||||
self.cfgDir = "%s/sim/psim/cfg" % (self.path)
|
||||
self.cfgDir = os.path.join(self.path,"sim","psim","cfg")
|
||||
return self.cfgDir
|
||||
|
||||
def setTestCluster(self, value):
|
||||
|
@ -65,9 +65,9 @@ class TDSimClient:
|
|||
tdLog.exit(cmd)
|
||||
|
||||
def deploy(self):
|
||||
self.logDir = "%s/sim/psim/log" % (self.path)
|
||||
self.cfgDir = "%s/sim/psim/cfg" % (self.path)
|
||||
self.cfgPath = "%s/sim/psim/cfg/taos.cfg" % (self.path)
|
||||
self.logDir = os.path.join(self.path,"sim","psim","log")
|
||||
self.cfgDir = os.path.join(self.path,"sim","psim","cfg")
|
||||
self.cfgPath = os.path.join(self.path,"sim","psim","cfg","taos.cfg")
|
||||
|
||||
cmd = "rm -rf " + self.logDir
|
||||
if os.system(cmd) != 0:
|
||||
|
@ -131,11 +131,10 @@ class TDDnode:
|
|||
return totalSize
|
||||
|
||||
def deploy(self):
|
||||
self.logDir = "%s/sim/dnode%d/log" % (self.path, self.index)
|
||||
self.dataDir = "%s/sim/dnode%d/data" % (self.path, self.index)
|
||||
self.cfgDir = "%s/sim/dnode%d/cfg" % (self.path, self.index)
|
||||
self.cfgPath = "%s/sim/dnode%d/cfg/taos.cfg" % (
|
||||
self.path, self.index)
|
||||
self.logDir = os.path.join(self.path,"sim","dnode%d" % self.index, "log")
|
||||
self.dataDir = os.path.join(self.path,"sim","dnode%d" % self.index, "data")
|
||||
self.cfgDir = os.path.join(self.path,"sim","dnode%d" % self.index, "cfg")
|
||||
self.cfgPath = os.path.join(self.path,"sim","dnode%d" % self.index, "cfg","taos.cfg")
|
||||
|
||||
cmd = "rm -rf " + self.dataDir
|
||||
if os.system(cmd) != 0:
|
||||
|
@ -325,11 +324,11 @@ class TDDnode:
|
|||
tdLog.exit(cmd)
|
||||
|
||||
def getDnodeRootDir(self, index):
|
||||
dnodeRootDir = "%s/sim/psim/dnode%d" % (self.path, index)
|
||||
dnodeRootDir = os.path.join(self.path,"sim","psim","dnode%d" % index)
|
||||
return dnodeRootDir
|
||||
|
||||
def getDnodesRootDir(self):
|
||||
dnodesRootDir = "%s/sim/psim" % (self.path)
|
||||
dnodesRootDir = os.path.join(self.path,"sim","psim")
|
||||
return dnodesRootDir
|
||||
|
||||
|
||||
|
|
|
@ -44,11 +44,11 @@ class TDSimClient:
|
|||
self.path = path
|
||||
|
||||
def getLogDir(self):
|
||||
self.logDir = "%s/sim/psim/log" % (self.path)
|
||||
self.logDir = os.path.join(self.path,"sim","psim","log")
|
||||
return self.logDir
|
||||
|
||||
def getCfgDir(self):
|
||||
self.cfgDir = "%s/sim/psim/cfg" % (self.path)
|
||||
self.cfgDir = os.path.join(self.path,"sim","psim","cfg")
|
||||
return self.cfgDir
|
||||
|
||||
def setTestCluster(self, value):
|
||||
|
@ -63,9 +63,9 @@ class TDSimClient:
|
|||
tdLog.exit(cmd)
|
||||
|
||||
def deploy(self):
|
||||
self.logDir = "%s/sim/psim/log" % (self.path)
|
||||
self.cfgDir = "%s/sim/psim/cfg" % (self.path)
|
||||
self.cfgPath = "%s/sim/psim/cfg/taos.cfg" % (self.path)
|
||||
self.logDir = os.path.join(self.path,"sim","psim","log")
|
||||
self.cfgDir = os.path.join(self.path,"sim","psim","cfg")
|
||||
self.cfgPath = os.path.join(self.path,"sim","psim","cfg","taos.cfg")
|
||||
|
||||
cmd = "rm -rf " + self.logDir
|
||||
if os.system(cmd) != 0:
|
||||
|
@ -129,11 +129,10 @@ class TDDnode:
|
|||
return totalSize
|
||||
|
||||
def deploy(self):
|
||||
self.logDir = "%s/sim/dnode%d/log" % (self.path, self.index)
|
||||
self.dataDir = "%s/sim/dnode%d/data" % (self.path, self.index)
|
||||
self.cfgDir = "%s/sim/dnode%d/cfg" % (self.path, self.index)
|
||||
self.cfgPath = "%s/sim/dnode%d/cfg/taos.cfg" % (
|
||||
self.path, self.index)
|
||||
self.logDir = os.path.join(self.path,"sim","dnode%d" % self.index, "log")
|
||||
self.dataDir = os.path.join(self.path,"sim","dnode%d" % self.index, "data")
|
||||
self.cfgDir = os.path.join(self.path,"sim","dnode%d" % self.index, "cfg")
|
||||
self.cfgPath = os.path.join(self.path,"sim","dnode%d" % self.index, "cfg","taos.cfg")
|
||||
|
||||
cmd = "rm -rf " + self.dataDir
|
||||
if os.system(cmd) != 0:
|
||||
|
@ -323,11 +322,11 @@ class TDDnode:
|
|||
tdLog.exit(cmd)
|
||||
|
||||
def getDnodeRootDir(self, index):
|
||||
dnodeRootDir = "%s/sim/psim/dnode%d" % (self.path, index)
|
||||
dnodeRootDir = os.path.join(self.path,"sim","psim","dnode%d" % index)
|
||||
return dnodeRootDir
|
||||
|
||||
def getDnodesRootDir(self):
|
||||
dnodesRootDir = "%s/sim/psim" % (self.path)
|
||||
dnodesRootDir = os.path.join(self.path,"sim","psim")
|
||||
return dnodesRootDir
|
||||
|
||||
|
||||
|
|
|
@ -41,11 +41,11 @@ class TDSimClient:
|
|||
self.path = path
|
||||
|
||||
def getLogDir(self):
|
||||
self.logDir = "%s/sim/psim/log" % (self.path)
|
||||
self.logDir = os.path.join(self.path,"sim","psim","log")
|
||||
return self.logDir
|
||||
|
||||
def getCfgDir(self):
|
||||
self.cfgDir = "%s/sim/psim/cfg" % (self.path)
|
||||
self.cfgDir = os.path.join(self.path,"sim","psim","cfg")
|
||||
return self.cfgDir
|
||||
|
||||
def setTestCluster(self, value):
|
||||
|
@ -60,9 +60,9 @@ class TDSimClient:
|
|||
tdLog.exit(cmd)
|
||||
|
||||
def deploy(self):
|
||||
self.logDir = "%s/sim/psim/log" % (self.path)
|
||||
self.cfgDir = "%s/sim/psim/cfg" % (self.path)
|
||||
self.cfgPath = "%s/sim/psim/cfg/taos.cfg" % (self.path)
|
||||
self.logDir = os.path.join(self.path,"sim","psim","log")
|
||||
self.cfgDir = os.path.join(self.path,"sim","psim","cfg")
|
||||
self.cfgPath = os.path.join(self.path,"sim","psim","cfg","taos.cfg")
|
||||
|
||||
cmd = "rm -rf " + self.logDir
|
||||
if os.system(cmd) != 0:
|
||||
|
@ -126,11 +126,10 @@ class TDDnode:
|
|||
return totalSize
|
||||
|
||||
def deploy(self):
|
||||
self.logDir = "%s/sim/dnode%d/log" % (self.path, self.index)
|
||||
self.dataDir = "%s/sim/dnode%d/data" % (self.path, self.index)
|
||||
self.cfgDir = "%s/sim/dnode%d/cfg" % (self.path, self.index)
|
||||
self.cfgPath = "%s/sim/dnode%d/cfg/taos.cfg" % (
|
||||
self.path, self.index)
|
||||
self.logDir = os.path.join(self.path,"sim","dnode%d" % self.index, "log")
|
||||
self.dataDir = os.path.join(self.path,"sim","dnode%d" % self.index, "data")
|
||||
self.cfgDir = os.path.join(self.path,"sim","dnode%d" % self.index, "cfg")
|
||||
self.cfgPath = os.path.join(self.path,"sim","dnode%d" % self.index, "cfg","taos.cfg")
|
||||
|
||||
cmd = "rm -rf " + self.dataDir
|
||||
if os.system(cmd) != 0:
|
||||
|
@ -320,11 +319,11 @@ class TDDnode:
|
|||
tdLog.exit(cmd)
|
||||
|
||||
def getDnodeRootDir(self, index):
|
||||
dnodeRootDir = "%s/sim/psim/dnode%d" % (self.path, index)
|
||||
dnodeRootDir = os.path.join(self.path,"sim","psim","dnode%d" % index)
|
||||
return dnodeRootDir
|
||||
|
||||
def getDnodesRootDir(self):
|
||||
dnodesRootDir = "%s/sim/psim" % (self.path)
|
||||
dnodesRootDir = os.path.join(self.path,"sim","psim")
|
||||
return dnodesRootDir
|
||||
|
||||
|
||||
|
|
|
@ -50,11 +50,11 @@ class TDSimClient:
|
|||
}
|
||||
|
||||
def getLogDir(self):
|
||||
self.logDir = "%s/sim/psim/log" % (self.path)
|
||||
self.logDir = os.path.join(self.path,"sim","psim","log")
|
||||
return self.logDir
|
||||
|
||||
def getCfgDir(self):
|
||||
self.cfgDir = "%s/sim/psim/cfg" % (self.path)
|
||||
self.cfgDir = os.path.join(self.path,"sim","psim","cfg")
|
||||
return self.cfgDir
|
||||
|
||||
def setTestCluster(self, value):
|
||||
|
@ -69,9 +69,9 @@ class TDSimClient:
|
|||
tdLog.exit(cmd)
|
||||
|
||||
def deploy(self, *updatecfgDict):
|
||||
self.logDir = "%s/sim/psim/log" % (self.path)
|
||||
self.cfgDir = "%s/sim/psim/cfg" % (self.path)
|
||||
self.cfgPath = "%s/sim/psim/cfg/taos.cfg" % (self.path)
|
||||
self.logDir = os.path.join(self.path,"sim","psim","log")
|
||||
self.cfgDir = os.path.join(self.path,"sim","psim","cfg")
|
||||
self.cfgPath = os.path.join(self.path,"sim","psim","cfg","taos.cfg")
|
||||
|
||||
cmd = "rm -rf " + self.logDir
|
||||
if os.system(cmd) != 0:
|
||||
|
@ -207,11 +207,10 @@ class TDDnode:
|
|||
self.remote_conn.run("python3 ./test.py %s -d %s -e %s"%(valgrindStr,remoteCfgDictStr,execCmdStr))
|
||||
|
||||
def deploy(self, *updatecfgDict):
|
||||
self.logDir = "%s/sim/dnode%d/log" % (self.path, self.index)
|
||||
self.dataDir = "%s/sim/dnode%d/data" % (self.path, self.index)
|
||||
self.cfgDir = "%s/sim/dnode%d/cfg" % (self.path, self.index)
|
||||
self.cfgPath = "%s/sim/dnode%d/cfg/taos.cfg" % (
|
||||
self.path, self.index)
|
||||
self.logDir = os.path.join(self.path,"sim","dnode%d" % self.index, "log")
|
||||
self.dataDir = os.path.join(self.path,"sim","dnode%d" % self.index, "data")
|
||||
self.cfgDir = os.path.join(self.path,"sim","dnode%d" % self.index, "cfg")
|
||||
self.cfgPath = os.path.join(self.path,"sim","dnode%d" % self.index, "cfg","taos.cfg")
|
||||
|
||||
cmd = "rm -rf " + self.dataDir
|
||||
if os.system(cmd) != 0:
|
||||
|
@ -472,20 +471,25 @@ class TDDnode:
|
|||
tdLog.exit("dnode:%d is not deployed" % (self.index))
|
||||
|
||||
if self.valgrind == 0:
|
||||
if self.asan:
|
||||
asanDir = "%s/sim/asan/dnode%d.asan" % (
|
||||
self.path, self.index)
|
||||
cmd = "nohup %s -c %s > /dev/null 2> %s & " % (
|
||||
binPath, self.cfgDir, asanDir)
|
||||
if platform.system().lower() == 'windows':
|
||||
cmd = "mintty -h never %s -c %s" % (binPath, self.cfgDir)
|
||||
else:
|
||||
cmd = "nohup %s -c %s > /dev/null 2>&1 & " % (
|
||||
binPath, self.cfgDir)
|
||||
if self.asan:
|
||||
asanDir = "%s/sim/asan/dnode%d.asan" % (
|
||||
self.path, self.index)
|
||||
cmd = "nohup %s -c %s > /dev/null 2> %s & " % (
|
||||
binPath, self.cfgDir, asanDir)
|
||||
else:
|
||||
cmd = "nohup %s -c %s > /dev/null 2>&1 & " % (
|
||||
binPath, self.cfgDir)
|
||||
else:
|
||||
valgrindCmdline = "valgrind --log-file=\"%s/../log/valgrind.log\" --tool=memcheck --leak-check=full --show-reachable=no --track-origins=yes --show-leak-kinds=all -v --workaround-gcc296-bugs=yes"%self.cfgDir
|
||||
|
||||
cmd = "nohup %s %s -c %s 2>&1 & " % (
|
||||
valgrindCmdline, binPath, self.cfgDir)
|
||||
|
||||
if platform.system().lower() == 'windows':
|
||||
cmd = "mintty -h never %s %s -c %s" % (
|
||||
valgrindCmdline, binPath, self.cfgDir)
|
||||
else:
|
||||
cmd = "nohup %s %s -c %s 2>&1 & " % (
|
||||
valgrindCmdline, binPath, self.cfgDir)
|
||||
print(cmd)
|
||||
|
||||
if (self.remoteIP == ""):
|
||||
|
@ -568,6 +572,8 @@ class TDDnode:
|
|||
while(processID):
|
||||
if not platform.system().lower() == 'windows' or (onlyKillOnceWindows == 0 and platform.system().lower() == 'windows'):
|
||||
killCmd = "kill -INT %s > /dev/null 2>&1" % processID
|
||||
if platform.system().lower() == 'windows':
|
||||
killCmd = "kill -INT %s > nul 2>&1" % processID
|
||||
os.system(killCmd)
|
||||
onlyKillOnceWindows = 1
|
||||
time.sleep(1)
|
||||
|
@ -635,11 +641,11 @@ class TDDnode:
|
|||
tdLog.exit(cmd)
|
||||
|
||||
def getDnodeRootDir(self, index):
|
||||
dnodeRootDir = "%s/sim/psim/dnode%d" % (self.path, index)
|
||||
dnodeRootDir = os.path.join(self.path,"sim","psim","dnode%d" % index)
|
||||
return dnodeRootDir
|
||||
|
||||
def getDnodesRootDir(self):
|
||||
dnodesRootDir = "%s/sim/psim" % (self.path)
|
||||
dnodesRootDir = os.path.join(self.path,"sim","psim")
|
||||
return dnodesRootDir
|
||||
|
||||
|
||||
|
@ -789,15 +795,21 @@ class TDDnodes:
|
|||
processID = subprocess.check_output(psCmd, shell=True).decode("utf-8").strip()
|
||||
while(processID):
|
||||
print(processID)
|
||||
if platform.system().lower() == 'windows':
|
||||
killCmd = "kill -9 %s > nul 2>&1" % processID
|
||||
else:
|
||||
killCmd = "kill -9 %s > /dev/null 2>&1" % processID
|
||||
killCmd = "kill -9 %s > /dev/null 2>&1" % processID
|
||||
os.system(killCmd)
|
||||
time.sleep(1)
|
||||
processID = subprocess.check_output(
|
||||
psCmd, shell=True).decode("utf-8").strip()
|
||||
elif platform.system().lower() == 'windows':
|
||||
psCmd = "for /f %a in ('wmic process where \"name='taosd.exe'\" get processId ^| xargs echo ^| awk '{print $2}' ^&^& echo aa') do @(ps | grep %a | awk '{print $1}' | xargs)"
|
||||
processID = subprocess.check_output(psCmd, shell=True).decode("utf-8").strip()
|
||||
while(processID):
|
||||
print(processID)
|
||||
killCmd = "kill -9 %s > nul 2>&1" % processID
|
||||
os.system(killCmd)
|
||||
time.sleep(1)
|
||||
processID = subprocess.check_output(
|
||||
psCmd, shell=True).decode("utf-8").strip()
|
||||
|
||||
else:
|
||||
psCmd = "ps -ef | grep -w taosd | grep 'root' | grep -v grep| grep -v defunct | awk '{print $2}' | xargs"
|
||||
processID = subprocess.check_output(psCmd, shell=True).decode("utf-8").strip()
|
||||
|
@ -809,10 +821,7 @@ class TDDnodes:
|
|||
psCmd = "ps -ef|grep -w taosd| grep -v grep| grep -v defunct | awk '{print $2}' | xargs"
|
||||
processID = subprocess.check_output(psCmd, shell=True).decode("utf-8").strip()
|
||||
while(processID):
|
||||
if platform.system().lower() == 'windows':
|
||||
killCmd = "kill -9 %s > nul 2>&1" % processID
|
||||
else:
|
||||
killCmd = "kill -9 %s > /dev/null 2>&1" % processID
|
||||
killCmd = "kill -9 %s > /dev/null 2>&1" % processID
|
||||
os.system(killCmd)
|
||||
time.sleep(1)
|
||||
processID = subprocess.check_output(
|
||||
|
|
|
@ -18,6 +18,9 @@ class GetTime:
|
|||
|
||||
def get_ms_timestamp(self,ts_str):
|
||||
_ts_str = ts_str
|
||||
if "+" in _ts_str:
|
||||
timestamp = datetime.fromisoformat(_ts_str)
|
||||
return int((timestamp-datetime.fromtimestamp(0,timestamp.tzinfo)).total_seconds())*1000+int(timestamp.microsecond / 1000)
|
||||
if " " in ts_str:
|
||||
p = ts_str.split(" ")[1]
|
||||
if len(p) > 15 :
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import socket
|
||||
import requests
|
||||
from fabric2 import Connection
|
||||
from util.log import *
|
||||
from util.common import *
|
||||
|
@ -132,9 +132,9 @@ class TAdapter:
|
|||
tdLog.exit(cmd)
|
||||
|
||||
def deploy(self, *update_cfg_dict):
|
||||
self.log_dir = f"{self.path}/sim/dnode1/log"
|
||||
self.cfg_dir = f"{self.path}/sim/dnode1/cfg"
|
||||
self.cfg_path = f"{self.cfg_dir}/taosadapter.toml"
|
||||
self.log_dir = os.path.join(self.path,"sim","dnode1","log")
|
||||
self.cfg_dir = os.path.join(self.path,"sim","dnode1","cfg")
|
||||
self.cfg_path = os.path.join(self.cfg_dir,"taosadapter.toml")
|
||||
|
||||
cmd = f"touch {self.cfg_path}"
|
||||
if os.system(cmd) != 0:
|
||||
|
@ -162,7 +162,7 @@ class TAdapter:
|
|||
tdLog.info(f"taosadapter found: {bin_path}")
|
||||
|
||||
if platform.system().lower() == 'windows':
|
||||
cmd = f"mintty -h never {bin_path} -c {self.cfg_dir}"
|
||||
cmd = f"mintty -h never {bin_path} -c {self.cfg_path}"
|
||||
else:
|
||||
cmd = f"nohup {bin_path} -c {self.cfg_path} > /dev/null & "
|
||||
|
||||
|
@ -170,7 +170,7 @@ class TAdapter:
|
|||
self.remote_exec(self.taosadapter_cfg_dict, f"tAdapter.deployed=1\ntAdapter.log_dir={self.log_dir}\ntAdapter.cfg_dir={self.cfg_dir}\ntAdapter.start()")
|
||||
self.running = 1
|
||||
else:
|
||||
os.system(f"rm -rf {self.log_dir}/taosadapter*")
|
||||
os.system(f"rm -rf {self.log_dir}{os.sep}taosadapter*")
|
||||
if os.system(cmd) != 0:
|
||||
tdLog.exit(cmd)
|
||||
self.running = 1
|
||||
|
@ -179,22 +179,19 @@ class TAdapter:
|
|||
time.sleep(0.1)
|
||||
|
||||
taosadapter_port = self.taosadapter_cfg_dict["port"]
|
||||
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
s.settimeout(3)
|
||||
try:
|
||||
res = s.connect_ex((self.remoteIP, taosadapter_port))
|
||||
s.shutdown(2)
|
||||
if res == 0:
|
||||
tdLog.info(f"the taosadapter has been started, using port:{taosadapter_port}")
|
||||
else:
|
||||
tdLog.info(f"the taosadapter do not started!!!")
|
||||
except socket.error as e:
|
||||
tdLog.notice("socket connect error!")
|
||||
finally:
|
||||
if s:
|
||||
s.close()
|
||||
# tdLog.debug("the taosadapter has been started.")
|
||||
time.sleep(1)
|
||||
for i in range(5):
|
||||
ip = 'localhost'
|
||||
if self.remoteIP != "":
|
||||
ip = self.remoteIP
|
||||
url = f'http://{ip}:{taosadapter_port}/-/ping'
|
||||
try:
|
||||
r = requests.get(url)
|
||||
if r.status_code == 200:
|
||||
tdLog.info(f"the taosadapter has been started, using port:{taosadapter_port}")
|
||||
break
|
||||
except Exception:
|
||||
tdLog.info(f"the taosadapter do not started!!!")
|
||||
time.sleep(1)
|
||||
|
||||
def start_taosadapter(self):
|
||||
"""
|
||||
|
@ -228,33 +225,36 @@ class TAdapter:
|
|||
|
||||
def stop(self, force_kill=False):
|
||||
signal = "-9" if force_kill else "-15"
|
||||
|
||||
if self.remoteIP:
|
||||
self.remote_exec(self.taosadapter_cfg_dict, "tAdapter.running=1\ntAdapter.stop()")
|
||||
tdLog.info("stop taosadapter")
|
||||
return
|
||||
|
||||
toBeKilled = "taosadapter"
|
||||
|
||||
if self.running != 0:
|
||||
if platform.system().lower() == 'windows':
|
||||
psCmd = f"ps -ef|grep -w {toBeKilled}| grep -v grep | awk '{{print $2}}'"
|
||||
# psCmd = f"pgrep {toBeKilled}"
|
||||
processID = subprocess.check_output(psCmd, shell=True).decode("utf-8").strip()
|
||||
while(processID):
|
||||
killCmd = "kill %s %s > /dev/null 2>&1" % (signal, processID)
|
||||
while(processID):
|
||||
killCmd = "kill %s %s > nul 2>&1" % (signal, processID)
|
||||
os.system(killCmd)
|
||||
time.sleep(1)
|
||||
processID = subprocess.check_output(psCmd, shell=True).decode("utf-8").strip()
|
||||
if not platform.system().lower() == 'windows':
|
||||
processID = subprocess.check_output(psCmd, shell=True).decode("utf-8").strip()
|
||||
self.running = 0
|
||||
tdLog.debug(f"taosadapter is stopped by kill {signal}")
|
||||
|
||||
else:
|
||||
if self.running != 0:
|
||||
psCmd = f"ps -ef|grep -w {toBeKilled}| grep -v grep | awk '{{print $2}}'"
|
||||
processID = subprocess.check_output(psCmd, shell=True).decode("utf-8").strip()
|
||||
while(processID):
|
||||
killCmd = "kill %s %s > /dev/null 2>&1" % (signal, processID)
|
||||
os.system(killCmd)
|
||||
time.sleep(1)
|
||||
processID = subprocess.check_output(psCmd, shell=True).decode("utf-8").strip()
|
||||
port = 6041
|
||||
fuserCmd = f"fuser -k -n tcp {port} > /dev/null"
|
||||
os.system(fuserCmd)
|
||||
# for port in range(6030, 6041):
|
||||
# fuserCmd = f"fuser -k -n tcp {port} > /dev/null"
|
||||
# os.system(fuserCmd)
|
||||
|
||||
self.running = 0
|
||||
tdLog.debug(f"taosadapter is stopped by kill {signal}")
|
||||
self.running = 0
|
||||
tdLog.debug(f"taosadapter is stopped by kill {signal}")
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
@echo off
|
||||
echo 0
|
|
@ -54,7 +54,7 @@ if %NODE% == 6 set NODE=7600
|
|||
if %NODE% == 7 set NODE=7700
|
||||
if %NODE% == 8 set NODE=7800
|
||||
|
||||
rem set "fqdn="
|
||||
set "fqdn=localhost"
|
||||
for /f "skip=1" %%A in (
|
||||
'wmic computersystem get caption'
|
||||
) do if not defined fqdn set "fqdn=%%A"
|
||||
|
|
|
@ -50,7 +50,7 @@ if %EXEC_OPTON% == start (
|
|||
goto :finish
|
||||
)
|
||||
echo check taosd online
|
||||
tail -n +0 %TAOS_LOG% | grep -q "TDengine initialized successfully" || goto :check_online
|
||||
tail -n +0 %TAOS_LOG% | grep -E "TDengine initialized successfully|from offline to online" || goto :check_online
|
||||
echo finish
|
||||
goto :finish
|
||||
)
|
||||
|
|
|
@ -0,0 +1,67 @@
|
|||
@echo off
|
||||
SETLOCAL EnableDelayedExpansion
|
||||
for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do rem"') do ( set "DEL=%%a")
|
||||
set /a a=0
|
||||
echo Windows Taosd Full Test
|
||||
set /a exitNum=0
|
||||
rm -rf failed.txt
|
||||
set caseFile="win-test-file"
|
||||
if not "%2" == "" (
|
||||
set caseFile="%2"
|
||||
)
|
||||
for /F "usebackq tokens=*" %%i in (!caseFile!) do (
|
||||
set line=%%i
|
||||
call :CheckSkipCase %%i
|
||||
if !skipCase! == false (
|
||||
if "!line:~,9!" == "./test.sh" (
|
||||
set /a a+=1
|
||||
echo !a! Processing %%i
|
||||
call :GetTimeSeconds !time!
|
||||
set time1=!_timeTemp!
|
||||
echo Start at !time!
|
||||
call !line:./test.sh=wtest.bat! > result_!a!.txt 2>error_!a!.txt || set /a errorlevel=8
|
||||
if errorlevel 1 ( call :colorEcho 0c "failed" &echo. && set /a exitNum=8 && echo %%i >>failed.txt ) else ( call :colorEcho 0a "Success" &echo. )
|
||||
)
|
||||
)
|
||||
)
|
||||
exit /b !exitNum!
|
||||
|
||||
:colorEcho
|
||||
set timeNow=%time%
|
||||
call :GetTimeSeconds %timeNow%
|
||||
set time2=%_timeTemp%
|
||||
set /a interTime=%time2% - %time1%
|
||||
echo End at %timeNow% , cast %interTime%s
|
||||
echo off
|
||||
<nul set /p ".=%DEL%" > "%~2"
|
||||
findstr /v /a:%1 /R "^$" "%~2" nul
|
||||
del "%~2" > nul 2>&1i
|
||||
goto :eof
|
||||
|
||||
:GetTimeSeconds
|
||||
set tt=%1
|
||||
set tt=%tt:.= %
|
||||
set tt=%tt::= %
|
||||
set tt=%tt: 0= %
|
||||
set /a index=1
|
||||
for %%a in (%tt%) do (
|
||||
if !index! EQU 1 (
|
||||
set /a hh=%%a
|
||||
)^
|
||||
else if !index! EQU 2 (
|
||||
set /a mm=%%a
|
||||
|
||||
)^
|
||||
else if !index! EQU 3 (
|
||||
set /a ss=%%a
|
||||
)
|
||||
set /a index=index+1
|
||||
)
|
||||
set /a _timeTemp=(%hh%*60+%mm%)*60+%ss%
|
||||
goto :eof
|
||||
|
||||
:CheckSkipCase
|
||||
set skipCase=false
|
||||
@REM if "%*" == "./test.sh -f tsim/query/scalarFunction.sim" ( set skipCase=true )
|
||||
echo %* | grep valgrind && set skipCase=true
|
||||
:goto eof
|
|
@ -50,6 +50,21 @@ endi
|
|||
print =============== step2 create database
|
||||
sql create database d1 vgroups 1 replica 3
|
||||
sql use d1
|
||||
|
||||
$wt = 0
|
||||
stepwt1:
|
||||
$wt = $wt + 1
|
||||
sleep 1000
|
||||
if $wt == 200 then
|
||||
print ====> dnode not ready!
|
||||
return -1
|
||||
endi
|
||||
sql show transactions
|
||||
if $rows != 0 then
|
||||
print wait 1 seconds to alter
|
||||
goto stepwt1
|
||||
endi
|
||||
|
||||
sql create table d1.st0 (ts timestamp, i int) tags (j int)
|
||||
sql create table d1.c0 using st0 tags(0)
|
||||
sql create table d1.c1 using st0 tags(1)
|
||||
|
|
|
@ -170,6 +170,20 @@ if $leaderExist != 1 then
|
|||
goto step35
|
||||
endi
|
||||
|
||||
$wt = 0
|
||||
stepwt1:
|
||||
$wt = $wt + 1
|
||||
sleep 1000
|
||||
if $wt == 200 then
|
||||
print ====> dnode not ready!
|
||||
return -1
|
||||
endi
|
||||
sql show transactions
|
||||
if $rows != 0 then
|
||||
print wait 1 seconds to alter
|
||||
goto stepwt1
|
||||
endi
|
||||
|
||||
print =============== step36: create table
|
||||
sql use d1
|
||||
sql create table d1.st (ts timestamp, i int) tags (j int)
|
||||
|
|
|
@ -55,7 +55,7 @@ $loop_cnt = 0
|
|||
check_db_ready:
|
||||
$loop_cnt = $loop_cnt + 1
|
||||
sleep 200
|
||||
if $loop_cnt == 100 then
|
||||
if $loop_cnt == 500 then
|
||||
print ====> db not ready!
|
||||
return -1
|
||||
endi
|
||||
|
|
|
@ -0,0 +1,402 @@
|
|||
./test.sh -f tsim/user/basic.sim
|
||||
./test.sh -f tsim/user/password.sim
|
||||
./test.sh -f tsim/user/privilege_db.sim
|
||||
./test.sh -f tsim/user/privilege_sysinfo.sim
|
||||
./test.sh -f tsim/user/privilege_topic.sim
|
||||
./test.sh -f tsim/db/alter_option.sim
|
||||
rem ./test.sh -f tsim/db/alter_replica_13.sim
|
||||
./test.sh -f tsim/db/alter_replica_31.sim
|
||||
./test.sh -f tsim/db/basic1.sim
|
||||
./test.sh -f tsim/db/basic2.sim
|
||||
./test.sh -f tsim/db/basic3.sim
|
||||
./test.sh -f tsim/db/basic4.sim
|
||||
./test.sh -f tsim/db/basic5.sim
|
||||
./test.sh -f tsim/db/basic6.sim
|
||||
./test.sh -f tsim/db/commit.sim
|
||||
./test.sh -f tsim/db/create_all_options.sim
|
||||
./test.sh -f tsim/db/delete_reuse1.sim
|
||||
./test.sh -f tsim/db/delete_reuse2.sim
|
||||
./test.sh -f tsim/db/delete_reusevnode.sim
|
||||
./test.sh -f tsim/db/delete_reusevnode2.sim
|
||||
./test.sh -f tsim/db/delete_writing1.sim
|
||||
./test.sh -f tsim/db/delete_writing2.sim
|
||||
./test.sh -f tsim/db/error1.sim
|
||||
./test.sh -f tsim/db/keep.sim
|
||||
./test.sh -f tsim/db/len.sim
|
||||
./test.sh -f tsim/db/repeat.sim
|
||||
./test.sh -f tsim/db/show_create_db.sim
|
||||
./test.sh -f tsim/db/show_create_table.sim
|
||||
./test.sh -f tsim/db/tables.sim
|
||||
./test.sh -f tsim/db/taosdlog.sim
|
||||
./test.sh -f tsim/dnode/balance_replica1.sim
|
||||
./test.sh -f tsim/dnode/balance_replica3.sim
|
||||
./test.sh -f tsim/dnode/balance1.sim
|
||||
./test.sh -f tsim/dnode/balance2.sim
|
||||
./test.sh -f tsim/dnode/balance3.sim
|
||||
./test.sh -f tsim/dnode/balancex.sim
|
||||
./test.sh -f tsim/dnode/create_dnode.sim
|
||||
./test.sh -f tsim/dnode/drop_dnode_has_mnode.sim
|
||||
./test.sh -f tsim/dnode/drop_dnode_has_qnode_snode.sim
|
||||
./test.sh -f tsim/dnode/drop_dnode_has_vnode_replica1.sim
|
||||
./test.sh -f tsim/dnode/drop_dnode_has_vnode_replica3.sim
|
||||
./test.sh -f tsim/dnode/drop_dnode_has_multi_vnode_replica1.sim
|
||||
./test.sh -f tsim/dnode/drop_dnode_has_multi_vnode_replica3.sim
|
||||
./test.sh -f tsim/dnode/drop_dnode_force.sim
|
||||
./test.sh -f tsim/dnode/offline_reason.sim
|
||||
./test.sh -f tsim/dnode/redistribute_vgroup_replica1.sim
|
||||
./test.sh -f tsim/dnode/redistribute_vgroup_replica3_v1_leader.sim
|
||||
./test.sh -f tsim/dnode/redistribute_vgroup_replica3_v1_follower.sim
|
||||
./test.sh -f tsim/dnode/redistribute_vgroup_replica3_v2.sim
|
||||
./test.sh -f tsim/dnode/redistribute_vgroup_replica3_v3.sim
|
||||
./test.sh -f tsim/dnode/vnode_clean.sim
|
||||
./test.sh -f tsim/dnode/use_dropped_dnode.sim
|
||||
./test.sh -f tsim/dnode/split_vgroup_replica1.sim
|
||||
./test.sh -f tsim/dnode/split_vgroup_replica3.sim
|
||||
./test.sh -f tsim/import/basic.sim
|
||||
./test.sh -f tsim/import/commit.sim
|
||||
./test.sh -f tsim/import/large.sim
|
||||
./test.sh -f tsim/import/replica1.sim
|
||||
./test.sh -f tsim/insert/backquote.sim
|
||||
./test.sh -f tsim/insert/basic.sim
|
||||
./test.sh -f tsim/insert/basic0.sim
|
||||
./test.sh -f tsim/insert/basic1.sim
|
||||
./test.sh -f tsim/insert/basic2.sim
|
||||
./test.sh -f tsim/insert/commit-merge0.sim
|
||||
./test.sh -f tsim/insert/insert_drop.sim
|
||||
./test.sh -f tsim/insert/insert_select.sim
|
||||
./test.sh -f tsim/insert/null.sim
|
||||
./test.sh -f tsim/insert/query_block1_file.sim
|
||||
./test.sh -f tsim/insert/query_block1_memory.sim
|
||||
./test.sh -f tsim/insert/query_block2_file.sim
|
||||
./test.sh -f tsim/insert/query_block2_memory.sim
|
||||
./test.sh -f tsim/insert/query_file_memory.sim
|
||||
./test.sh -f tsim/insert/query_multi_file.sim
|
||||
./test.sh -f tsim/insert/tcp.sim
|
||||
./test.sh -f tsim/insert/update0.sim
|
||||
./test.sh -f tsim/insert/update1_sort_merge.sim
|
||||
./test.sh -f tsim/insert/update2.sim
|
||||
./test.sh -f tsim/parser/alter__for_community_version.sim
|
||||
./test.sh -f tsim/parser/alter_column.sim
|
||||
./test.sh -f tsim/parser/alter_stable.sim
|
||||
./test.sh -f tsim/parser/alter.sim
|
||||
./test.sh -f tsim/parser/alter1.sim
|
||||
./test.sh -f tsim/parser/auto_create_tb_drop_tb.sim
|
||||
./test.sh -f tsim/parser/auto_create_tb.sim
|
||||
./test.sh -f tsim/parser/between_and.sim
|
||||
./test.sh -f tsim/parser/binary_escapeCharacter.sim
|
||||
./test.sh -f tsim/parser/col_arithmetic_operation.sim
|
||||
./test.sh -f tsim/parser/columnValue_bigint.sim
|
||||
./test.sh -f tsim/parser/columnValue_bool.sim
|
||||
./test.sh -f tsim/parser/columnValue_double.sim
|
||||
./test.sh -f tsim/parser/columnValue_float.sim
|
||||
./test.sh -f tsim/parser/columnValue_int.sim
|
||||
./test.sh -f tsim/parser/columnValue_smallint.sim
|
||||
./test.sh -f tsim/parser/columnValue_tinyint.sim
|
||||
./test.sh -f tsim/parser/columnValue_unsign.sim
|
||||
./test.sh -f tsim/parser/commit.sim
|
||||
./test.sh -f tsim/parser/condition.sim
|
||||
./test.sh -f tsim/parser/constCol.sim
|
||||
./test.sh -f tsim/parser/create_db.sim
|
||||
./test.sh -f tsim/parser/create_mt.sim
|
||||
./test.sh -f tsim/parser/create_tb_with_tag_name.sim
|
||||
./test.sh -f tsim/parser/create_tb.sim
|
||||
./test.sh -f tsim/parser/dbtbnameValidate.sim
|
||||
./test.sh -f tsim/parser/distinct.sim
|
||||
./test.sh -f tsim/parser/fill_us.sim
|
||||
./test.sh -f tsim/parser/fill.sim
|
||||
./test.sh -f tsim/parser/first_last.sim
|
||||
./test.sh -f tsim/parser/fill_stb.sim
|
||||
./test.sh -f tsim/parser/interp.sim
|
||||
./test.sh -f tsim/parser/fourArithmetic-basic.sim
|
||||
./test.sh -f tsim/parser/function.sim
|
||||
./test.sh -f tsim/parser/groupby-basic.sim
|
||||
./test.sh -f tsim/parser/groupby.sim
|
||||
./test.sh -f tsim/parser/having_child.sim
|
||||
./test.sh -f tsim/parser/having.sim
|
||||
./test.sh -f tsim/parser/import_commit1.sim
|
||||
./test.sh -f tsim/parser/import_commit2.sim
|
||||
./test.sh -f tsim/parser/import_commit3.sim
|
||||
./test.sh -f tsim/parser/import_file.sim
|
||||
./test.sh -f tsim/parser/import.sim
|
||||
./test.sh -f tsim/parser/insert_multiTbl.sim
|
||||
./test.sh -f tsim/parser/insert_tb.sim
|
||||
./test.sh -f tsim/parser/join_manyblocks.sim
|
||||
./test.sh -f tsim/parser/join_multitables.sim
|
||||
./test.sh -f tsim/parser/join_multivnode.sim
|
||||
./test.sh -f tsim/parser/join.sim
|
||||
./test.sh -f tsim/parser/last_cache.sim
|
||||
./test.sh -f tsim/parser/last_groupby.sim
|
||||
./test.sh -f tsim/parser/lastrow.sim
|
||||
./test.sh -f tsim/parser/lastrow2.sim
|
||||
./test.sh -f tsim/parser/like.sim
|
||||
./test.sh -f tsim/parser/limit.sim
|
||||
./test.sh -f tsim/parser/limit1.sim
|
||||
./test.sh -f tsim/parser/mixed_blocks.sim
|
||||
./test.sh -f tsim/parser/nchar.sim
|
||||
./test.sh -f tsim/parser/nestquery.sim
|
||||
./test.sh -f tsim/parser/null_char.sim
|
||||
./test.sh -f tsim/parser/precision_ns.sim
|
||||
./test.sh -f tsim/parser/projection_limit_offset.sim
|
||||
./test.sh -f tsim/parser/regex.sim
|
||||
./test.sh -f tsim/parser/regressiontest.sim
|
||||
./test.sh -f tsim/parser/select_across_vnodes.sim
|
||||
./test.sh -f tsim/parser/select_distinct_tag.sim
|
||||
./test.sh -f tsim/parser/select_from_cache_disk.sim
|
||||
./test.sh -f tsim/parser/select_with_tags.sim
|
||||
./test.sh -f tsim/parser/selectResNum.sim
|
||||
./test.sh -f tsim/parser/set_tag_vals.sim
|
||||
./test.sh -f tsim/parser/single_row_in_tb.sim
|
||||
./test.sh -f tsim/parser/sliding.sim
|
||||
./test.sh -f tsim/parser/slimit_alter_tags.sim
|
||||
./test.sh -f tsim/parser/slimit.sim
|
||||
./test.sh -f tsim/parser/slimit1.sim
|
||||
./test.sh -f tsim/parser/stableOp.sim
|
||||
./test.sh -f tsim/parser/tags_dynamically_specifiy.sim
|
||||
./test.sh -f tsim/parser/tags_filter.sim
|
||||
./test.sh -f tsim/parser/tbnameIn.sim
|
||||
./test.sh -f tsim/parser/timestamp.sim
|
||||
./test.sh -f tsim/parser/top_groupby.sim
|
||||
./test.sh -f tsim/parser/topbot.sim
|
||||
./test.sh -f tsim/parser/union.sim
|
||||
./test.sh -f tsim/parser/union_sysinfo.sim
|
||||
./test.sh -f tsim/parser/where.sim
|
||||
./test.sh -f tsim/query/tagLikeFilter.sim
|
||||
./test.sh -f tsim/query/charScalarFunction.sim
|
||||
./test.sh -f tsim/query/explain.sim
|
||||
./test.sh -f tsim/query/interval-offset.sim
|
||||
./test.sh -f tsim/query/interval.sim
|
||||
./test.sh -f tsim/query/scalarFunction.sim
|
||||
./test.sh -f tsim/query/scalarNull.sim
|
||||
./test.sh -f tsim/query/session.sim
|
||||
./test.sh -f tsim/query/sys_tbname.sim
|
||||
./test.sh -f tsim/query/groupby.sim
|
||||
./test.sh -f tsim/query/event.sim
|
||||
./test.sh -f tsim/query/forceFill.sim
|
||||
./test.sh -f tsim/query/emptyTsRange.sim
|
||||
./test.sh -f tsim/query/partitionby.sim
|
||||
./test.sh -f tsim/qnode/basic1.sim
|
||||
./test.sh -f tsim/snode/basic1.sim
|
||||
./test.sh -f tsim/mnode/basic1.sim
|
||||
./test.sh -f tsim/mnode/basic2.sim
|
||||
./test.sh -f tsim/mnode/basic3.sim
|
||||
./test.sh -f tsim/mnode/basic4.sim
|
||||
./test.sh -f tsim/mnode/basic5.sim
|
||||
./test.sh -f tsim/show/basic.sim
|
||||
./test.sh -f tsim/table/autocreate.sim
|
||||
./test.sh -f tsim/table/basic1.sim
|
||||
./test.sh -f tsim/table/basic2.sim
|
||||
./test.sh -f tsim/table/basic3.sim
|
||||
./test.sh -f tsim/table/bigint.sim
|
||||
./test.sh -f tsim/table/binary.sim
|
||||
./test.sh -f tsim/table/bool.sim
|
||||
./test.sh -f tsim/table/column_name.sim
|
||||
./test.sh -f tsim/table/column_num.sim
|
||||
./test.sh -f tsim/table/column_value.sim
|
||||
./test.sh -f tsim/table/column2.sim
|
||||
./test.sh -f tsim/table/createmulti.sim
|
||||
./test.sh -f tsim/table/date.sim
|
||||
./test.sh -f tsim/table/db.table.sim
|
||||
./test.sh -f tsim/table/delete_reuse1.sim
|
||||
./test.sh -f tsim/table/delete_reuse2.sim
|
||||
./test.sh -f tsim/table/delete_writing.sim
|
||||
./test.sh -f tsim/table/describe.sim
|
||||
./test.sh -f tsim/table/double.sim
|
||||
./test.sh -f tsim/table/float.sim
|
||||
./test.sh -f tsim/table/hash.sim
|
||||
./test.sh -f tsim/table/int.sim
|
||||
./test.sh -f tsim/table/limit.sim
|
||||
./test.sh -f tsim/table/smallint.sim
|
||||
./test.sh -f tsim/table/table_len.sim
|
||||
./test.sh -f tsim/table/table.sim
|
||||
./test.sh -f tsim/table/tinyint.sim
|
||||
./test.sh -f tsim/table/vgroup.sim
|
||||
./test.sh -f tsim/stream/basic0.sim -g
|
||||
./test.sh -f tsim/stream/basic1.sim
|
||||
./test.sh -f tsim/stream/basic2.sim
|
||||
./test.sh -f tsim/stream/drop_stream.sim
|
||||
./test.sh -f tsim/stream/fillHistoryBasic1.sim
|
||||
./test.sh -f tsim/stream/fillHistoryBasic2.sim
|
||||
./test.sh -f tsim/stream/fillHistoryBasic3.sim
|
||||
./test.sh -f tsim/stream/distributeInterval0.sim
|
||||
./test.sh -f tsim/stream/distributeIntervalRetrive0.sim
|
||||
./test.sh -f tsim/stream/distributeSession0.sim
|
||||
./test.sh -f tsim/stream/session0.sim
|
||||
./test.sh -f tsim/stream/session1.sim
|
||||
./test.sh -f tsim/stream/state0.sim
|
||||
./test.sh -f tsim/stream/triggerInterval0.sim
|
||||
./test.sh -f tsim/stream/triggerSession0.sim
|
||||
./test.sh -f tsim/stream/partitionby.sim
|
||||
./test.sh -f tsim/stream/partitionby1.sim
|
||||
./test.sh -f tsim/stream/schedSnode.sim
|
||||
./test.sh -f tsim/stream/windowClose.sim
|
||||
./test.sh -f tsim/stream/ignoreExpiredData.sim
|
||||
./test.sh -f tsim/stream/sliding.sim
|
||||
./test.sh -f tsim/stream/partitionbyColumnInterval.sim
|
||||
./test.sh -f tsim/stream/partitionbyColumnSession.sim
|
||||
./test.sh -f tsim/stream/partitionbyColumnState.sim
|
||||
./test.sh -f tsim/stream/deleteInterval.sim
|
||||
./test.sh -f tsim/stream/deleteSession.sim
|
||||
./test.sh -f tsim/stream/deleteState.sim
|
||||
./test.sh -f tsim/stream/fillIntervalDelete0.sim
|
||||
./test.sh -f tsim/stream/fillIntervalDelete1.sim
|
||||
./test.sh -f tsim/stream/fillIntervalLinear.sim
|
||||
./test.sh -f tsim/stream/fillIntervalPartitionBy.sim
|
||||
./test.sh -f tsim/stream/fillIntervalPrevNext.sim
|
||||
./test.sh -f tsim/stream/fillIntervalValue.sim
|
||||
./test.sh -f tsim/stream/udTableAndTag0.sim
|
||||
./test.sh -f tsim/stream/udTableAndTag1.sim
|
||||
./test.sh -f tsim/trans/lossdata1.sim
|
||||
./test.sh -f tsim/trans/create_db.sim
|
||||
./test.sh -f tsim/tmq/basic1.sim
|
||||
./test.sh -f tsim/tmq/basic2.sim
|
||||
./test.sh -f tsim/tmq/basic3.sim
|
||||
./test.sh -f tsim/tmq/basic4.sim
|
||||
./test.sh -f tsim/tmq/basic1Of2Cons.sim
|
||||
./test.sh -f tsim/tmq/basic2Of2Cons.sim
|
||||
./test.sh -f tsim/tmq/basic3Of2Cons.sim
|
||||
./test.sh -f tsim/tmq/basic4Of2Cons.sim
|
||||
./test.sh -f tsim/tmq/basic2Of2ConsOverlap.sim
|
||||
./test.sh -f tsim/tmq/topic.sim
|
||||
./test.sh -f tsim/tmq/snapshot.sim
|
||||
./test.sh -f tsim/tmq/snapshot1.sim
|
||||
./test.sh -f tsim/stable/alter_comment.sim
|
||||
./test.sh -f tsim/stable/alter_count.sim
|
||||
./test.sh -f tsim/stable/alter_import.sim
|
||||
./test.sh -f tsim/stable/alter_insert1.sim
|
||||
./test.sh -f tsim/stable/alter_insert2.sim
|
||||
./test.sh -f tsim/stable/alter_metrics.sim
|
||||
./test.sh -f tsim/stable/column_add.sim
|
||||
./test.sh -f tsim/stable/column_drop.sim
|
||||
./test.sh -f tsim/stable/column_modify.sim
|
||||
./test.sh -f tsim/stable/disk.sim
|
||||
./test.sh -f tsim/stable/dnode3.sim
|
||||
./test.sh -f tsim/stable/metrics.sim
|
||||
./test.sh -f tsim/stable/refcount.sim
|
||||
./test.sh -f tsim/stable/tag_add.sim
|
||||
./test.sh -f tsim/stable/tag_drop.sim
|
||||
./test.sh -f tsim/stable/tag_filter.sim
|
||||
./test.sh -f tsim/stable/tag_modify.sim
|
||||
./test.sh -f tsim/stable/tag_rename.sim
|
||||
./test.sh -f tsim/stable/values.sim
|
||||
./test.sh -f tsim/stable/vnode3.sim
|
||||
./test.sh -f tsim/stable/metrics_idx.sim
|
||||
./test.sh -f tsim/sma/drop_sma.sim
|
||||
./test.sh -f tsim/sma/sma_leak.sim
|
||||
./test.sh -f tsim/sma/tsmaCreateInsertQuery.sim
|
||||
./test.sh -f tsim/sma/rsmaCreateInsertQuery.sim
|
||||
./test.sh -f tsim/sma/rsmaPersistenceRecovery.sim
|
||||
./test.sh -f tsim/valgrind/checkError1.sim
|
||||
./test.sh -f tsim/valgrind/checkError2.sim
|
||||
./test.sh -f tsim/valgrind/checkError3.sim
|
||||
./test.sh -f tsim/valgrind/checkError4.sim
|
||||
./test.sh -f tsim/valgrind/checkError5.sim
|
||||
./test.sh -f tsim/valgrind/checkError6.sim
|
||||
./test.sh -f tsim/valgrind/checkError7.sim
|
||||
./test.sh -f tsim/valgrind/checkError8.sim
|
||||
./test.sh -f tsim/vnode/replica3_basic.sim
|
||||
./test.sh -f tsim/vnode/replica3_repeat.sim
|
||||
./test.sh -f tsim/vnode/replica3_vgroup.sim
|
||||
./test.sh -f tsim/vnode/replica3_many.sim
|
||||
./test.sh -f tsim/vnode/replica3_import.sim
|
||||
./test.sh -f tsim/vnode/stable_balance_replica1.sim
|
||||
./test.sh -f tsim/vnode/stable_dnode2_stop.sim
|
||||
./test.sh -f tsim/vnode/stable_dnode2.sim
|
||||
./test.sh -f tsim/vnode/stable_dnode3.sim
|
||||
./test.sh -f tsim/vnode/stable_replica3_dnode6.sim
|
||||
./test.sh -f tsim/vnode/stable_replica3_vnode3.sim
|
||||
./test.sh -f tsim/sync/3Replica1VgElect.sim
|
||||
./test.sh -f tsim/sync/3Replica5VgElect.sim
|
||||
./test.sh -f tsim/sync/oneReplica1VgElect.sim
|
||||
./test.sh -f tsim/sync/oneReplica5VgElect.sim
|
||||
./test.sh -f tsim/catalog/alterInCurrent.sim
|
||||
./test.sh -f tsim/scalar/in.sim
|
||||
./test.sh -f tsim/scalar/scalar.sim
|
||||
./test.sh -f tsim/scalar/filter.sim
|
||||
./test.sh -f tsim/scalar/caseWhen.sim
|
||||
./test.sh -f tsim/scalar/tsConvert.sim
|
||||
./test.sh -f tsim/alter/cached_schema_after_alter.sim
|
||||
./test.sh -f tsim/alter/dnode.sim
|
||||
./test.sh -f tsim/alter/table.sim
|
||||
./test.sh -f tsim/cache/new_metrics.sim
|
||||
./test.sh -f tsim/cache/restart_table.sim
|
||||
./test.sh -f tsim/cache/restart_metrics.sim
|
||||
./test.sh -f tsim/column/commit.sim
|
||||
./test.sh -f tsim/column/metrics.sim
|
||||
./test.sh -f tsim/column/table.sim
|
||||
./test.sh -f tsim/compress/commitlog.sim
|
||||
./test.sh -f tsim/compress/compress2.sim
|
||||
./test.sh -f tsim/compress/compress.sim
|
||||
./test.sh -f tsim/compress/uncompress.sim
|
||||
./test.sh -f tsim/compute/avg.sim
|
||||
./test.sh -f tsim/compute/block_dist.sim
|
||||
./test.sh -f tsim/compute/bottom.sim
|
||||
./test.sh -f tsim/compute/count.sim
|
||||
./test.sh -f tsim/compute/diff.sim
|
||||
./test.sh -f tsim/compute/diff2.sim
|
||||
./test.sh -f tsim/compute/first.sim
|
||||
./test.sh -f tsim/compute/interval.sim
|
||||
./test.sh -f tsim/compute/last_row.sim
|
||||
./test.sh -f tsim/compute/last.sim
|
||||
./test.sh -f tsim/compute/leastsquare.sim
|
||||
./test.sh -f tsim/compute/max.sim
|
||||
./test.sh -f tsim/compute/min.sim
|
||||
./test.sh -f tsim/compute/null.sim
|
||||
./test.sh -f tsim/compute/percentile.sim
|
||||
./test.sh -f tsim/compute/stddev.sim
|
||||
./test.sh -f tsim/compute/sum.sim
|
||||
./test.sh -f tsim/compute/top.sim
|
||||
./test.sh -f tsim/field/2.sim
|
||||
./test.sh -f tsim/field/3.sim
|
||||
./test.sh -f tsim/field/4.sim
|
||||
./test.sh -f tsim/field/5.sim
|
||||
./test.sh -f tsim/field/6.sim
|
||||
./test.sh -f tsim/field/binary.sim
|
||||
./test.sh -f tsim/field/bigint.sim
|
||||
./test.sh -f tsim/field/bool.sim
|
||||
./test.sh -f tsim/field/double.sim
|
||||
./test.sh -f tsim/field/float.sim
|
||||
./test.sh -f tsim/field/int.sim
|
||||
./test.sh -f tsim/field/single.sim
|
||||
./test.sh -f tsim/field/smallint.sim
|
||||
./test.sh -f tsim/field/tinyint.sim
|
||||
./test.sh -f tsim/field/unsigined_bigint.sim
|
||||
./test.sh -f tsim/vector/metrics_field.sim
|
||||
./test.sh -f tsim/vector/metrics_mix.sim
|
||||
./test.sh -f tsim/vector/metrics_query.sim
|
||||
./test.sh -f tsim/vector/metrics_tag.sim
|
||||
./test.sh -f tsim/vector/metrics_time.sim
|
||||
./test.sh -f tsim/vector/multi.sim
|
||||
./test.sh -f tsim/vector/single.sim
|
||||
./test.sh -f tsim/vector/table_field.sim
|
||||
./test.sh -f tsim/vector/table_mix.sim
|
||||
./test.sh -f tsim/vector/table_query.sim
|
||||
./test.sh -f tsim/vector/table_time.sim
|
||||
./test.sh -f tsim/wal/kill.sim
|
||||
./test.sh -f tsim/tag/3.sim
|
||||
./test.sh -f tsim/tag/4.sim
|
||||
./test.sh -f tsim/tag/5.sim
|
||||
./test.sh -f tsim/tag/6.sim
|
||||
./test.sh -f tsim/tag/add.sim
|
||||
./test.sh -f tsim/tag/bigint.sim
|
||||
./test.sh -f tsim/tag/binary_binary.sim
|
||||
./test.sh -f tsim/tag/binary.sim
|
||||
./test.sh -f tsim/tag/bool_binary.sim
|
||||
./test.sh -f tsim/tag/bool_int.sim
|
||||
./test.sh -f tsim/tag/bool.sim
|
||||
./test.sh -f tsim/tag/change.sim
|
||||
./test.sh -f tsim/tag/column.sim
|
||||
./test.sh -f tsim/tag/commit.sim
|
||||
./test.sh -f tsim/tag/create.sim
|
||||
./test.sh -f tsim/tag/delete.sim
|
||||
./test.sh -f tsim/tag/double.sim
|
||||
./test.sh -f tsim/tag/filter.sim
|
||||
./test.sh -f tsim/tag/float.sim
|
||||
./test.sh -f tsim/tag/int_binary.sim
|
||||
./test.sh -f tsim/tag/int_float.sim
|
||||
./test.sh -f tsim/tag/int.sim
|
||||
./test.sh -f tsim/tag/set.sim
|
||||
./test.sh -f tsim/tag/smallint.sim
|
||||
./test.sh -f tsim/tag/tinyint.sim
|
||||
./test.sh -f tsim/tag/drop_tag.sim
|
||||
./test.sh -f tsim/tag/tbNameIn.sim
|
||||
./test.sh -f tmp/monitor.sim
|
|
@ -33,7 +33,7 @@ if exist %LOG_DIR% rmdir /s/q %LOG_DIR%
|
|||
if not exist %CFG_DIR% mkdir %CFG_DIR%
|
||||
if not exist %LOG_DIR% mkdir %LOG_DIR%
|
||||
|
||||
rem set "fqdn="
|
||||
set "fqdn=localhost"
|
||||
for /f "skip=1" %%A in (
|
||||
'wmic computersystem get caption'
|
||||
) do if not defined fqdn set "fqdn=%%A"
|
||||
|
|
|
@ -3,6 +3,7 @@ import taos
|
|||
import sys
|
||||
import os
|
||||
import time
|
||||
import platform
|
||||
import inspect
|
||||
from taos.tmq import Consumer
|
||||
|
||||
|
@ -106,6 +107,9 @@ class TDTestCase:
|
|||
if distro_id == "alpine":
|
||||
tdLog.info(f"alpine skip compatibility test")
|
||||
return True
|
||||
if platform.system().lower() == 'windows':
|
||||
tdLog.info(f"Windows skip compatibility test")
|
||||
return True
|
||||
bPath = self.getBuildPath()
|
||||
cPath = self.getCfgPath()
|
||||
dbname = "test"
|
||||
|
@ -163,7 +167,7 @@ class TDTestCase:
|
|||
|
||||
tdLog.printNoPrefix(f"==========step3:prepare and check data in new version-{nowServerVersion}")
|
||||
tdsql.query(f"select count(*) from {stb}")
|
||||
tdsql.checkData(0,0,tableNumbers*recordNumbers1)
|
||||
tdsql.checkData(0,0,tableNumbers*recordNumbers1)
|
||||
# tdsql.query("show streams;")
|
||||
# os.system(f"taosBenchmark -t {tableNumbers} -n {recordNumbers2} -y ")
|
||||
# tdsql.query("show streams;")
|
||||
|
@ -192,15 +196,15 @@ class TDTestCase:
|
|||
tdsql.query("describe information_schema.ins_databases;")
|
||||
qRows=tdsql.queryRows
|
||||
comFlag=True
|
||||
j=0
|
||||
while comFlag:
|
||||
j=0
|
||||
while comFlag:
|
||||
for i in range(qRows) :
|
||||
if tdsql.queryResult[i][0] == "retentions" :
|
||||
print("parameters include retentions")
|
||||
comFlag=False
|
||||
break
|
||||
else :
|
||||
comFlag=True
|
||||
comFlag=True
|
||||
j=j+1
|
||||
if j == qRows:
|
||||
print("parameters don't include retentions")
|
||||
|
|
|
@ -49,8 +49,6 @@ class TDTestCase:
|
|||
#!for bug
|
||||
tdDnodes.stoptaosd(1)
|
||||
sleep(self.delaytime * 5)
|
||||
if platform.system().lower() == 'windows':
|
||||
sleep(10)
|
||||
tdSql.error('select server_status()')
|
||||
|
||||
def run(self):
|
||||
|
|
|
@ -4,6 +4,7 @@ import sys
|
|||
import time
|
||||
from datetime import datetime
|
||||
import socket
|
||||
import psutil
|
||||
import os
|
||||
import platform
|
||||
if platform.system().lower() == 'windows':
|
||||
|
@ -67,19 +68,25 @@ class TDTestCase:
|
|||
return buildPath
|
||||
|
||||
def get_process_pid(self,processname):
|
||||
#origin artical link:https://blog.csdn.net/weixin_45623536/article/details/122099062
|
||||
process_info_list = []
|
||||
process = os.popen('ps -A | grep %s'% processname)
|
||||
process_info = process.read()
|
||||
for i in process_info.split(' '):
|
||||
if i != "":
|
||||
process_info_list.append(i)
|
||||
print(process_info_list)
|
||||
if len(process_info_list) != 0 :
|
||||
pid = int(process_info_list[0])
|
||||
else :
|
||||
pid = 0
|
||||
return pid
|
||||
if platform.system().lower() == 'windows':
|
||||
pids = psutil.process_iter()
|
||||
for pid in pids:
|
||||
if(pid.name() == processname):
|
||||
return pid.pid
|
||||
return 0
|
||||
else:
|
||||
process_info_list = []
|
||||
process = os.popen('ps -A | grep %s'% processname)
|
||||
process_info = process.read()
|
||||
for i in process_info.split(' '):
|
||||
if i != "":
|
||||
process_info_list.append(i)
|
||||
print(process_info_list)
|
||||
if len(process_info_list) != 0 :
|
||||
pid = int(process_info_list[0])
|
||||
else :
|
||||
pid = 0
|
||||
return pid
|
||||
|
||||
def checkAndstopPro(self,processName,startAction):
|
||||
i = 1
|
||||
|
@ -88,23 +95,29 @@ class TDTestCase:
|
|||
taosdPid=self.get_process_pid(processName)
|
||||
if taosdPid != 0 and taosdPid != "" :
|
||||
tdLog.info("stop taosd %s ,kill pid :%s "%(startAction,taosdPid))
|
||||
os.system("kill -9 %d"%taosdPid)
|
||||
os.system("kill -9 %d"%taosdPid)
|
||||
break
|
||||
else:
|
||||
tdLog.info( "wait start taosd ,times: %d "%i)
|
||||
time.sleep(1)
|
||||
i+= 1
|
||||
else :
|
||||
tdLog.exit("taosd %s is not running "%startAction)
|
||||
tdLog.exit("taosd %s is not running "%startAction)
|
||||
|
||||
def taosdCommandStop(self,startAction,taosdCmdRun):
|
||||
processName="taosd"
|
||||
if platform.system().lower() == 'windows':
|
||||
processName="taosd.exe"
|
||||
taosdCmd = taosdCmdRun + startAction
|
||||
tdLog.printNoPrefix("%s"%taosdCmd)
|
||||
logTime=datetime.now().strftime('%Y%m%d_%H%M%S_%f')
|
||||
os.system(f"nohup {taosdCmd} > {logTime}.log 2>&1 & ")
|
||||
self.checkAndstopPro(processName,startAction)
|
||||
os.system(f"rm -rf {logTime}.log")
|
||||
if platform.system().lower() == 'windows':
|
||||
cmd = f"mintty -h never {taosdCmd}"
|
||||
os.system(cmd)
|
||||
else:
|
||||
logTime=datetime.now().strftime('%Y%m%d_%H%M%S_%f')
|
||||
os.system(f"nohup {taosdCmd} > {logTime}.log 2>&1 & ")
|
||||
self.checkAndstopPro(processName,startAction)
|
||||
os.system(f"rm -rf {logTime}.log")
|
||||
|
||||
|
||||
def taosdCommandExe(self,startAction,taosdCmdRun):
|
||||
|
@ -139,7 +152,7 @@ class TDTestCase:
|
|||
tdSql.query("create stream s1 into source_db.output_stb as select _wstart AS startts, min(k), max(k), sum(k) from source_db.stb interval(10m);")
|
||||
|
||||
|
||||
#TD-19944 -Q=3
|
||||
#TD-19944 -Q=3
|
||||
tdsqlN=tdCom.newTdSql()
|
||||
|
||||
tdsqlN.query("select * from source_db.stb")
|
||||
|
@ -186,7 +199,11 @@ class TDTestCase:
|
|||
|
||||
startAction=" -a jsonFile:./taosdCaseTmp.json"
|
||||
tdLog.printNoPrefix("================================ parameter: %s"%startAction)
|
||||
os.system("echo \'{\"queryPolicy\":\"3\"}\' > taosdCaseTmp.json")
|
||||
|
||||
if platform.system().lower() == 'windows':
|
||||
os.system("echo {\"queryPolicy\":\"3\"} > taosdCaseTmp.json")
|
||||
else:
|
||||
os.system("echo \'{\"queryPolicy\":\"3\"}\' > taosdCaseTmp.json")
|
||||
self.taosdCommandStop(startAction,taosdCmdRun)
|
||||
|
||||
startAction = " -a jsonFile:./taosdCaseTmp.json -C "
|
||||
|
@ -206,12 +223,12 @@ class TDTestCase:
|
|||
self.taosdCommandStop(startAction,taosdCmdRun)
|
||||
|
||||
|
||||
startAction=" -E taosdCaseTmp/.env"
|
||||
startAction=f" -E taosdCaseTmp{os.sep}.env"
|
||||
tdLog.printNoPrefix("================================ parameter: %s"%startAction)
|
||||
os.system(" mkdir -p taosdCaseTmp ")
|
||||
os.system("echo \'TAOS_QUERY_POLICY=3\' > taosdCaseTmp/.env ")
|
||||
os.system(" mkdir -p taosdCaseTmp ")
|
||||
os.system("echo TAOS_QUERY_POLICY=3 > taosdCaseTmp/.env ")
|
||||
self.taosdCommandStop(startAction,taosdCmdRun)
|
||||
os.system(" rm -rf taosdCaseTmp ")
|
||||
os.system(" rm -rf taosdCaseTmp ")
|
||||
|
||||
startAction = " -V"
|
||||
tdLog.printNoPrefix("================================ parameter: %s"%startAction)
|
||||
|
|
|
@ -75,7 +75,7 @@ class TDTestCase:
|
|||
tdLog.exit(cmd)
|
||||
|
||||
def cfg_str(self, filename, update_str):
|
||||
cmd = f'echo "{update_str}" >> {filename}'
|
||||
cmd = f'echo {update_str} >> {filename}'
|
||||
if os.system(cmd) != 0:
|
||||
tdLog.exit(cmd)
|
||||
|
||||
|
@ -94,41 +94,41 @@ class TDTestCase:
|
|||
def __err_cfg(self):
|
||||
cfg_list = []
|
||||
err_case1 = [
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE0}0 {L0} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE1}1 {L1} {PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE2}2 {L2} {NON_PRIMARY_DIR}"
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}0 {L0} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE1}1 {L1} {PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE2}2 {L2} {NON_PRIMARY_DIR}"
|
||||
]
|
||||
err_case2 = [
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE0}0 {L0} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE1}1 {L1} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE2}2 {L2} {PRIMARY_DIR}"
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}0 {L0} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE1}1 {L1} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE2}2 {L2} {PRIMARY_DIR}"
|
||||
]
|
||||
err_case3 = [
|
||||
f"dataDir {self.taos_data_dir}/data33 3 {NON_PRIMARY_DIR}"
|
||||
f"dataDir {self.taos_data_dir}{os.sep}data33 3 {NON_PRIMARY_DIR}"
|
||||
]
|
||||
err_case4 = [
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE0}0 {L0} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE1}1 {L1} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE2}2 {L2} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE2}2 {L1} {NON_PRIMARY_DIR}"
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}0 {L0} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE1}1 {L1} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE2}2 {L2} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE2}2 {L1} {NON_PRIMARY_DIR}"
|
||||
]
|
||||
err_case5 = [f"dataDir {self.taos_data_dir}/{DATA_PRE0}0 {L0} {PRIMARY_DIR}"]
|
||||
err_case5 = [f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}0 {L0} {PRIMARY_DIR}"]
|
||||
for i in range(16):
|
||||
err_case5.append(f"dataDir {self.taos_data_dir}/{DATA_PRE0}{i+1} {L0} {NON_PRIMARY_DIR}")
|
||||
err_case5.append(f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}{i+1} {L0} {NON_PRIMARY_DIR}")
|
||||
|
||||
err_case6 = [
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE0}0 {L0} {PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE0}1 {L0} {PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}0 {L0} {PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}1 {L0} {PRIMARY_DIR}",
|
||||
]
|
||||
err_case7 = [
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE0}0 {L0} {PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE2}2 {L2} {PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}0 {L0} {PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE2}2 {L2} {PRIMARY_DIR}",
|
||||
]
|
||||
err_case8 = [
|
||||
f"dataDir {self.taos_data_dir}/data33 3 {PRIMARY_DIR}"
|
||||
f"dataDir {self.taos_data_dir}{os.sep}data33 3 {PRIMARY_DIR}"
|
||||
]
|
||||
err_case9 = [
|
||||
f"dataDir {self.taos_data_dir}/data33 -1 {NON_PRIMARY_DIR}"
|
||||
f"dataDir {self.taos_data_dir}{os.sep}data33 -1 {NON_PRIMARY_DIR}"
|
||||
]
|
||||
|
||||
cfg_list.append(err_case1)
|
||||
|
@ -147,23 +147,23 @@ class TDTestCase:
|
|||
def __current_cfg(self):
|
||||
cfg_list = []
|
||||
current_case1 = [
|
||||
#f"dataDir {self.taos_data_dir}/{DATA_PRE0}0 {L0} {PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE0}1 {L0} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE1}1 {L1} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE2}2 {L2} {NON_PRIMARY_DIR}"
|
||||
#f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}0 {L0} {PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}1 {L0} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE1}1 {L1} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE2}2 {L2} {NON_PRIMARY_DIR}"
|
||||
]
|
||||
|
||||
#current_case2 = [f"dataDir {self.taos_data_dir}/{DATA_PRE0}0 {L0} {PRIMARY_DIR}"]
|
||||
#current_case2 = [f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}0 {L0} {PRIMARY_DIR}"]
|
||||
current_case2 = []
|
||||
for i in range(9):
|
||||
current_case2.append(f"dataDir {self.taos_data_dir}/{DATA_PRE0}{i+1} {L0} {NON_PRIMARY_DIR}")
|
||||
current_case2.append(f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}{i+1} {L0} {NON_PRIMARY_DIR}")
|
||||
|
||||
# TD-17773bug
|
||||
current_case3 = [
|
||||
#f"dataDir {self.taos_data_dir}/{DATA_PRE0}0 ",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE0}1 {L0} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE1}0 {L1} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}/{DATA_PRE2}0 {L2} {NON_PRIMARY_DIR}",
|
||||
#f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}0 ",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE0}1 {L0} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE1}0 {L1} {NON_PRIMARY_DIR}",
|
||||
f"dataDir {self.taos_data_dir}{os.sep}{DATA_PRE2}0 {L2} {NON_PRIMARY_DIR}",
|
||||
]
|
||||
cfg_list.append(current_case1)
|
||||
cfg_list.append(current_case3)
|
||||
|
|
|
@ -567,7 +567,7 @@ class TDTestCase:
|
|||
if data_ct4_c10[i] is None:
|
||||
tdSql.checkData( i, 0, None )
|
||||
else:
|
||||
time2str = str(int((data_ct4_c10[i]-datetime.datetime.fromtimestamp(0)).total_seconds()*1000))
|
||||
time2str = str(int((data_ct4_c10[i]-datetime.datetime.fromtimestamp(0,data_ct4_c10[i].tzinfo)).total_seconds())*1000+int(data_ct4_c10[i].microsecond / 1000))
|
||||
tdSql.checkData( i, 0, time2str )
|
||||
tdSql.query(f"select cast(c10 as nchar(32)) as b from {self.dbname}.t1")
|
||||
for i in range(len(data_t1_c10)):
|
||||
|
@ -576,7 +576,7 @@ class TDTestCase:
|
|||
elif i == 10:
|
||||
continue
|
||||
else:
|
||||
time2str = str(int((data_t1_c10[i]-datetime.datetime.fromtimestamp(0)).total_seconds()*1000))
|
||||
time2str = str(int((data_t1_c10[i]-datetime.datetime.fromtimestamp(0,data_t1_c10[i].tzinfo)).total_seconds())*1000+int(data_t1_c10[i].microsecond / 1000))
|
||||
tdSql.checkData( i, 0, time2str )
|
||||
|
||||
tdLog.printNoPrefix("==========step38: cast timestamp to binary, expect no changes ")
|
||||
|
@ -585,7 +585,7 @@ class TDTestCase:
|
|||
if data_ct4_c10[i] is None:
|
||||
tdSql.checkData( i, 0, None )
|
||||
else:
|
||||
time2str = str(int((data_ct4_c10[i]-datetime.datetime.fromtimestamp(0)).total_seconds()*1000))
|
||||
time2str = str(int((data_ct4_c10[i]-datetime.datetime.fromtimestamp(0,data_ct4_c10[i].tzinfo)).total_seconds())*1000+int(data_ct4_c10[i].microsecond / 1000))
|
||||
tdSql.checkData( i, 0, time2str )
|
||||
tdSql.query(f"select cast(c10 as binary(32)) as b from {self.dbname}.t1")
|
||||
for i in range(len(data_t1_c10)):
|
||||
|
@ -594,7 +594,7 @@ class TDTestCase:
|
|||
elif i == 10:
|
||||
continue
|
||||
else:
|
||||
time2str = str(int((data_t1_c10[i]-datetime.datetime.fromtimestamp(0)).total_seconds()*1000))
|
||||
time2str = str(int((data_t1_c10[i]-datetime.datetime.fromtimestamp(0,data_t1_c10[i].tzinfo)).total_seconds())*1000+int(data_t1_c10[i].microsecond / 1000))
|
||||
tdSql.checkData( i, 0, time2str )
|
||||
|
||||
tdLog.printNoPrefix("==========step39: cast constant operation to bigint, expect change to int ")
|
||||
|
|
|
@ -64,61 +64,61 @@ class TDTestCase:
|
|||
tdSql.query(f"select ts,mode(c1) from {dbname}.tb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2022, 12, 31, 1, 1, 36))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2022, 12, 31, 1, 1, 36).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, 9)
|
||||
|
||||
tdSql.query(f"select ts,mode(c2) from {dbname}.tb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2022, 12, 31, 1, 1, 36))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2022, 12, 31, 1, 1, 36).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, -99999999999999999)
|
||||
|
||||
tdSql.query(f"select ts,mode(c3) from {dbname}.tb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2022, 12, 31, 1, 1, 36))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2022, 12, 31, 1, 1, 36).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, -999)
|
||||
|
||||
tdSql.query(f"select ts,mode(c4) from {dbname}.tb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2022, 12, 31, 1, 1, 36))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2022, 12, 31, 1, 1, 36).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, -99)
|
||||
|
||||
tdSql.query(f"select ts,mode(c5) from {dbname}.tb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2022, 12, 31, 1, 1, 36))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2022, 12, 31, 1, 1, 36).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, -9.99)
|
||||
|
||||
tdSql.query(f"select ts,mode(c6) from {dbname}.tb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2022, 12, 31, 1, 1, 36))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2022, 12, 31, 1, 1, 36).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, -1e+21)
|
||||
|
||||
tdSql.query(f"select ts,mode(c7) from {dbname}.tb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2022, 12, 31, 1, 1, 36))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2022, 12, 31, 1, 1, 36).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, True)
|
||||
|
||||
tdSql.query(f"select ts,mode(c8) from {dbname}.tb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2022, 12, 31, 1, 1, 36))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2022, 12, 31, 1, 1, 36).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, 'binary9')
|
||||
|
||||
tdSql.query(f"select ts,mode(c9) from {dbname}.tb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2022, 12, 31, 1, 1, 36))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2022, 12, 31, 1, 1, 36).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, 'nchar9')
|
||||
|
||||
tdSql.query(f"select ts,c3,c5,c8,mode(c1) from {dbname}.tb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2022, 12, 31, 1, 1, 36))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2022, 12, 31, 1, 1, 36).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, -999)
|
||||
tdSql.checkData(0, 2, -9.99)
|
||||
tdSql.checkData(0, 3, 'binary9')
|
||||
|
@ -128,61 +128,61 @@ class TDTestCase:
|
|||
tdSql.query(f"select ts,mode(c1) from {dbname}.stb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2020, 12, 11, 0, 0, 3))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2020, 12, 11, 0, 0, 3).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, 9)
|
||||
|
||||
tdSql.query(f"select ts,mode(c2) from {dbname}.stb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2020, 12, 11, 0, 0, 3))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2020, 12, 11, 0, 0, 3).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, -99999)
|
||||
|
||||
tdSql.query(f"select ts,mode(c3) from {dbname}.stb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2020, 12, 11, 0, 0, 3))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2020, 12, 11, 0, 0, 3).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, -999)
|
||||
|
||||
tdSql.query(f"select ts,mode(c4) from {dbname}.stb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2020, 12, 11, 0, 0, 2))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2020, 12, 11, 0, 0, 2).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, -99)
|
||||
|
||||
tdSql.query(f"select ts,mode(c5) from {dbname}.stb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2020, 12, 11, 0, 0, 3))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2020, 12, 11, 0, 0, 3).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, -9.99)
|
||||
|
||||
tdSql.query(f"select ts,mode(c6) from {dbname}.stb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2020, 12, 11, 0, 0, 3))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2020, 12, 11, 0, 0, 3).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, -99.99)
|
||||
|
||||
tdSql.query(f"select ts,mode(c7) from {dbname}.stb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2020, 12, 11, 0, 0, 3))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2020, 12, 11, 0, 0, 3).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, True)
|
||||
|
||||
tdSql.query(f"select ts,mode(c8) from {dbname}.stb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2020, 12, 11, 0, 0, 3))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2020, 12, 11, 0, 0, 3).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, 'binary9')
|
||||
|
||||
tdSql.query(f"select ts,mode(c9) from {dbname}.stb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2020, 12, 11, 0, 0, 3))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2020, 12, 11, 0, 0, 3).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, 'nchar9')
|
||||
|
||||
tdSql.query(f"select ts,mode(c1),c3,c5,c8 from {dbname}.stb")
|
||||
tdSql.checkRows(1)
|
||||
ts = tdSql.getData(0, 0)
|
||||
tdSql.checkEqual(ts, datetime.datetime(2020, 12, 11, 0, 0, 3))
|
||||
tdSql.checkEqual(ts.astimezone(datetime.timezone.utc), datetime.datetime(2020, 12, 11, 0, 0, 3).astimezone(datetime.timezone.utc))
|
||||
tdSql.checkData(0, 1, 9)
|
||||
tdSql.checkData(0, 2, -999)
|
||||
tdSql.checkData(0, 3, -9.99)
|
||||
|
|
|
@ -35,7 +35,10 @@ class TDTestCase:
|
|||
projPath = selfPath[:selfPath.find("tests")]
|
||||
|
||||
for root, dirs, files in os.walk(projPath):
|
||||
if ("taosd" in files):
|
||||
taosdFileName = "taosd"
|
||||
if platform.system().lower() == 'windows':
|
||||
taosdFileName = "taosd.exe"
|
||||
if (taosdFileName in files):
|
||||
rootRealPath = os.path.dirname(os.path.realpath(root))
|
||||
if ("packaging" not in rootRealPath):
|
||||
buildPath = root[:len(root)-len("/build/bin")]
|
||||
|
@ -52,7 +55,10 @@ class TDTestCase:
|
|||
tdLog.info("taosd found in %s" % buildPath)
|
||||
binPath = buildPath+ "/build/bin/"
|
||||
|
||||
os.system("%staosBenchmark -d %s -t %d -n %d -O %d -a %d -b float,double,nchar\(200\),binary\(50\) -T 50 -y " % (binPath,dbname,tables,per_table_num,order,replica))
|
||||
cmd = "%staosBenchmark -d %s -t %d -n %d -O %d -a %d -b float,double,nchar\(200\),binary\(50\) -T 50 -y " % (binPath,dbname,tables,per_table_num,order,replica)
|
||||
if platform.system().lower() == 'windows':
|
||||
cmd = "%staosBenchmark -d %s -t %d -n %d -O %d -a %d -b float,double,nchar(200),binary(50) -T 50 -y " % (binPath,dbname,tables,per_table_num,order,replica)
|
||||
os.system(cmd)
|
||||
|
||||
def sql_base(self,dbname):
|
||||
self.check_sub(dbname)
|
||||
|
|
|
@ -292,9 +292,9 @@ class TDTestCase:
|
|||
maxQnode=tdSql.getData(0,0)
|
||||
tdSql.query("select min(c1) from stb11;")
|
||||
minQnode=tdSql.getData(0,0)
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
unionQnode=tdSql.queryResult
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
unionallQnode=tdSql.queryResult
|
||||
|
||||
# tdSql.query("select * from information_schema.ins_qnodes;")
|
||||
|
@ -306,10 +306,10 @@ class TDTestCase:
|
|||
tdSql.checkData(0, 0, "%s"%maxQnode)
|
||||
tdSql.query("select min(c1) from stb11;")
|
||||
tdSql.checkData(0, 0, "%s"%minQnode)
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
unionVnode=tdSql.queryResult
|
||||
assert unionQnode == unionVnode
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
unionallVnode=tdSql.queryResult
|
||||
assert unionallQnode == unionallVnode
|
||||
|
||||
|
@ -340,9 +340,9 @@ class TDTestCase:
|
|||
assert maxQnode==tdSql.getData(0,0)
|
||||
tdSql.query("select min(c1) from stb11;")
|
||||
assert minQnode==tdSql.getData(0,0)
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
assert unionQnode==tdSql.queryResult
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
assert unionallQnode==tdSql.queryResult
|
||||
|
||||
# tdSql.query("select * from information_schema.ins_qnodes;")
|
||||
|
@ -354,8 +354,8 @@ class TDTestCase:
|
|||
assert maxQnode==tdSql.getData(0,0)
|
||||
tdSql.query("select min(c1) from stb11;")
|
||||
assert minQnode==tdSql.getData(0,0)
|
||||
tdSql.error("select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.error("select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.error("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
tdSql.error("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
|
||||
# tdSql.execute("create qnode on dnode %s"%dnodeId)
|
||||
|
||||
|
@ -387,9 +387,9 @@ class TDTestCase:
|
|||
assert maxQnode==tdSql.getData(0,0)
|
||||
tdSql.query("select min(c1) from stb11;")
|
||||
assert minQnode==tdSql.getData(0,0)
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
assert unionQnode==tdSql.queryResult
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
assert unionallQnode==tdSql.queryResult
|
||||
|
||||
queryPolicy=1
|
||||
|
@ -412,9 +412,9 @@ class TDTestCase:
|
|||
assert maxQnode==tdSql.getData(0,0)
|
||||
tdSql.query("select min(c1) from stb11;")
|
||||
assert minQnode==tdSql.getData(0,0)
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
assert unionQnode==tdSql.queryResult
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
assert unionallQnode==tdSql.queryResult
|
||||
|
||||
# test case : queryPolicy = 2
|
||||
|
@ -443,8 +443,8 @@ class TDTestCase:
|
|||
tdSql.execute("use db1;")
|
||||
tdSql.error("select max(c1) from stb10;")
|
||||
tdSql.error("select min(c1) from stb11;")
|
||||
tdSql.error("select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.error("select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.error("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
tdSql.error("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
|
||||
tdSql.query("select max(c1) from stb10_0;")
|
||||
tdSql.query("select min(c1) from stb11_0;")
|
||||
|
@ -464,9 +464,9 @@ class TDTestCase:
|
|||
maxQnode=tdSql.getData(0,0)
|
||||
tdSql.query("select min(c1) from stb11;")
|
||||
minQnode=tdSql.getData(0,0)
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
unionQnode=tdSql.queryResult
|
||||
tdSql.query("select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.query("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
unionallQnode=tdSql.queryResult
|
||||
|
||||
# tdSql.query("select * from information_schema.ins_qnodes;")
|
||||
|
@ -478,8 +478,8 @@ class TDTestCase:
|
|||
|
||||
tdSql.error("select max(c1) from stb10;")
|
||||
tdSql.error("select min(c1) from stb11;")
|
||||
tdSql.error("select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.error("select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000;")
|
||||
tdSql.error("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
tdSql.error("select c0,c1 from(select c0,c1 from stb11_1 where (c0>1000) union all select c0,c1 from stb11_1 where c0>2000) order by c0,c1;")
|
||||
|
||||
# run case
|
||||
def run(self):
|
||||
|
|
|
@ -18,7 +18,10 @@ class MyDnodes(TDDnodes):
|
|||
def __init__(self ,dnodes_lists):
|
||||
super(MyDnodes,self).__init__()
|
||||
self.dnodes = dnodes_lists # dnode must be TDDnode instance
|
||||
self.simDeployed = False
|
||||
if platform.system().lower() == 'windows':
|
||||
self.simDeployed = True
|
||||
else:
|
||||
self.simDeployed = False
|
||||
|
||||
class TDTestCase:
|
||||
noConn = True
|
||||
|
|
|
@ -19,7 +19,10 @@ class MyDnodes(TDDnodes):
|
|||
def __init__(self ,dnodes_lists):
|
||||
super(MyDnodes,self).__init__()
|
||||
self.dnodes = dnodes_lists # dnode must be TDDnode instance
|
||||
self.simDeployed = False
|
||||
if platform.system().lower() == 'windows':
|
||||
self.simDeployed = True
|
||||
else:
|
||||
self.simDeployed = False
|
||||
|
||||
class TDTestCase:
|
||||
|
||||
|
@ -111,6 +114,8 @@ class TDTestCase:
|
|||
dnode_first_host = dnode.cfgDict["firstEp"].split(":")[0]
|
||||
dnode_first_port = dnode.cfgDict["firstEp"].split(":")[-1]
|
||||
cmd = f" taos -h {dnode_first_host} -P {dnode_first_port} -s ' create dnode \"{dnode_id} \" ' ;"
|
||||
if platform.system().lower() == 'windows':
|
||||
cmd = f" taos -h {dnode_first_host} -P {dnode_first_port} -s \"create dnode \\\"{dnode_id}\\\""
|
||||
tdLog.debug(cmd)
|
||||
if os.system(cmd) != 0:
|
||||
raise Exception("failed to execute system command. cmd: %s" % cmd)
|
||||
|
|
|
@ -129,11 +129,16 @@ class TMQCom:
|
|||
|
||||
def stopTmqSimProcess(self, processorName):
|
||||
psCmd = "unset LD_PRELOAD; ps -ef|grep -w %s|grep -v grep | awk '{print $2}'"%(processorName)
|
||||
if platform.system().lower() == 'windows':
|
||||
psCmd = "ps -ef|grep -w %s|grep -v grep | awk '{print $2}'"%(processorName)
|
||||
processID = subprocess.check_output(psCmd, shell=True).decode("utf-8")
|
||||
onlyKillOnceWindows = 0
|
||||
while(processID):
|
||||
if not platform.system().lower() == 'windows' or (onlyKillOnceWindows == 0 and platform.system().lower() == 'windows'):
|
||||
killCmd = "unset LD_PRELOAD; kill -INT %s > /dev/null 2>&1" % processID
|
||||
if platform.system().lower() == 'windows':
|
||||
killCmd = "kill -INT %s > /dev/nul 2>&1" % processID
|
||||
else:
|
||||
killCmd = "unset LD_PRELOAD; kill -INT %s > /dev/null 2>&1" % processID
|
||||
os.system(killCmd)
|
||||
onlyKillOnceWindows = 1
|
||||
time.sleep(0.2)
|
||||
|
|
|
@ -128,7 +128,7 @@ class TDTestCase:
|
|||
ifManualCommit = 1
|
||||
keyList = 'group.id:cgrp1,\
|
||||
enable.auto.commit:true,\
|
||||
auto.commit.interval.ms:1000,\
|
||||
auto.commit.interval.ms:200,\
|
||||
auto.offset.reset:earliest'
|
||||
tmqCom.insertConsumerInfo(consumerId, expectrowcnt,topicList,keyList,ifcheckdata,ifManualCommit)
|
||||
|
||||
|
|
|
@ -0,0 +1,96 @@
|
|||
@echo off
|
||||
SETLOCAL EnableDelayedExpansion
|
||||
for /F "tokens=1,2 delims=#" %%a in ('"prompt #$H#$E# & echo on & for %%b in (1) do rem"') do ( set "DEL=%%a")
|
||||
set /a a=0
|
||||
if "%1" == "full" (
|
||||
echo Windows Taosd Full Test
|
||||
set /a exitNum=0
|
||||
del /Q /F failed.txt
|
||||
set caseFile="win-test-file"
|
||||
if not "%2" == "" (
|
||||
set caseFile="%2"
|
||||
)
|
||||
for /F "usebackq tokens=*" %%i in (!caseFile!) do (
|
||||
call :CheckSkipCase %%i
|
||||
if !skipCase! == false (
|
||||
set line=%%i
|
||||
if "!line:~,7!" == "python3" (
|
||||
set /a a+=1
|
||||
echo !a! Processing %%i
|
||||
call :GetTimeSeconds !time!
|
||||
set time1=!_timeTemp!
|
||||
echo Start at !time!
|
||||
call %%i ARG1 > result_!a!.txt 2>error_!a!.txt || set errorlevel=8
|
||||
if errorlevel 1 ( call :colorEcho 0c "failed" &echo. && set /a exitNum=8 && echo %%i >>failed.txt ) else ( call :colorEcho 0a "Success" &echo. )
|
||||
)
|
||||
)
|
||||
)
|
||||
exit /b !exitNum!
|
||||
)
|
||||
echo Windows Taosd Test
|
||||
for /F "usebackq tokens=*" %%i in (win-test-file) do (
|
||||
for /f "tokens=1* delims= " %%a in ("%%i") do if not "%%a" == "@REM" (
|
||||
set /a a+=1
|
||||
set timeNow=!time!
|
||||
echo !a! Processing %%i
|
||||
call :GetTimeSeconds !timeNow!
|
||||
set time1=!_timeTemp!
|
||||
echo Start at !timeNow!
|
||||
call %%i ARG1 > result_!a!.txt 2>error_!a!.txt || set errorlevel=8
|
||||
if errorlevel 1 ( call :colorEcho 0c "failed" &echo. && echo result: && cat result_!a!.txt && echo error: && cat error_!a!.txt && exit /b 8 ) else ( call :colorEcho 0a "Success" &echo. )
|
||||
)
|
||||
)
|
||||
@REM echo Linux Taosd Test
|
||||
@REM for /F "usebackq tokens=*" %%i in (simpletest.bat) do (
|
||||
@REM for /f "tokens=1* delims= " %%a in ("%%i") do if not "%%a" == "@REM" (
|
||||
@REM set /a a+=1
|
||||
@REM echo !a! Processing %%i
|
||||
@REM call :GetTimeSeconds !time!
|
||||
@REM set time1=!_timeTemp!
|
||||
@REM echo Start at !time!
|
||||
@REM call %%i ARG1 -m %1 > result_!a!.txt 2>error_!a!.txt
|
||||
@REM if errorlevel 1 ( call :colorEcho 0c "failed" &echo. && echo result: && cat result_!a!.txt && echo error: && cat error_!a!.txt && exit 8 ) else ( call :colorEcho 0a "Success" &echo. )
|
||||
@REM )
|
||||
@REM )
|
||||
exit /b
|
||||
|
||||
:colorEcho
|
||||
set timeNow=%time%
|
||||
call :GetTimeSeconds %timeNow%
|
||||
set time2=%_timeTemp%
|
||||
set /a interTime=%time2% - %time1%
|
||||
echo End at %timeNow% , cast %interTime%s
|
||||
echo off
|
||||
<nul set /p ".=%DEL%" > "%~2"
|
||||
findstr /v /a:%1 /R "^$" "%~2" nul
|
||||
del "%~2" > nul 2>&1i
|
||||
goto :eof
|
||||
|
||||
:GetTimeSeconds
|
||||
set tt=%1
|
||||
set tt=%tt:.= %
|
||||
set tt=%tt::= %
|
||||
set tt=%tt: 0= %
|
||||
set /a index=1
|
||||
for %%a in (%tt%) do (
|
||||
if !index! EQU 1 (
|
||||
set /a hh=%%a
|
||||
)^
|
||||
else if !index! EQU 2 (
|
||||
set /a mm=%%a
|
||||
|
||||
)^
|
||||
else if !index! EQU 3 (
|
||||
set /a ss=%%a
|
||||
)
|
||||
set /a index=index+1
|
||||
)
|
||||
set /a _timeTemp=(%hh%*60+%mm%)*60+%ss%
|
||||
goto :eof
|
||||
|
||||
:CheckSkipCase
|
||||
set skipCase=false
|
||||
if "%*" == "python3 ./test.py -f 1-insert/insertWithMoreVgroup.py" ( set skipCase=false )
|
||||
if "%*" == "python3 ./test.py -f 2-query/queryQnode.py" ( set skipCase=false )
|
||||
echo %* | grep "\-R" && set skipCase=true
|
||||
:goto eof
|
|
@ -291,9 +291,9 @@ if __name__ == "__main__":
|
|||
print(r)
|
||||
else:
|
||||
pass
|
||||
if restful:
|
||||
tAdapter.init(deployPath, masterIp)
|
||||
tAdapter.stop(force_kill=True)
|
||||
# if restful:
|
||||
tAdapter.init(deployPath, masterIp)
|
||||
tAdapter.stop(force_kill=True)
|
||||
|
||||
if dnodeNums == 1 :
|
||||
tdDnodes.deploy(1,updateCfgDict)
|
||||
|
@ -306,7 +306,7 @@ if __name__ == "__main__":
|
|||
if queryPolicy != 1:
|
||||
queryPolicy=int(queryPolicy)
|
||||
if restful:
|
||||
conn = taosrest.connect(url=f"http://{host}:6041")
|
||||
conn = taosrest.connect(url=f"http://{host}:6041",timezone="utc")
|
||||
else:
|
||||
conn = taos.connect(host,config=tdDnodes.getSimCfgPath())
|
||||
|
||||
|
@ -343,7 +343,7 @@ if __name__ == "__main__":
|
|||
if not restful:
|
||||
conn = taos.connect(host,config=tdDnodes.getSimCfgPath())
|
||||
else:
|
||||
conn = taosrest.connect(url=f"http://{host}:6041")
|
||||
conn = taosrest.connect(url=f"http://{host}:6041",timezone="utc")
|
||||
# tdLog.info(tdDnodes.getSimCfgPath(),host)
|
||||
if createDnodeNums == 1:
|
||||
createDnodeNums=dnodeNums
|
||||
|
@ -359,7 +359,7 @@ if __name__ == "__main__":
|
|||
if queryPolicy != 1:
|
||||
queryPolicy=int(queryPolicy)
|
||||
if restful:
|
||||
conn = taosrest.connect(url=f"http://{host}:6041")
|
||||
conn = taosrest.connect(url=f"http://{host}:6041",timezone="utc")
|
||||
else:
|
||||
conn = taos.connect(host,config=tdDnodes.getSimCfgPath())
|
||||
|
||||
|
@ -382,11 +382,44 @@ if __name__ == "__main__":
|
|||
if not restful:
|
||||
conn = taos.connect(host="%s"%(host), config=tdDnodes.sim.getCfgDir())
|
||||
else:
|
||||
conn = taosrest.connect(url=f"http://{host}:6041")
|
||||
if is_test_framework:
|
||||
tdCases.runOneWindows(conn, fileName)
|
||||
conn = taosrest.connect(url=f"http://{host}:6041",timezone="utc")
|
||||
|
||||
if testCluster:
|
||||
tdLog.info("Procedures for testing cluster")
|
||||
if fileName == "all":
|
||||
tdCases.runAllCluster()
|
||||
else:
|
||||
tdCases.runOneCluster(fileName)
|
||||
else:
|
||||
tdCases.runAllWindows(conn)
|
||||
tdLog.info("Procedures for testing self-deployment")
|
||||
if not restful:
|
||||
conn = taos.connect(host,config=tdDnodes.getSimCfgPath())
|
||||
else:
|
||||
conn = taosrest.connect(url=f"http://{host}:6041",timezone="utc")
|
||||
|
||||
if fileName == "all":
|
||||
tdCases.runAllWindows(conn)
|
||||
else:
|
||||
tdCases.runOneWindows(conn, fileName, replicaVar)
|
||||
|
||||
if restart:
|
||||
if fileName == "all":
|
||||
tdLog.info("not need to query ")
|
||||
else:
|
||||
sp = fileName.rsplit(".", 1)
|
||||
if len(sp) == 2 and sp[1] == "py":
|
||||
tdDnodes.stopAll()
|
||||
tdDnodes.start(1)
|
||||
time.sleep(1)
|
||||
if not restful:
|
||||
conn = taos.connect( host, config=tdDnodes.getSimCfgPath())
|
||||
else:
|
||||
conn = taosrest.connect(url=f"http://{host}:6041",timezone="utc")
|
||||
tdLog.info("Procedures for tdengine deployed in %s" % (host))
|
||||
tdLog.info("query test after taosd restart")
|
||||
tdCases.runOneWindows(conn, sp[0] + "_" + "restart.py", replicaVar)
|
||||
else:
|
||||
tdLog.info("not need to query")
|
||||
else:
|
||||
tdDnodes.setKillValgrind(killValgrind)
|
||||
tdDnodes.init(deployPath, masterIp)
|
||||
|
@ -431,7 +464,7 @@ if __name__ == "__main__":
|
|||
if not restful:
|
||||
conn = taos.connect(host,config=tdDnodes.getSimCfgPath())
|
||||
else:
|
||||
conn = taosrest.connect(url=f"http://{host}:6041")
|
||||
conn = taosrest.connect(url=f"http://{host}:6041",timezone="utc")
|
||||
# tdSql.init(conn.cursor())
|
||||
# tdSql.execute("create qnode on dnode 1")
|
||||
# tdSql.execute('alter local "queryPolicy" "%d"'%queryPolicy)
|
||||
|
@ -479,7 +512,7 @@ if __name__ == "__main__":
|
|||
if not restful:
|
||||
conn = taos.connect(host,config=tdDnodes.getSimCfgPath())
|
||||
else:
|
||||
conn = taosrest.connect(url=f"http://{host}:6041")
|
||||
conn = taosrest.connect(url=f"http://{host}:6041",timezone="utc")
|
||||
print(tdDnodes.getSimCfgPath(),host)
|
||||
if createDnodeNums == 1:
|
||||
createDnodeNums=dnodeNums
|
||||
|
@ -497,7 +530,7 @@ if __name__ == "__main__":
|
|||
if queryPolicy != 1:
|
||||
queryPolicy=int(queryPolicy)
|
||||
if restful:
|
||||
conn = taosrest.connect(url=f"http://{host}:6041")
|
||||
conn = taosrest.connect(url=f"http://{host}:6041",timezone="utc")
|
||||
else:
|
||||
conn = taos.connect(host,config=tdDnodes.getSimCfgPath())
|
||||
|
||||
|
@ -526,7 +559,7 @@ if __name__ == "__main__":
|
|||
if not restful:
|
||||
conn = taos.connect(host,config=tdDnodes.getSimCfgPath())
|
||||
else:
|
||||
conn = taosrest.connect(url=f"http://{host}:6041")
|
||||
conn = taosrest.connect(url=f"http://{host}:6041",timezone="utc")
|
||||
|
||||
if fileName == "all":
|
||||
tdCases.runAllLinux(conn)
|
||||
|
@ -545,7 +578,7 @@ if __name__ == "__main__":
|
|||
if not restful:
|
||||
conn = taos.connect( host, config=tdDnodes.getSimCfgPath())
|
||||
else:
|
||||
conn = taosrest.connect(url=f"http://{host}:6041")
|
||||
conn = taosrest.connect(url=f"http://{host}:6041",timezone="utc")
|
||||
tdLog.info("Procedures for tdengine deployed in %s" % (host))
|
||||
tdLog.info("query test after taosd restart")
|
||||
tdCases.runOneLinux(conn, sp[0] + "_" + "restart.py", replicaVar)
|
||||
|
|
|
@ -0,0 +1,637 @@
|
|||
python3 ./test.py -f 1-insert/database_pre_suf.py
|
||||
python3 ./test.py -f 0-others/balance_vgroups_r1.py -N 6
|
||||
python3 ./test.py -f 0-others/taosShell.py
|
||||
python3 ./test.py -f 0-others/taosShellError.py
|
||||
python3 ./test.py -f 0-others/taosShellNetChk.py
|
||||
python3 ./test.py -f 0-others/telemetry.py
|
||||
python3 ./test.py -f 0-others/backquote_check.py
|
||||
python3 ./test.py -f 0-others/taosdMonitor.py
|
||||
python3 ./test.py -f 0-others/taosdShell.py -N 5 -M 3 -Q 3
|
||||
python3 ./test.py -f 0-others/cachemodel.py
|
||||
python3 ./test.py -f 0-others/sysinfo.py
|
||||
python3 ./test.py -f 0-others/user_control.py
|
||||
python3 ./test.py -f 0-others/user_manage.py
|
||||
python3 ./test.py -f 0-others/fsync.py
|
||||
python3 ./test.py -f 0-others/compatibility.py
|
||||
python3 ./test.py -f 0-others/tag_index_basic.py
|
||||
# python3 ./test.py -f 1-insert/alter_database.py
|
||||
python3 ./test.py -f 1-insert/influxdb_line_taosc_insert.py
|
||||
python3 ./test.py -f 1-insert/opentsdb_telnet_line_taosc_insert.py
|
||||
python3 ./test.py -f 1-insert/opentsdb_json_taosc_insert.py
|
||||
python3 ./test.py -f 1-insert/test_stmt_muti_insert_query.py
|
||||
python3 ./test.py -f 1-insert/test_stmt_set_tbname_tag.py
|
||||
python3 ./test.py -f 1-insert/alter_stable.py
|
||||
python3 ./test.py -f 1-insert/alter_table.py
|
||||
python3 ./test.py -f 1-insert/boundary.py
|
||||
python3 ./test.py -f 1-insert/insertWithMoreVgroup.py
|
||||
python3 ./test.py -f 1-insert/table_comment.py
|
||||
python3 ./test.py -f 1-insert/time_range_wise.py
|
||||
python3 ./test.py -f 1-insert/block_wise.py
|
||||
python3 ./test.py -f 1-insert/create_retentions.py
|
||||
python3 ./test.py -f 1-insert/mutil_stage.py
|
||||
python3 ./test.py -f 1-insert/table_param_ttl.py
|
||||
python3 ./test.py -f 1-insert/table_param_ttl.py -R
|
||||
python3 ./test.py -f 1-insert/update_data_muti_rows.py
|
||||
python3 ./test.py -f 1-insert/db_tb_name_check.py
|
||||
python3 ./test.py -f 1-insert/InsertFuturets.py
|
||||
python3 ./test.py -f 0-others/show.py
|
||||
python3 ./test.py -f 0-others/information_schema.py
|
||||
python3 ./test.py -f 2-query/abs.py
|
||||
python3 ./test.py -f 2-query/abs.py -R
|
||||
python3 ./test.py -f 2-query/and_or_for_byte.py
|
||||
python3 ./test.py -f 2-query/and_or_for_byte.py -R
|
||||
python3 ./test.py -f 2-query/apercentile.py
|
||||
python3 ./test.py -f 2-query/apercentile.py -R
|
||||
python3 ./test.py -f 2-query/arccos.py
|
||||
python3 ./test.py -f 2-query/arccos.py -R
|
||||
python3 ./test.py -f 2-query/arcsin.py
|
||||
python3 ./test.py -f 2-query/arcsin.py -R
|
||||
python3 ./test.py -f 2-query/arctan.py
|
||||
python3 ./test.py -f 2-query/arctan.py -R
|
||||
python3 ./test.py -f 2-query/avg.py
|
||||
python3 ./test.py -f 2-query/avg.py -R
|
||||
python3 ./test.py -f 2-query/between.py
|
||||
python3 ./test.py -f 2-query/between.py -R
|
||||
python3 ./test.py -f 2-query/bottom.py
|
||||
python3 ./test.py -f 2-query/bottom.py -R
|
||||
python3 ./test.py -f 2-query/cast.py
|
||||
python3 ./test.py -f 2-query/cast.py -R
|
||||
python3 ./test.py -f 2-query/ceil.py
|
||||
python3 ./test.py -f 2-query/ceil.py -R
|
||||
python3 ./test.py -f 2-query/char_length.py
|
||||
python3 ./test.py -f 2-query/char_length.py -R
|
||||
python3 ./test.py -f 2-query/check_tsdb.py
|
||||
python3 ./test.py -f 2-query/check_tsdb.py -R
|
||||
python3 ./test.py -f 2-query/concat.py
|
||||
python3 ./test.py -f 2-query/concat.py -R
|
||||
python3 ./test.py -f 2-query/concat_ws.py
|
||||
python3 ./test.py -f 2-query/concat_ws.py -R
|
||||
python3 ./test.py -f 2-query/concat_ws2.py
|
||||
python3 ./test.py -f 2-query/concat_ws2.py -R
|
||||
python3 ./test.py -f 2-query/cos.py
|
||||
python3 ./test.py -f 2-query/cos.py -R
|
||||
python3 ./test.py -f 2-query/count_partition.py
|
||||
python3 ./test.py -f 2-query/count_partition.py -R
|
||||
python3 ./test.py -f 2-query/count.py
|
||||
python3 ./test.py -f 2-query/count.py -R
|
||||
python3 ./test.py -f 2-query/countAlwaysReturnValue.py
|
||||
python3 ./test.py -f 2-query/countAlwaysReturnValue.py -R
|
||||
python3 ./test.py -f 2-query/db.py
|
||||
python3 ./test.py -f 2-query/db.py -N 3 -n 3 -R
|
||||
python3 ./test.py -f 2-query/diff.py
|
||||
python3 ./test.py -f 2-query/diff.py -R
|
||||
python3 ./test.py -f 2-query/distinct.py
|
||||
python3 ./test.py -f 2-query/distinct.py -R
|
||||
python3 ./test.py -f 2-query/distribute_agg_apercentile.py
|
||||
python3 ./test.py -f 2-query/distribute_agg_apercentile.py -R
|
||||
python3 ./test.py -f 2-query/distribute_agg_avg.py
|
||||
python3 ./test.py -f 2-query/distribute_agg_avg.py -R
|
||||
python3 ./test.py -f 2-query/distribute_agg_count.py
|
||||
python3 ./test.py -f 2-query/distribute_agg_count.py -R
|
||||
python3 ./test.py -f 2-query/distribute_agg_max.py
|
||||
python3 ./test.py -f 2-query/distribute_agg_max.py -R
|
||||
python3 ./test.py -f 2-query/distribute_agg_min.py
|
||||
python3 ./test.py -f 2-query/distribute_agg_min.py -R
|
||||
python3 ./test.py -f 2-query/distribute_agg_spread.py
|
||||
python3 ./test.py -f 2-query/distribute_agg_spread.py -R
|
||||
python3 ./test.py -f 2-query/distribute_agg_stddev.py
|
||||
python3 ./test.py -f 2-query/distribute_agg_stddev.py -R
|
||||
python3 ./test.py -f 2-query/distribute_agg_sum.py
|
||||
python3 ./test.py -f 2-query/distribute_agg_sum.py -R
|
||||
python3 ./test.py -f 2-query/explain.py
|
||||
python3 ./test.py -f 2-query/explain.py -R
|
||||
python3 ./test.py -f 2-query/first.py
|
||||
python3 ./test.py -f 2-query/first.py -R
|
||||
python3 ./test.py -f 2-query/floor.py
|
||||
python3 ./test.py -f 2-query/floor.py -R
|
||||
python3 ./test.py -f 2-query/function_null.py
|
||||
python3 ./test.py -f 2-query/function_null.py -R
|
||||
python3 ./test.py -f 2-query/function_stateduration.py
|
||||
python3 ./test.py -f 2-query/function_stateduration.py -R
|
||||
python3 ./test.py -f 2-query/histogram.py
|
||||
python3 ./test.py -f 2-query/histogram.py -R
|
||||
python3 ./test.py -f 2-query/hyperloglog.py
|
||||
python3 ./test.py -f 2-query/hyperloglog.py -R
|
||||
python3 ./test.py -f 2-query/interp.py
|
||||
python3 ./test.py -f 2-query/interp.py -R
|
||||
python3 ./test.py -f 2-query/irate.py
|
||||
python3 ./test.py -f 2-query/irate.py -R
|
||||
python3 ./test.py -f 2-query/join.py
|
||||
python3 ./test.py -f 2-query/join.py -R
|
||||
python3 ./test.py -f 2-query/last_row.py
|
||||
python3 ./test.py -f 2-query/last_row.py -R
|
||||
python3 ./test.py -f 2-query/last.py
|
||||
python3 ./test.py -f 2-query/last.py -R
|
||||
python3 ./test.py -f 2-query/leastsquares.py
|
||||
python3 ./test.py -f 2-query/leastsquares.py -R
|
||||
python3 ./test.py -f 2-query/length.py
|
||||
python3 ./test.py -f 2-query/length.py -R
|
||||
python3 ./test.py -f 2-query/limit.py
|
||||
python3 ./test.py -f 2-query/log.py
|
||||
python3 ./test.py -f 2-query/log.py -R
|
||||
python3 ./test.py -f 2-query/lower.py
|
||||
python3 ./test.py -f 2-query/lower.py -R
|
||||
python3 ./test.py -f 2-query/ltrim.py
|
||||
python3 ./test.py -f 2-query/ltrim.py -R
|
||||
python3 ./test.py -f 2-query/mavg.py
|
||||
python3 ./test.py -f 2-query/mavg.py -R
|
||||
python3 ./test.py -f 2-query/max_partition.py
|
||||
python3 ./test.py -f 2-query/max_partition.py -R
|
||||
python3 ./test.py -f 2-query/max_min_last_interval.py
|
||||
python3 ./test.py -f 2-query/max.py
|
||||
python3 ./test.py -f 2-query/max.py -R
|
||||
python3 ./test.py -f 2-query/min.py
|
||||
python3 ./test.py -f 2-query/min.py -R
|
||||
python3 ./test.py -f 2-query/mode.py
|
||||
python3 ./test.py -f 2-query/mode.py -R
|
||||
python3 ./test.py -f 2-query/Now.py
|
||||
python3 ./test.py -f 2-query/Now.py -R
|
||||
python3 ./test.py -f 2-query/percentile.py
|
||||
python3 ./test.py -f 2-query/percentile.py -R
|
||||
python3 ./test.py -f 2-query/pow.py
|
||||
python3 ./test.py -f 2-query/pow.py -R
|
||||
python3 ./test.py -f 2-query/query_cols_tags_and_or.py
|
||||
python3 ./test.py -f 2-query/query_cols_tags_and_or.py -R
|
||||
python3 ./test.py -f 2-query/round.py
|
||||
python3 ./test.py -f 2-query/round.py -R
|
||||
python3 ./test.py -f 2-query/rtrim.py
|
||||
python3 ./test.py -f 2-query/rtrim.py -R
|
||||
python3 ./test.py -f 2-query/sample.py
|
||||
python3 ./test.py -f 2-query/sample.py -R
|
||||
python3 ./test.py -f 2-query/sin.py
|
||||
python3 ./test.py -f 2-query/sin.py -R
|
||||
python3 ./test.py -f 2-query/smaTest.py
|
||||
python3 ./test.py -f 2-query/smaTest.py -R
|
||||
python3 ./test.py -f 2-query/sml.py
|
||||
python3 ./test.py -f 2-query/sml.py -R
|
||||
python3 ./test.py -f 2-query/spread.py
|
||||
python3 ./test.py -f 2-query/spread.py -R
|
||||
python3 ./test.py -f 2-query/sqrt.py
|
||||
python3 ./test.py -f 2-query/sqrt.py -R
|
||||
python3 ./test.py -f 2-query/statecount.py
|
||||
python3 ./test.py -f 2-query/statecount.py -R
|
||||
python3 ./test.py -f 2-query/stateduration.py
|
||||
python3 ./test.py -f 2-query/stateduration.py -R
|
||||
python3 ./test.py -f 2-query/substr.py
|
||||
python3 ./test.py -f 2-query/substr.py -R
|
||||
python3 ./test.py -f 2-query/sum.py
|
||||
python3 ./test.py -f 2-query/sum.py -R
|
||||
python3 ./test.py -f 2-query/tail.py
|
||||
python3 ./test.py -f 2-query/tail.py -R
|
||||
python3 ./test.py -f 2-query/tan.py
|
||||
python3 ./test.py -f 2-query/tan.py -R
|
||||
python3 ./test.py -f 2-query/Timediff.py
|
||||
python3 ./test.py -f 2-query/Timediff.py -R
|
||||
python3 ./test.py -f 2-query/timetruncate.py
|
||||
python3 ./test.py -f 2-query/timetruncate.py -R
|
||||
python3 ./test.py -f 2-query/timezone.py
|
||||
python3 ./test.py -f 2-query/timezone.py -R
|
||||
python3 ./test.py -f 2-query/To_iso8601.py
|
||||
python3 ./test.py -f 2-query/To_iso8601.py -R
|
||||
python3 ./test.py -f 2-query/To_unixtimestamp.py
|
||||
python3 ./test.py -f 2-query/To_unixtimestamp.py -R
|
||||
python3 ./test.py -f 2-query/Today.py
|
||||
python3 ./test.py -f 2-query/Today.py -R
|
||||
python3 ./test.py -f 2-query/top.py
|
||||
python3 ./test.py -f 2-query/top.py -R
|
||||
python3 ./test.py -f 2-query/tsbsQuery.py
|
||||
python3 ./test.py -f 2-query/tsbsQuery.py -R
|
||||
python3 ./test.py -f 2-query/ttl_comment.py
|
||||
python3 ./test.py -f 2-query/ttl_comment.py -R
|
||||
python3 ./test.py -f 2-query/twa.py
|
||||
python3 ./test.py -f 2-query/twa.py -R
|
||||
python3 ./test.py -f 2-query/union.py
|
||||
python3 ./test.py -f 2-query/union.py -R
|
||||
python3 ./test.py -f 2-query/unique.py
|
||||
python3 ./test.py -f 2-query/unique.py -R
|
||||
python3 ./test.py -f 2-query/upper.py
|
||||
python3 ./test.py -f 2-query/upper.py -R
|
||||
python3 ./test.py -f 2-query/varchar.py
|
||||
python3 ./test.py -f 2-query/varchar.py -R
|
||||
python3 ./test.py -f 2-query/case_when.py
|
||||
python3 ./test.py -f 2-query/case_when.py -R
|
||||
python3 ./test.py -f 2-query/blockSMA.py
|
||||
python3 ./test.py -f 2-query/blockSMA.py -R
|
||||
python3 ./test.py -f 1-insert/update_data.py
|
||||
python3 ./test.py -f 1-insert/tb_100w_data_order.py
|
||||
python3 ./test.py -f 1-insert/delete_stable.py
|
||||
python3 ./test.py -f 1-insert/delete_childtable.py
|
||||
python3 ./test.py -f 1-insert/delete_normaltable.py
|
||||
python3 ./test.py -f 1-insert/keep_expired.py
|
||||
python3 ./test.py -f 1-insert/drop.py
|
||||
python3 ./test.py -f 1-insert/drop.py -N 3 -M 3 -i False -n 3
|
||||
python3 ./test.py -f 2-query/join2.py
|
||||
python3 ./test.py -f 2-query/union1.py
|
||||
python3 ./test.py -f 2-query/concat2.py
|
||||
python3 ./test.py -f 2-query/json_tag.py
|
||||
python3 ./test.py -f 2-query/nestedQuery.py
|
||||
python3 ./test.py -f 2-query/nestedQueryInterval.py
|
||||
python3 ./test.py -f 2-query/nestedQuery_str.py
|
||||
python3 ./test.py -f 2-query/nestedQuery_math.py
|
||||
python3 ./test.py -f 2-query/nestedQuery_time.py
|
||||
python3 ./test.py -f 2-query/stablity.py
|
||||
python3 ./test.py -f 2-query/stablity_1.py
|
||||
python3 ./test.py -f 2-query/elapsed.py
|
||||
python3 ./test.py -f 2-query/csum.py
|
||||
python3 ./test.py -f 2-query/function_diff.py
|
||||
python3 ./test.py -f 2-query/tagFilter.py
|
||||
python3 ./test.py -f 2-query/queryQnode.py
|
||||
python3 ./test.py -f 6-cluster/5dnode1mnode.py
|
||||
python3 ./test.py -f 6-cluster/5dnode2mnode.py -N 5
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeStop.py -N 5 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeStop.py -N 5 -M 3 -i False
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeStop2Follower.py -N 5 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeStop2Follower.py -N 5 -M 3 -i False
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeStopLoop.py -N 5 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopDnodeCreateDb.py -N 6 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopDnodeCreateDb.py -N 6 -M 3 -n 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopMnodeCreateDb.py -N 6 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopMnodeCreateDb.py -N 6 -M 3 -n 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopVnodeCreateDb.py -N 6 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopVnodeCreateDb.py -N 6 -M 3 -n 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopDnodeModifyMeta.py -N 6 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopMnodeModifyMeta.py -N 6 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopDnodeCreateStb.py -N 6 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopDnodeCreateStb.py -N 6 -M 3 -n 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopMnodeCreateStb.py -N 6 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopMnodeCreateStb.py -N 6 -M 3 -n 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopVnodeCreateStb.py -N 6 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeSep1VnodeStopVnodeCreateStb.py -N 6 -M 3 -n 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeRestartDnodeInsertData.py -N 6 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeRestartDnodeInsertData.py -N 6 -M 3 -n 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeAdd1Ddnoe.py -N 7 -M 3 -C 6
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeAdd1Ddnoe.py -N 7 -M 3 -C 6 -n 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeRecreateMnode.py -N 5 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeStopFollowerLeader.py -N 5 -M 3
|
||||
python3 ./test.py -f 6-cluster/5dnode3mnodeStop2Follower.py -N 5 -M 3
|
||||
python3 ./test.py -f 6-cluster/vnode/4dnode1mnode_basic_createDb_replica1.py -N 4 -M 1
|
||||
python3 ./test.py -f 6-cluster/vnode/4dnode1mnode_basic_replica1_insertdatas.py -N 4 -M 1
|
||||
python3 ./test.py -f 6-cluster/vnode/4dnode1mnode_basic_replica1_insertdatas_querys.py -N 4 -M 1
|
||||
python3 ./test.py -f 6-cluster/vnode/4dnode1mnode_basic_replica3_insertdatas.py -N 4 -M 1
|
||||
python3 ./test.py -f 6-cluster/vnode/4dnode1mnode_basic_replica3_insertdatas_querys.py -N 4 -M 1
|
||||
python3 ./test.py -f 6-cluster/vnode/4dnode1mnode_basic_replica3_vgroups.py -N 4 -M 1
|
||||
python3 ./test.py -f 7-tmq/create_wrong_topic.py
|
||||
python3 ./test.py -f 7-tmq/dropDbR3ConflictTransaction.py -N 3
|
||||
python3 ./test.py -f 7-tmq/basic5.py
|
||||
python3 ./test.py -f 7-tmq/subscribeDb.py -N 3 -n 3
|
||||
python3 ./test.py -f 7-tmq/subscribeDb0.py -N 3 -n 3
|
||||
python3 ./test.py -f 7-tmq/subscribeDb1.py
|
||||
python3 ./test.py -f 7-tmq/subscribeDb2.py
|
||||
python3 ./test.py -f 7-tmq/subscribeDb3.py
|
||||
python3 ./test.py -f 7-tmq/subscribeDb4.py
|
||||
python3 ./test.py -f 7-tmq/subscribeStb.py
|
||||
python3 ./test.py -f 7-tmq/subscribeStb0.py
|
||||
python3 ./test.py -f 7-tmq/subscribeStb1.py
|
||||
python3 ./test.py -f 7-tmq/subscribeStb2.py
|
||||
python3 ./test.py -f 7-tmq/subscribeStb3.py
|
||||
python3 ./test.py -f 7-tmq/subscribeStb4.py
|
||||
python3 ./test.py -f 7-tmq/db.py
|
||||
python3 ./test.py -f 7-tmq/tmqError.py
|
||||
python3 ./test.py -f 7-tmq/schema.py
|
||||
python3 ./test.py -f 7-tmq/stbFilter.py
|
||||
python3 ./test.py -f 7-tmq/tmqCheckData.py
|
||||
python3 ./test.py -f 7-tmq/tmqCheckData1.py
|
||||
python3 ./test.py -f 7-tmq/tmqConsumerGroup.py
|
||||
python3 ./test.py -f 7-tmq/tmqShow.py
|
||||
python3 ./test.py -f 7-tmq/tmqAlterSchema.py
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb.py -N 3 -n 3
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb1.py -N 3 -n 3
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb-mutilVg.py
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb1-mutilVg.py
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb-1ctb.py
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb1-1ctb.py
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb-1ctb-funcNFilter.py
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb-mutilVg-mutilCtb-funcNFilter.py
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb-mutilVg-mutilCtb.py
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb1-1ctb-funcNFilter.py
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb1-mutilVg-mutilCtb-funcNFilter.py
|
||||
python3 ./test.py -f 7-tmq/tmqConsFromTsdb1-mutilVg-mutilCtb.py
|
||||
python3 ./test.py -f 7-tmq/tmqAutoCreateTbl.py
|
||||
python3 ./test.py -f 7-tmq/tmqDnodeRestart.py
|
||||
python3 ./test.py -f 7-tmq/tmqDnodeRestart1.py
|
||||
python3 ./test.py -f 7-tmq/tmqUpdate-1ctb.py
|
||||
python3 ./test.py -f 7-tmq/tmqUpdateWithConsume.py -N 3 -n 3
|
||||
python3 ./test.py -f 7-tmq/tmqUpdate-multiCtb-snapshot0.py
|
||||
python3 ./test.py -f 7-tmq/tmqUpdate-multiCtb-snapshot1.py
|
||||
python3 ./test.py -f 7-tmq/tmqDelete-1ctb.py
|
||||
python3 ./test.py -f 7-tmq/tmqDelete-multiCtb.py -N 3 -n 3
|
||||
python3 ./test.py -f 7-tmq/tmqDropStb.py
|
||||
python3 ./test.py -f 7-tmq/tmqDropStbCtb.py
|
||||
python3 ./test.py -f 7-tmq/tmqDropNtb-snapshot0.py
|
||||
python3 ./test.py -f 7-tmq/tmqDropNtb-snapshot1.py
|
||||
python3 ./test.py -f 7-tmq/stbTagFilter-1ctb.py
|
||||
python3 ./test.py -f 7-tmq/dataFromTsdbNWal.py
|
||||
python3 ./test.py -f 7-tmq/dataFromTsdbNWal-multiCtb.py
|
||||
python3 ./test.py -f 7-tmq/tmq_taosx.py
|
||||
python3 ./test.py -f 7-tmq/stbTagFilter-multiCtb.py
|
||||
python3 ./test.py -f 99-TDcase/TD-19201.py
|
||||
python3 ./test.py -f 99-TDcase/TD-21561.py
|
||||
python3 ./test.py -f 7-tmq/tmqSubscribeStb-r3.py -N 5
|
||||
python3 ./test.py -f 7-tmq/tmq3mnodeSwitch.py -N 6 -M 3
|
||||
python3 ./test.py -f 7-tmq/tmq3mnodeSwitch.py -N 6 -M 3 -n 3
|
||||
python3 ./test.py -f 2-query/between.py -Q 2
|
||||
python3 ./test.py -f 2-query/distinct.py -Q 2
|
||||
python3 ./test.py -f 2-query/varchar.py -Q 2
|
||||
python3 ./test.py -f 2-query/ltrim.py -Q 2
|
||||
python3 ./test.py -f 2-query/rtrim.py -Q 2
|
||||
python3 ./test.py -f 2-query/length.py -Q 2
|
||||
python3 ./test.py -f 2-query/char_length.py -Q 2
|
||||
python3 ./test.py -f 2-query/upper.py -Q 2
|
||||
python3 ./test.py -f 2-query/lower.py -Q 2
|
||||
python3 ./test.py -f 2-query/join.py -Q 2
|
||||
python3 ./test.py -f 2-query/join2.py -Q 2
|
||||
python3 ./test.py -f 2-query/cast.py -Q 2
|
||||
python3 ./test.py -f 2-query/substr.py -Q 2
|
||||
python3 ./test.py -f 2-query/union.py -Q 2
|
||||
python3 ./test.py -f 2-query/union1.py -Q 2
|
||||
python3 ./test.py -f 2-query/concat.py -Q 2
|
||||
python3 ./test.py -f 2-query/concat2.py -Q 2
|
||||
python3 ./test.py -f 2-query/concat_ws.py -Q 2
|
||||
python3 ./test.py -f 2-query/concat_ws2.py -Q 2
|
||||
python3 ./test.py -f 2-query/check_tsdb.py -Q 2
|
||||
python3 ./test.py -f 2-query/spread.py -Q 2
|
||||
python3 ./test.py -f 2-query/hyperloglog.py -Q 2
|
||||
python3 ./test.py -f 2-query/explain.py -Q 2
|
||||
python3 ./test.py -f 2-query/leastsquares.py -Q 2
|
||||
python3 ./test.py -f 2-query/timezone.py -Q 2
|
||||
python3 ./test.py -f 2-query/Now.py -Q 2
|
||||
python3 ./test.py -f 2-query/Today.py -Q 2
|
||||
python3 ./test.py -f 2-query/max.py -Q 2
|
||||
python3 ./test.py -f 2-query/min.py -Q 2
|
||||
python3 ./test.py -f 2-query/mode.py -Q 2
|
||||
python3 ./test.py -f 2-query/count.py -Q 2
|
||||
python3 ./test.py -f 2-query/countAlwaysReturnValue.py -Q 2
|
||||
python3 ./test.py -f 2-query/last.py -Q 2
|
||||
python3 ./test.py -f 2-query/first.py -Q 2
|
||||
python3 ./test.py -f 2-query/To_iso8601.py -Q 2
|
||||
python3 ./test.py -f 2-query/To_unixtimestamp.py -Q 2
|
||||
python3 ./test.py -f 2-query/timetruncate.py -Q 2
|
||||
python3 ./test.py -f 2-query/diff.py -Q 2
|
||||
python3 ./test.py -f 2-query/Timediff.py -Q 2
|
||||
python3 ./test.py -f 2-query/json_tag.py -Q 2
|
||||
python3 ./test.py -f 2-query/top.py -Q 2
|
||||
python3 ./test.py -f 2-query/bottom.py -Q 2
|
||||
python3 ./test.py -f 2-query/percentile.py -Q 2
|
||||
python3 ./test.py -f 2-query/apercentile.py -Q 2
|
||||
python3 ./test.py -f 2-query/abs.py -Q 2
|
||||
python3 ./test.py -f 2-query/ceil.py -Q 2
|
||||
python3 ./test.py -f 2-query/floor.py -Q 2
|
||||
python3 ./test.py -f 2-query/round.py -Q 2
|
||||
python3 ./test.py -f 2-query/log.py -Q 2
|
||||
python3 ./test.py -f 2-query/pow.py -Q 2
|
||||
python3 ./test.py -f 2-query/sqrt.py -Q 2
|
||||
python3 ./test.py -f 2-query/sin.py -Q 2
|
||||
python3 ./test.py -f 2-query/cos.py -Q 2
|
||||
python3 ./test.py -f 2-query/tan.py -Q 2
|
||||
python3 ./test.py -f 2-query/arcsin.py -Q 2
|
||||
python3 ./test.py -f 2-query/arccos.py -Q 2
|
||||
python3 ./test.py -f 2-query/arctan.py -Q 2
|
||||
python3 ./test.py -f 2-query/query_cols_tags_and_or.py -Q 2
|
||||
python3 ./test.py -f 2-query/interp.py -Q 2
|
||||
python3 ./test.py -f 2-query/nestedQuery.py -Q 2
|
||||
python3 ./test.py -f 2-query/nestedQueryInterval.py -Q 2
|
||||
python3 ./test.py -f 2-query/nestedQuery_str.py -Q 2
|
||||
python3 ./test.py -f 2-query/nestedQuery_math.py -Q 2
|
||||
python3 ./test.py -f 2-query/nestedQuery_time.py -Q 2
|
||||
python3 ./test.py -f 2-query/stablity.py -Q 2
|
||||
python3 ./test.py -f 2-query/stablity_1.py -Q 2
|
||||
python3 ./test.py -f 2-query/avg.py -Q 2
|
||||
python3 ./test.py -f 2-query/elapsed.py -Q 2
|
||||
python3 ./test.py -f 2-query/csum.py -Q 2
|
||||
python3 ./test.py -f 2-query/mavg.py -Q 2
|
||||
python3 ./test.py -f 2-query/sample.py -Q 2
|
||||
python3 ./test.py -f 2-query/function_diff.py -Q 2
|
||||
python3 ./test.py -f 2-query/unique.py -Q 2
|
||||
python3 ./test.py -f 2-query/stateduration.py -Q 2
|
||||
python3 ./test.py -f 2-query/function_stateduration.py -Q 2
|
||||
python3 ./test.py -f 2-query/statecount.py -Q 2
|
||||
python3 ./test.py -f 2-query/tail.py -Q 2
|
||||
python3 ./test.py -f 2-query/ttl_comment.py -Q 2
|
||||
python3 ./test.py -f 2-query/distribute_agg_count.py -Q 2
|
||||
python3 ./test.py -f 2-query/distribute_agg_max.py -Q 2
|
||||
python3 ./test.py -f 2-query/distribute_agg_min.py -Q 2
|
||||
python3 ./test.py -f 2-query/distribute_agg_sum.py -Q 2
|
||||
python3 ./test.py -f 2-query/distribute_agg_spread.py -Q 2
|
||||
python3 ./test.py -f 2-query/distribute_agg_apercentile.py -Q 2
|
||||
python3 ./test.py -f 2-query/distribute_agg_avg.py -Q 2
|
||||
python3 ./test.py -f 2-query/distribute_agg_stddev.py -Q 2
|
||||
python3 ./test.py -f 2-query/twa.py -Q 2
|
||||
python3 ./test.py -f 2-query/irate.py -Q 2
|
||||
python3 ./test.py -f 2-query/function_null.py -Q 2
|
||||
python3 ./test.py -f 2-query/count_partition.py -Q 2
|
||||
python3 ./test.py -f 2-query/max_partition.py -Q 2
|
||||
python3 ./test.py -f 2-query/max_min_last_interval.py -Q 2
|
||||
python3 ./test.py -f 2-query/last_row.py -Q 2
|
||||
python3 ./test.py -f 2-query/tsbsQuery.py -Q 2
|
||||
python3 ./test.py -f 2-query/sml.py -Q 2
|
||||
python3 ./test.py -f 2-query/case_when.py -Q 2
|
||||
python3 ./test.py -f 2-query/blockSMA.py -Q 2
|
||||
python3 ./test.py -f 99-TDcase/TD-21561.py -Q 2
|
||||
python3 ./test.py -f 2-query/between.py -Q 3
|
||||
python3 ./test.py -f 2-query/distinct.py -Q 3
|
||||
python3 ./test.py -f 2-query/varchar.py -Q 3
|
||||
python3 ./test.py -f 2-query/ltrim.py -Q 3
|
||||
python3 ./test.py -f 2-query/rtrim.py -Q 3
|
||||
python3 ./test.py -f 2-query/length.py -Q 3
|
||||
python3 ./test.py -f 2-query/char_length.py -Q 3
|
||||
python3 ./test.py -f 2-query/upper.py -Q 3
|
||||
python3 ./test.py -f 2-query/lower.py -Q 3
|
||||
python3 ./test.py -f 2-query/join.py -Q 3
|
||||
python3 ./test.py -f 2-query/join2.py -Q 3
|
||||
python3 ./test.py -f 2-query/cast.py -Q 3
|
||||
python3 ./test.py -f 2-query/substr.py -Q 3
|
||||
python3 ./test.py -f 2-query/union.py -Q 3
|
||||
python3 ./test.py -f 2-query/union1.py -Q 3
|
||||
python3 ./test.py -f 2-query/concat.py -Q 3
|
||||
python3 ./test.py -f 2-query/concat2.py -Q 3
|
||||
python3 ./test.py -f 2-query/concat_ws.py -Q 3
|
||||
python3 ./test.py -f 2-query/concat_ws2.py -Q 3
|
||||
python3 ./test.py -f 2-query/check_tsdb.py -Q 3
|
||||
python3 ./test.py -f 2-query/spread.py -Q 3
|
||||
python3 ./test.py -f 2-query/hyperloglog.py -Q 3
|
||||
python3 ./test.py -f 2-query/explain.py -Q 3
|
||||
python3 ./test.py -f 2-query/leastsquares.py -Q 3
|
||||
python3 ./test.py -f 2-query/timezone.py -Q 3
|
||||
python3 ./test.py -f 2-query/Now.py -Q 3
|
||||
python3 ./test.py -f 2-query/Today.py -Q 3
|
||||
python3 ./test.py -f 2-query/max.py -Q 3
|
||||
python3 ./test.py -f 2-query/min.py -Q 3
|
||||
python3 ./test.py -f 2-query/mode.py -Q 3
|
||||
python3 ./test.py -f 2-query/count.py -Q 3
|
||||
python3 ./test.py -f 2-query/countAlwaysReturnValue.py -Q 3
|
||||
python3 ./test.py -f 2-query/last.py -Q 3
|
||||
python3 ./test.py -f 2-query/first.py -Q 3
|
||||
python3 ./test.py -f 2-query/To_iso8601.py -Q 3
|
||||
python3 ./test.py -f 2-query/To_unixtimestamp.py -Q 3
|
||||
python3 ./test.py -f 2-query/timetruncate.py -Q 3
|
||||
python3 ./test.py -f 2-query/diff.py -Q 3
|
||||
python3 ./test.py -f 2-query/Timediff.py -Q 3
|
||||
python3 ./test.py -f 2-query/json_tag.py -Q 3
|
||||
python3 ./test.py -f 2-query/top.py -Q 3
|
||||
python3 ./test.py -f 2-query/bottom.py -Q 3
|
||||
python3 ./test.py -f 2-query/percentile.py -Q 3
|
||||
python3 ./test.py -f 2-query/apercentile.py -Q 3
|
||||
python3 ./test.py -f 2-query/abs.py -Q 3
|
||||
python3 ./test.py -f 2-query/ceil.py -Q 3
|
||||
python3 ./test.py -f 2-query/floor.py -Q 3
|
||||
python3 ./test.py -f 2-query/round.py -Q 3
|
||||
python3 ./test.py -f 2-query/log.py -Q 3
|
||||
python3 ./test.py -f 2-query/pow.py -Q 3
|
||||
python3 ./test.py -f 2-query/sqrt.py -Q 3
|
||||
python3 ./test.py -f 2-query/sin.py -Q 3
|
||||
python3 ./test.py -f 2-query/cos.py -Q 3
|
||||
python3 ./test.py -f 2-query/tan.py -Q 3
|
||||
python3 ./test.py -f 2-query/arcsin.py -Q 3
|
||||
python3 ./test.py -f 2-query/arccos.py -Q 3
|
||||
python3 ./test.py -f 2-query/arctan.py -Q 3
|
||||
python3 ./test.py -f 2-query/query_cols_tags_and_or.py -Q 3
|
||||
python3 ./test.py -f 2-query/nestedQueryInterval.py -Q 3
|
||||
python3 ./test.py -f 2-query/stablity.py -Q 3
|
||||
python3 ./test.py -f 2-query/stablity_1.py -Q 3
|
||||
python3 ./test.py -f 2-query/avg.py -Q 3
|
||||
python3 ./test.py -f 2-query/elapsed.py -Q 3
|
||||
python3 ./test.py -f 2-query/csum.py -Q 3
|
||||
python3 ./test.py -f 2-query/mavg.py -Q 3
|
||||
python3 ./test.py -f 2-query/sample.py -Q 3
|
||||
python3 ./test.py -f 2-query/function_diff.py -Q 3
|
||||
python3 ./test.py -f 2-query/unique.py -Q 3
|
||||
python3 ./test.py -f 2-query/stateduration.py -Q 3
|
||||
python3 ./test.py -f 2-query/function_stateduration.py -Q 3
|
||||
python3 ./test.py -f 2-query/statecount.py -Q 3
|
||||
python3 ./test.py -f 2-query/tail.py -Q 3
|
||||
python3 ./test.py -f 2-query/ttl_comment.py -Q 3
|
||||
python3 ./test.py -f 2-query/distribute_agg_count.py -Q 3
|
||||
python3 ./test.py -f 2-query/distribute_agg_max.py -Q 3
|
||||
python3 ./test.py -f 2-query/distribute_agg_min.py -Q 3
|
||||
python3 ./test.py -f 2-query/distribute_agg_sum.py -Q 3
|
||||
python3 ./test.py -f 2-query/distribute_agg_spread.py -Q 3
|
||||
python3 ./test.py -f 2-query/distribute_agg_apercentile.py -Q 3
|
||||
python3 ./test.py -f 2-query/distribute_agg_avg.py -Q 3
|
||||
python3 ./test.py -f 2-query/distribute_agg_stddev.py -Q 3
|
||||
python3 ./test.py -f 2-query/twa.py -Q 3
|
||||
python3 ./test.py -f 2-query/irate.py -Q 3
|
||||
python3 ./test.py -f 2-query/function_null.py -Q 3
|
||||
python3 ./test.py -f 2-query/count_partition.py -Q 3
|
||||
python3 ./test.py -f 2-query/max_partition.py -Q 3
|
||||
python3 ./test.py -f 2-query/max_min_last_interval.py -Q 3
|
||||
python3 ./test.py -f 2-query/last_row.py -Q 3
|
||||
python3 ./test.py -f 2-query/tsbsQuery.py -Q 3
|
||||
python3 ./test.py -f 2-query/sml.py -Q 3
|
||||
python3 ./test.py -f 2-query/interp.py -Q 3
|
||||
python3 ./test.py -f 2-query/case_when.py -Q 3
|
||||
python3 ./test.py -f 2-query/blockSMA.py -Q 3
|
||||
python3 ./test.py -f 99-TDcase/TD-21561.py -Q 3
|
||||
python3 ./test.py -f 2-query/between.py -Q 4
|
||||
python3 ./test.py -f 2-query/distinct.py -Q 4
|
||||
python3 ./test.py -f 2-query/varchar.py -Q 4
|
||||
python3 ./test.py -f 2-query/ltrim.py -Q 4
|
||||
python3 ./test.py -f 2-query/rtrim.py -Q 4
|
||||
python3 ./test.py -f 2-query/length.py -Q 4
|
||||
python3 ./test.py -f 2-query/char_length.py -Q 4
|
||||
python3 ./test.py -f 2-query/upper.py -Q 4
|
||||
python3 ./test.py -f 2-query/lower.py -Q 4
|
||||
python3 ./test.py -f 2-query/join.py -Q 4
|
||||
python3 ./test.py -f 2-query/join2.py -Q 4
|
||||
python3 ./test.py -f 2-query/substr.py -Q 4
|
||||
python3 ./test.py -f 2-query/union.py -Q 4
|
||||
python3 ./test.py -f 2-query/union1.py -Q 4
|
||||
python3 ./test.py -f 2-query/concat.py -Q 4
|
||||
python3 ./test.py -f 2-query/concat2.py -Q 4
|
||||
python3 ./test.py -f 2-query/concat_ws.py -Q 4
|
||||
python3 ./test.py -f 2-query/concat_ws2.py -Q 4
|
||||
python3 ./test.py -f 2-query/check_tsdb.py -Q 4
|
||||
python3 ./test.py -f 2-query/spread.py -Q 4
|
||||
python3 ./test.py -f 2-query/hyperloglog.py -Q 4
|
||||
python3 ./test.py -f 2-query/explain.py -Q 4
|
||||
python3 ./test.py -f 2-query/leastsquares.py -Q 4
|
||||
python3 ./test.py -f 2-query/timezone.py -Q 4
|
||||
python3 ./test.py -f 2-query/Now.py -Q 4
|
||||
python3 ./test.py -f 2-query/Today.py -Q 4
|
||||
python3 ./test.py -f 2-query/max.py -Q 4
|
||||
python3 ./test.py -f 2-query/min.py -Q 4
|
||||
python3 ./test.py -f 2-query/mode.py -Q 4
|
||||
python3 ./test.py -f 2-query/count.py -Q 4
|
||||
python3 ./test.py -f 2-query/countAlwaysReturnValue.py -Q 4
|
||||
python3 ./test.py -f 2-query/last.py -Q 4
|
||||
python3 ./test.py -f 2-query/first.py -Q 4
|
||||
python3 ./test.py -f 2-query/To_iso8601.py -Q 4
|
||||
python3 ./test.py -f 2-query/To_unixtimestamp.py -Q 4
|
||||
python3 ./test.py -f 2-query/timetruncate.py -Q 4
|
||||
python3 ./test.py -f 2-query/diff.py -Q 4
|
||||
python3 ./test.py -f 2-query/Timediff.py -Q 4
|
||||
python3 ./test.py -f 2-query/top.py -Q 4
|
||||
python3 ./test.py -f 2-query/bottom.py -Q 4
|
||||
python3 ./test.py -f 2-query/percentile.py -Q 4
|
||||
python3 ./test.py -f 2-query/apercentile.py -Q 4
|
||||
python3 ./test.py -f 2-query/abs.py -Q 4
|
||||
python3 ./test.py -f 2-query/ceil.py -Q 4
|
||||
python3 ./test.py -f 2-query/floor.py -Q 4
|
||||
python3 ./test.py -f 2-query/round.py -Q 4
|
||||
python3 ./test.py -f 2-query/log.py -Q 4
|
||||
python3 ./test.py -f 2-query/pow.py -Q 4
|
||||
python3 ./test.py -f 2-query/sqrt.py -Q 4
|
||||
python3 ./test.py -f 2-query/sin.py -Q 4
|
||||
python3 ./test.py -f 2-query/cos.py -Q 4
|
||||
python3 ./test.py -f 2-query/tan.py -Q 4
|
||||
python3 ./test.py -f 2-query/arcsin.py -Q 4
|
||||
python3 ./test.py -f 2-query/arccos.py -Q 4
|
||||
python3 ./test.py -f 2-query/arctan.py -Q 4
|
||||
python3 ./test.py -f 2-query/query_cols_tags_and_or.py -Q 4
|
||||
python3 ./test.py -f 2-query/nestedQuery.py -Q 4
|
||||
python3 ./test.py -f 2-query/nestedQueryInterval.py -Q 4
|
||||
python3 ./test.py -f 2-query/nestedQuery_str.py -Q 4
|
||||
python3 ./test.py -f 2-query/nestedQuery_math.py -Q 4
|
||||
python3 ./test.py -f 2-query/nestedQuery_time.py -Q 4
|
||||
python3 ./test.py -f 2-query/avg.py -Q 4
|
||||
python3 ./test.py -f 2-query/elapsed.py -Q 4
|
||||
python3 ./test.py -f 2-query/csum.py -Q 4
|
||||
python3 ./test.py -f 2-query/mavg.py -Q 4
|
||||
python3 ./test.py -f 2-query/sample.py -Q 4
|
||||
python3 ./test.py -f 2-query/cast.py -Q 4
|
||||
python3 ./test.py -f 2-query/function_diff.py -Q 4
|
||||
python3 ./test.py -f 2-query/unique.py -Q 4
|
||||
python3 ./test.py -f 2-query/tail.py -Q 4
|
||||
python3 ./test.py -f 2-query/ttl_comment.py -Q 4
|
||||
python3 ./test.py -f 2-query/distribute_agg_count.py -Q 4
|
||||
python3 ./test.py -f 2-query/distribute_agg_max.py -Q 4
|
||||
python3 ./test.py -f 2-query/distribute_agg_min.py -Q 4
|
||||
python3 ./test.py -f 2-query/distribute_agg_sum.py -Q 4
|
||||
python3 ./test.py -f 2-query/distribute_agg_spread.py -Q 4
|
||||
python3 ./test.py -f 2-query/distribute_agg_apercentile.py -Q 4
|
||||
python3 ./test.py -f 2-query/distribute_agg_avg.py -Q 4
|
||||
python3 ./test.py -f 2-query/distribute_agg_stddev.py -Q 4
|
||||
python3 ./test.py -f 2-query/twa.py -Q 4
|
||||
python3 ./test.py -f 2-query/irate.py -Q 4
|
||||
python3 ./test.py -f 2-query/function_null.py -Q 4
|
||||
python3 ./test.py -f 2-query/count_partition.py -Q 4
|
||||
python3 ./test.py -f 2-query/max_partition.py -Q 4
|
||||
python3 ./test.py -f 2-query/max_min_last_interval.py -Q 4
|
||||
python3 ./test.py -f 2-query/last_row.py -Q 4
|
||||
python3 ./test.py -f 2-query/tsbsQuery.py -Q 4
|
||||
python3 ./test.py -f 2-query/sml.py -Q 4
|
||||
python3 ./test.py -f 2-query/interp.py -Q 4
|
||||
python3 ./test.py -f 2-query/case_when.py -Q 4
|
||||
python3 ./test.py -f 2-query/insert_select.py
|
||||
python3 ./test.py -f 2-query/insert_select.py -R
|
||||
python3 ./test.py -f 2-query/insert_select.py -Q 2
|
||||
python3 ./test.py -f 2-query/insert_select.py -Q 3
|
||||
python3 ./test.py -f 2-query/insert_select.py -Q 4
|
||||
python3 ./test.py -f 2-query/insert_null_none.py
|
||||
python3 ./test.py -f 2-query/insert_null_none.py -R
|
||||
python3 ./test.py -f 2-query/insert_null_none.py -Q 2
|
||||
python3 ./test.py -f 2-query/insert_null_none.py -Q 3
|
||||
python3 ./test.py -f 2-query/insert_null_none.py -Q 4
|
||||
python3 ./test.py -f 2-query/out_of_order.py
|
||||
python3 ./test.py -f 2-query/out_of_order.py -R
|
||||
python3 ./test.py -f 2-query/out_of_order.py -Q 2
|
||||
python3 ./test.py -f 2-query/out_of_order.py -Q 3
|
||||
python3 ./test.py -f 2-query/out_of_order.py -Q 4
|
||||
python3 ./test.py -f 2-query/max_min_data.py
|
||||
python3 ./test.py -f 2-query/max_min_data.py -R
|
||||
python3 ./test.py -f 2-query/max_min_data.py -Q 2
|
||||
python3 ./test.py -f 2-query/max_min_data.py -Q 3
|
||||
python3 ./test.py -f 2-query/max_min_data.py -Q 4
|
||||
python3 ./test.py -f 2-query/blockSMA.py -Q 4
|
||||
python3 ./test.py -f 2-query/odbc.py
|
||||
python3 ./test.py -f 99-TDcase/TD-21561.py -Q 4
|
||||
python3 ./test.py -f 99-TDcase/TD-20582.py
|
|
@ -0,0 +1 @@
|
|||
bash test.sh
|
|
@ -37,15 +37,15 @@ void simLogSql(char *sql, bool useSharp) {
|
|||
|
||||
char *simParseHostName(char *varName) {
|
||||
static char hostName[140];
|
||||
#ifdef WINDOWS
|
||||
hostName[0] = '\"';
|
||||
taosGetFqdn(&hostName[1]);
|
||||
int strEndIndex = strlen(hostName);
|
||||
hostName[strEndIndex] = '\"';
|
||||
hostName[strEndIndex + 1] = '\0';
|
||||
#else
|
||||
//#ifdef WINDOWS
|
||||
// hostName[0] = '\"';
|
||||
// taosGetFqdn(&hostName[1]);
|
||||
// int strEndIndex = strlen(hostName);
|
||||
// hostName[strEndIndex] = '\"';
|
||||
// hostName[strEndIndex + 1] = '\0';
|
||||
//#else
|
||||
sprintf(hostName, "%s", "localhost");
|
||||
#endif
|
||||
//#endif
|
||||
return hostName;
|
||||
}
|
||||
|
||||
|
@ -376,6 +376,20 @@ bool simExecuteRunBackCmd(SScript *script, char *option) {
|
|||
return true;
|
||||
}
|
||||
|
||||
void simReplaceDirSep (char *buf){
|
||||
#ifdef WINDOWS
|
||||
int i=0;
|
||||
while(buf[i] != '\0')
|
||||
{
|
||||
if(buf[i] == '/')
|
||||
{
|
||||
buf[i] = '\\';
|
||||
}
|
||||
i++;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
bool simReplaceStr(char *buf, char *src, char *dst) {
|
||||
bool replaced = false;
|
||||
char *begin = strstr(buf, src);
|
||||
|
@ -407,9 +421,10 @@ bool simExecuteSystemCmd(SScript *script, char *option) {
|
|||
sprintf(buf, "cd %s; ", simScriptDir);
|
||||
simVisuallizeOption(script, option, buf + strlen(buf));
|
||||
#else
|
||||
sprintf(buf, "%s", simScriptDir);
|
||||
sprintf(buf, "cd %s && ", simScriptDir);
|
||||
simVisuallizeOption(script, option, buf + strlen(buf));
|
||||
simReplaceStr(buf, ".sh", ".bat");
|
||||
simReplaceDirSep(buf);
|
||||
#endif
|
||||
|
||||
if (useValgrind) {
|
||||
|
@ -471,6 +486,8 @@ bool simExecuteSystemContentCmd(SScript *script, char *option) {
|
|||
#ifdef WINDOWS
|
||||
sprintf(buf, "cd %s && ", simScriptDir);
|
||||
simVisuallizeOption(script, option, buf + strlen(buf));
|
||||
simReplaceStr(buf, ".sh", ".bat");
|
||||
simReplaceDirSep(buf);
|
||||
sprintf(buf1, "%s > %s 2>nul", buf, filename);
|
||||
#else
|
||||
sprintf(buf, "cd %s; ", simScriptDir);
|
||||
|
|
Loading…
Reference in New Issue