From a68e772b5e1d2a66a7a2d959a68ec0dbc0e4df61 Mon Sep 17 00:00:00 2001 From: Shengliang Guan Date: Sat, 17 Oct 2020 13:17:15 +0800 Subject: [PATCH] TD-1530 invalid read while execute interp.sim --- src/query/src/qExecutor.c | 4 +- tests/script/general/compute/avg.sim | 26 +++++-- tests/script/general/compute/bottom.sim | 14 +++- tests/script/general/compute/count.sim | 26 +++++-- tests/script/general/compute/diff.sim | 17 +++-- tests/script/general/compute/diff2.sim | 6 +- tests/script/general/compute/first.sim | 26 +++++-- tests/script/general/compute/interval.sim | 46 ++++++++++-- tests/script/general/compute/last.sim | 31 ++++++-- tests/script/general/compute/last_row.sim | 83 ++++++++++++++++----- tests/script/general/compute/max.sim | 31 ++++++-- tests/script/general/compute/min.sim | 29 +++++-- tests/script/general/compute/null.sim | 16 ++-- tests/script/general/compute/percentile.sim | 36 +++++++-- tests/script/general/compute/stddev.sim | 16 +++- tests/script/general/compute/sum.sim | 33 ++++++-- tests/script/general/compute/top.sim | 16 +++- 17 files changed, 346 insertions(+), 110 deletions(-) diff --git a/src/query/src/qExecutor.c b/src/query/src/qExecutor.c index f289cea7c9..07a4bf5a05 100644 --- a/src/query/src/qExecutor.c +++ b/src/query/src/qExecutor.c @@ -1537,7 +1537,9 @@ void setExecParams(SQuery *pQuery, SQLFunctionCtx *pCtx, void* inputData, TSKEY if (isNull((const char*) &pQuery->fillVal[colIndex], pCtx->inputType)) { pCtx->param[1].nType = TSDB_DATA_TYPE_NULL; } else { // todo refactor, tVariantCreateFromBinary should handle the NULL value - tVariantCreateFromBinary(&pCtx->param[1], (char*) &pQuery->fillVal[colIndex], pCtx->inputBytes, pCtx->inputType); + if(pCtx->inputType != TSDB_DATA_TYPE_BINARY && pCtx->inputType != TSDB_DATA_TYPE_NCHAR) { + tVariantCreateFromBinary(&pCtx->param[1], (char*) &pQuery->fillVal[colIndex], pCtx->inputBytes, pCtx->inputType); + } } } } diff --git a/tests/script/general/compute/avg.sim b/tests/script/general/compute/avg.sim index 9a37363a60..52a270bc6d 100644 --- a/tests/script/general/compute/avg.sim +++ b/tests/script/general/compute/avg.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -52,7 +54,9 @@ if $data00 != 9.500000000 then endi print =============== step3 -sql select avg(tbcol) from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select avg(tbcol) from $tb where ts <= $ms print ===> $data00 if $data00 != 2.000000000 then return -1 @@ -79,7 +83,9 @@ if $data01 != 9.500000000 then endi print =============== step6 -sql select avg(tbcol) as b from $tb where ts < now + 4m interval(1m) +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select avg(tbcol) as b from $tb where ts <= $ms interval(1m) print ===> $data01 if $data41 != 4.000000000 then return -1 @@ -96,7 +102,9 @@ if $data00 != 9.500000000 then endi print =============== step8 -sql select avg(tbcol) as c from $mt where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select avg(tbcol) as c from $mt where ts <= $ms print ===> $data00 if $data00 != 2.000000000 then return -1 @@ -108,7 +116,9 @@ if $data00 != 9.500000000 then return -1 endi -sql select avg(tbcol) as c from $mt where tgcol < 5 and ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select avg(tbcol) as c from $mt where tgcol < 5 and ts <= $ms print ===> $data00 if $data00 != 2.000000000 then return -1 @@ -139,7 +149,9 @@ if $rows != $tbNum then endi print =============== step11 -sql select avg(tbcol) as b from $mt where ts < now + 4m interval(1m) group by tgcol +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select avg(tbcol) as b from $mt where ts <= $ms interval(1m) group by tgcol print ===> $data11 if $data11 != 1.000000000 then return -1 diff --git a/tests/script/general/compute/bottom.sim b/tests/script/general/compute/bottom.sim index 592f87651e..415bd36e2e 100644 --- a/tests/script/general/compute/bottom.sim +++ b/tests/script/general/compute/bottom.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -52,7 +54,9 @@ if $data01 != 0 then endi print =============== step3 -sql select bottom(tbcol, 1) from $tb where ts > now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select bottom(tbcol, 1) from $tb where ts > $ms print ===> $data01 if $data01 != 5 then return -1 @@ -76,7 +80,9 @@ if $data11 != 1 then endi print =============== step6 -sql select bottom(tbcol, 2) as b from $tb where ts > now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select bottom(tbcol, 2) as b from $tb where ts > $ms print ===> $data01 $data11 if $data01 != 5 then return -1 diff --git a/tests/script/general/compute/count.sim b/tests/script/general/compute/count.sim index c2ed5af3ca..d8aeb18752 100644 --- a/tests/script/general/compute/count.sim +++ b/tests/script/general/compute/count.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -65,7 +67,9 @@ if $data00 != $rowNum then endi print =============== step3 -sql select count(tbcol) from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select count(tbcol) from $tb where ts <= $ms print ===> $data00 if $data00 != 5 then return -1 @@ -92,7 +96,9 @@ if $data01 != $rowNum then endi print =============== step6 -sql select count(tbcol) as b from $tb where ts < now + 4m interval(1m) +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select count(tbcol) as b from $tb where ts <= $ms interval(1m) print ===> $data01 if $data01 != 1 then return -1 @@ -122,7 +128,9 @@ if $data00 != $totalNum then endi print =============== step10 -sql select count(tbcol) as c from $mt where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select count(tbcol) as c from $mt where ts <= $ms print ===> $data00 if $data00 != 50 then return -1 @@ -134,7 +142,9 @@ if $data00 != 100 then return -1 endi -sql select count(tbcol) as c from $mt where tgcol < 5 and ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select count(tbcol) as c from $mt where tgcol < 5 and ts <= $ms print ===> $data00 if $data00 != 25 then return -1 @@ -168,7 +178,9 @@ if $rows != $tbNum then endi print =============== step11 -sql select count(tbcol) as b from $mt where ts < now + 4m interval(1m) group by tgcol +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select count(tbcol) as b from $mt where ts <= $ms interval(1m) group by tgcol print ===> $data01 if $data01 != 1 then return -1 diff --git a/tests/script/general/compute/diff.sim b/tests/script/general/compute/diff.sim index 8a60cd00bc..88c2ecb09d 100644 --- a/tests/script/general/compute/diff.sim +++ b/tests/script/general/compute/diff.sim @@ -31,8 +31,9 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -52,13 +53,17 @@ if $data11 != 1 then endi print =============== step3 -sql select diff(tbcol) from $tb where ts > now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select diff(tbcol) from $tb where ts > $ms print ===> $data11 if $data11 != 1 then return -1 endi -sql select diff(tbcol) from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select diff(tbcol) from $tb where ts <= $ms print ===> $data11 if $data11 != 1 then return -1 @@ -77,7 +82,9 @@ sql select diff(tbcol) as b from $tb interval(1m) -x step5 step5: print =============== step6 -sql select diff(tbcol) as b from $tb where ts < now + 4m interval(1m) -x step6 +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select diff(tbcol) as b from $tb where ts <= $ms interval(1m) -x step6 return -1 step6: diff --git a/tests/script/general/compute/diff2.sim b/tests/script/general/compute/diff2.sim index 0be907c16a..14675c823f 100644 --- a/tests/script/general/compute/diff2.sim +++ b/tests/script/general/compute/diff2.sim @@ -31,9 +31,11 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m + $cc = $x * 60000 + $ms = 1601481600000 + $cc + $tinyint = $x / 128 - sql insert into $tb values (now + $ms , $x , $x , $x , $x , $tinyint , $x , $x , $x , $x ) + sql insert into $tb values ($ms , $x , $x , $x , $x , $tinyint , $x , $x , $x , $x ) $x = $x + 1 endw diff --git a/tests/script/general/compute/first.sim b/tests/script/general/compute/first.sim index 80f4f53cdb..01b82cce62 100644 --- a/tests/script/general/compute/first.sim +++ b/tests/script/general/compute/first.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -52,7 +54,9 @@ if $data00 != 0 then endi print =============== step3 -sql select first(tbcol) from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select first(tbcol) from $tb where ts <= $ms print ===> $data00 if $data00 != 0 then return -1 @@ -79,7 +83,9 @@ if $data01 != 0 then endi print =============== step6 -sql select first(tbcol) as b from $tb where ts < now + 4m interval(1m) +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select first(tbcol) as b from $tb where ts <= $ms interval(1m) print ===> $data01 if $data41 != 4 then return -1 @@ -96,7 +102,9 @@ if $data00 != 0 then endi print =============== step8 -sql select first(tbcol) as c from $mt where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select first(tbcol) as c from $mt where ts <= $ms print ===> $data00 if $data00 != 0 then return -1 @@ -108,7 +116,9 @@ if $data00 != 0 then return -1 endi -sql select first(tbcol) as c from $mt where tgcol < 5 and ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select first(tbcol) as c from $mt where tgcol < 5 and ts <= $ms print ===> $data00 if $data00 != 0 then return -1 @@ -140,7 +150,9 @@ if $rows != $tbNum then endi print =============== step11 -sql select first(tbcol) as b from $mt where ts < now + 4m interval(1m) group by tgcol +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select first(tbcol) as b from $mt where ts <= $ms interval(1m) group by tgcol print ===> $data11 if $data11 != 1 then return -1 diff --git a/tests/script/general/compute/interval.sim b/tests/script/general/compute/interval.sim index 26f40eda5a..8f9bf2ecb3 100644 --- a/tests/script/general/compute/interval.sim +++ b/tests/script/general/compute/interval.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -56,7 +58,9 @@ if $data05 != 1 then endi print =============== step3 -sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $tb where ts < now + 4m interval(1m) +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $tb where ts <= $ms interval(1m) print ===> $rows if $rows > 10 then return -1 @@ -72,7 +76,13 @@ if $data05 != 1 then endi print =============== step4 -sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $tb where ts < now+40m and ts > now-1m interval(1m) +$cc = 40 * 60000 +$ms = 1601481600000 + $cc + +$cc = 1 * 60000 +$ms2 = 1601481600000 - $cc + +sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $tb where ts <= $ms and ts > $ms2 interval(1m) print ===> $rows if $rows < 18 then return -1 @@ -88,7 +98,13 @@ if $data05 != 1 then endi print =============== step5 -sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $tb where ts < now+40m and ts > now+1m interval(1m) fill(value,0) +$cc = 40 * 60000 +$ms = 1601481600000 + $cc + +$cc = 1 * 60000 +$ms2 = 1601481600000 - $cc + +sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $tb where ts <= $ms and ts > $ms2 interval(1m) fill(value,0) print ===> $rows if $rows < 30 then return -1 @@ -120,7 +136,9 @@ if $data11 < 5 then endi print =============== step7 -sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $mt where ts < now + 4m interval(1m) +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $mt where ts <= $ms interval(1m) print ===> $rows if $rows < 3 then return -1 @@ -136,7 +154,13 @@ if $data11 < 5 then endi print =============== step8 -sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $mt where ts < now+40m and ts > now-1m interval(1m) +$cc = 40 * 60000 +$ms1 = 1601481600000 + $cc + +$cc = 1 * 60000 +$ms2 = 1601481600000 - $cc + +sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $mt where ts <= $ms1 and ts > $ms2 interval(1m) print ===> $rows if $rows < 18 then return -1 @@ -152,7 +176,13 @@ if $data11 < 5 then endi print =============== step9 -sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $mt where ts < now+40m and ts > now+1m interval(1m) fill(value, 0) +$cc = 40 * 60000 +$ms1 = 1601481600000 + $cc + +$cc = 1 * 60000 +$ms2 = 1601481600000 - $cc + +sql select count(tbcol), avg(tbcol), max(tbcol), min(tbcol), count(tbcol) from $mt where ts <= $ms1 and ts > $ms2 interval(1m) fill(value, 0) if $rows < 30 then return -1 endi diff --git a/tests/script/general/compute/last.sim b/tests/script/general/compute/last.sim index 0e92bb6d45..88a6a26846 100644 --- a/tests/script/general/compute/last.sim +++ b/tests/script/general/compute/last.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -52,7 +54,10 @@ if $data00 != 19 then endi print =============== step3 -sql select last(tbcol) from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select last(tbcol) from $tb where ts <= $ms print ===> $data00 if $data00 != 4 then return -1 @@ -79,7 +84,10 @@ if $data01 != 19 then endi print =============== step6 -sql select last(tbcol) as b from $tb where ts < now + 4m interval(1m) +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select last(tbcol) as b from $tb where ts <= $ms interval(1m) print ===> $data11 if $data11 != 1 then return -1 @@ -96,7 +104,10 @@ if $data00 != 19 then endi print =============== step8 -sql select last(tbcol) as c from $mt where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select last(tbcol) as c from $mt where ts <= $ms print ===> $data00 if $data00 != 4 then return -1 @@ -108,7 +119,10 @@ if $data00 != 19 then return -1 endi -sql select last(tbcol) as c from $mt where tgcol < 5 and ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select last(tbcol) as c from $mt where tgcol < 5 and ts <= $ms print ===> $data00 if $data00 != 4 then return -1 @@ -139,7 +153,10 @@ if $rows != $tbNum then endi print =============== step11 -sql select last(tbcol) as b from $mt where ts < now + 4m interval(1m) group by tgcol +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select last(tbcol) as b from $mt where ts <= $ms interval(1m) group by tgcol print ===> $data11 if $data11 != 1 then return -1 diff --git a/tests/script/general/compute/last_row.sim b/tests/script/general/compute/last_row.sim index cc5cc3edbb..55d97fe53c 100644 --- a/tests/script/general/compute/last_row.sim +++ b/tests/script/general/compute/last_row.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -52,7 +54,9 @@ if $data00 != 19 then endi print =============== step3 -sql select last_row(tbcol) from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select last_row(tbcol) from $tb where ts <= $ms print ===> $data00 if $data00 != 4 then return -1 @@ -75,7 +79,9 @@ if $data00 != 19 then endi print =============== step8 -sql select last_row(tbcol) as c from $mt where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select last_row(tbcol) as c from $mt where ts <= $ms print ===> $data00 if $data00 != 4 then return -1 @@ -87,7 +93,9 @@ if $data00 != 19 then return -1 endi -sql select last_row(tbcol) as c from $mt where tgcol < 5 and ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select last_row(tbcol) as c from $mt where tgcol < 5 and ts <= $ms print ===> $data00 if $data00 != 4 then return -1 @@ -108,18 +116,37 @@ endi print =============== step11 -sql insert into $tb values(now + 1h, 10) -sql insert into $tb values(now + 3h, null) -sql insert into $tb values(now + 5h, -1) -sql insert into $tb values(now + 7h, null) +$cc = 1 * 3600000 +$ms = 1601481600000 + $cc +sql insert into $tb values( $ms , 10) + +$cc = 3 * 3600000 +$ms = 1601481600000 + $cc +sql insert into $tb values( $ms , null) + +$cc = 5 * 3600000 +$ms = 1601481600000 + $cc + +sql insert into $tb values( $ms , -1) + +$cc = 7 * 3600000 +$ms = 1601481600000 + $cc + +sql insert into $tb values( $ms , null) ## for super table -sql select last_row(*) from $mt where ts < now + 6h +$cc = 6 * 3600000 +$ms = 1601481600000 + $cc + +sql select last_row(*) from $mt where ts < $ms if $data01 != -1 then return -1 endi -sql select last_row(*) from $mt where ts < now + 8h +$cc = 8 * 3600000 +$ms = 1601481600000 + $cc + +sql select last_row(*) from $mt where ts < $ms if $data01 != NULL then return -1 endi @@ -129,23 +156,37 @@ if $data01 != NULL then return -1 endi -sql select last_row(*) from $mt where ts < now + 4h +$cc = 4 * 3600000 +$ms = 1601481600000 + $cc + +sql select last_row(*) from $mt where ts < $ms if $data01 != NULL then return -1 endi -sql select last_row(*) from $mt where ts > now + 1h and ts < now + 4h +$cc = 1 * 3600000 +$ms1 = 1601481600000 + $cc +$cc = 4 * 3600000 +$ms2 = 1601481600000 + $cc + +sql select last_row(*) from $mt where ts > $ms1 and ts <= $ms2 if $data01 != NULL then return -1 endi ## for table -sql select last_row(*) from $tb where ts < now + 6h +$cc = 6 * 3600000 +$ms = 1601481600000 + $cc + +sql select last_row(*) from $tb where ts <= $ms if $data01 != -1 then return -1 endi -sql select last_row(*) from $tb where ts < now + 8h +$cc = 8 * 3600000 +$ms = 1601481600000 + $cc + +sql select last_row(*) from $tb where ts <= $ms if $data01 != NULL then return -1 endi @@ -155,12 +196,20 @@ if $data01 != NULL then return -1 endi -sql select last_row(*) from $tb where ts < now + 4h +$cc = 4 * 3600000 +$ms = 1601481600000 + $cc + +sql select last_row(*) from $tb where ts <= $ms if $data01 != NULL then return -1 endi -sql select last_row(*) from $tb where ts > now + 1h and ts < now + 4h +$cc = 1 * 3600000 +$ms1 = 1601481600000 + $cc +$cc = 4 * 3600000 +$ms2 = 1601481600000 + $cc + +sql select last_row(*) from $tb where ts > $ms1 and ts <= $ms2 if $data01 != NULL then return -1 endi diff --git a/tests/script/general/compute/max.sim b/tests/script/general/compute/max.sim index 4fc760d66d..1029ba78cc 100644 --- a/tests/script/general/compute/max.sim +++ b/tests/script/general/compute/max.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -52,7 +54,10 @@ if $data00 != 19 then endi print =============== step3 -sql select max(tbcol) from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select max(tbcol) from $tb where ts <= $ms print ===> $data00 if $data00 != 4 then return -1 @@ -79,7 +84,10 @@ if $data01 != 19 then endi print =============== step6 -sql select max(tbcol) as b from $tb where ts < now + 4m interval(1m) +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select max(tbcol) as b from $tb where ts <= $ms interval(1m) print ===> $data11 if $data11 != 1 then return -1 @@ -96,7 +104,10 @@ if $data00 != 19 then endi print =============== step8 -sql select max(tbcol) as c from $mt where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select max(tbcol) as c from $mt where ts <= $ms print ===> $data00 if $data00 != 4 then return -1 @@ -108,7 +119,10 @@ if $data00 != 19 then return -1 endi -sql select max(tbcol) as c from $mt where tgcol < 5 and ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select max(tbcol) as c from $mt where tgcol < 5 and ts <= $ms print ===> $data00 if $data00 != 4 then return -1 @@ -139,7 +153,10 @@ if $rows != $tbNum then endi print =============== step11 -sql select max(tbcol) as b from $mt where ts < now + 4m interval(1m) group by tgcol +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select max(tbcol) as b from $mt where ts <= $ms interval(1m) group by tgcol print ===> $data11 if $data11 != 1 then return -1 diff --git a/tests/script/general/compute/min.sim b/tests/script/general/compute/min.sim index 82a22b642e..d6a57f4f20 100644 --- a/tests/script/general/compute/min.sim +++ b/tests/script/general/compute/min.sim @@ -32,8 +32,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -53,7 +55,10 @@ if $data00 != 0 then endi print =============== step3 -sql select min(tbcol) from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select min(tbcol) from $tb where ts < $ms print ===> $data00 if $data00 != 0 then return -1 @@ -80,7 +85,11 @@ if $data01 != 0 then endi print =============== step6 -sql select min(tbcol) as b from $tb where ts < now + 4m interval(1m) +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select min(tbcol) as b from $tb where ts <= $ms interval(1m) +print select min(tbcol) as b from $tb where ts <= $ms interval(1m) print ===> $data11 if $data11 != 1 then return -1 @@ -97,7 +106,9 @@ if $data00 != 0 then endi print =============== step8 -sql select min(tbcol) as c from $mt where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select min(tbcol) as c from $mt where ts < $ms print ===> $data00 if $data00 != 0 then return -1 @@ -109,7 +120,9 @@ if $data00 != 0 then return -1 endi -sql select min(tbcol) as c from $mt where tgcol < 5 and ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select min(tbcol) as c from $mt where tgcol < 5 and ts <= $ms print ===> $data00 if $data00 != 0 then return -1 @@ -140,7 +153,9 @@ if $rows != $tbNum then endi print =============== step11 -sql select min(tbcol) as b from $mt where ts < now + 4m interval(1m) group by tgcol +$cc = 4 * 60000 +$ms = 1601481600000 + $cc +sql select min(tbcol) as b from $mt where ts <= $ms interval(1m) group by tgcol print ===> $data11 if $data11 != 1 then return -1 diff --git a/tests/script/general/compute/null.sim b/tests/script/general/compute/null.sim index cde95ca77f..47f7a3c1b9 100644 --- a/tests/script/general/compute/null.sim +++ b/tests/script/general/compute/null.sim @@ -31,14 +31,16 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m + $cc = $x * 60000 + $ms = 1601481600000 + $cc - $v1 = $x - $v2 = $x - if $x == 0 then - $v1 = NULL - endi - sql insert into $tb values (now + $ms , $v1 , $v2 ) + $v1 = $x + $v2 = $x + if $x == 0 then + $v1 = NULL + endi + + sql insert into $tb values ($ms , $v1 , $v2 ) $x = $x + 1 endw diff --git a/tests/script/general/compute/percentile.sim b/tests/script/general/compute/percentile.sim index dd309c3789..0fb88e7a40 100644 --- a/tests/script/general/compute/percentile.sim +++ b/tests/script/general/compute/percentile.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -68,38 +70,56 @@ sql select percentile(tbcol, 110) from $tb -x step2 step2: print =============== step3 -sql select percentile(tbcol, 1) from $tb where ts > now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select percentile(tbcol, 1) from $tb where ts > $ms print ===> $data00 if $data00 != 5.140000000 then return -1 endi -sql select percentile(tbcol, 5) from $tb where ts > now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select percentile(tbcol, 5) from $tb where ts > $ms print ===> $data00 if $data00 != 5.700000000 then return -1 endi -sql select percentile(tbcol, 0) from $tb where ts > now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select percentile(tbcol, 0) from $tb where ts > $ms print ===> $data00 if $data00 != 5.000000000 then return -1 endi print =============== step4 -sql select percentile(tbcol, 1) as c from $tb where ts > now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select percentile(tbcol, 1) as c from $tb where ts > $ms print ===> $data00 if $data00 != 5.140000000 then return -1 endi -sql select percentile(tbcol, 5) as c from $tb where ts > now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select percentile(tbcol, 5) as c from $tb where ts > $ms print ===> $data00 if $data00 != 5.700000000 then return -1 endi -sql select percentile(tbcol, 0) as c from $tb where ts > now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select percentile(tbcol, 0) as c from $tb where ts > $ms print ===> $data00 if $data00 != 5.000000000 then return -1 diff --git a/tests/script/general/compute/stddev.sim b/tests/script/general/compute/stddev.sim index 7cea8726a9..abe4025e96 100644 --- a/tests/script/general/compute/stddev.sim +++ b/tests/script/general/compute/stddev.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -52,7 +54,10 @@ if $data00 != 5.766281297 then endi print =============== step3 -sql select stddev(tbcol) from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select stddev(tbcol) from $tb where ts <= $ms print ===> $data00 if $data00 != 1.414213562 then return -1 @@ -79,7 +84,10 @@ if $data01 != 5.766281297 then endi print =============== step6 -sql select stddev(tbcol) as b from $tb where ts < now + 4m interval(1m) +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select stddev(tbcol) as b from $tb where ts <= $ms interval(1m) print ===> $data01 if $data01 != 0.000000000 then return -1 diff --git a/tests/script/general/compute/sum.sim b/tests/script/general/compute/sum.sim index d05fe8930e..9d42e766b6 100644 --- a/tests/script/general/compute/sum.sim +++ b/tests/script/general/compute/sum.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -52,7 +54,10 @@ if $data00 != 190 then endi print =============== step3 -sql select sum(tbcol) from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select sum(tbcol) from $tb where ts <= $ms print ===> $data00 if $data00 != 10 then return -1 @@ -79,7 +84,10 @@ if $data01 != 190 then endi print =============== step6 -sql select sum(tbcol) as b from $tb where ts < now + 4m interval(1m) +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select sum(tbcol) as b from $tb where ts <= $ms interval(1m) print ===> $data11 if $data11 != 1 then return -1 @@ -96,7 +104,10 @@ if $data00 != 1900 then endi print =============== step8 -sql select sum(tbcol) as c from $mt where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select sum(tbcol) as c from $mt where ts <= $ms print ===> $data00 if $data00 != 100 then return -1 @@ -108,7 +119,10 @@ if $data00 != 950 then return -1 endi -sql select sum(tbcol) as c from $mt where tgcol < 5 and ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select sum(tbcol) as c from $mt where tgcol < 5 and ts <= $ms print ===> $data00 if $data00 != 50 then return -1 @@ -139,8 +153,11 @@ if $rows != $tbNum then endi print =============== step11 -sql select sum(tbcol) as b from $mt where ts < now + 4m interval(1d) group by tgcol -print select sum(tbcol) as b from $mt where ts < now + 4m interval(1d) group by tgcol +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select sum(tbcol) as b from $mt where ts <= $ms interval(1d) group by tgcol +print select sum(tbcol) as b from $mt where ts <= $ms interval(1d) group by tgcol print ===> $data01 if $data01 != 10 then return -1 diff --git a/tests/script/general/compute/top.sim b/tests/script/general/compute/top.sim index 14b3b328a0..e6bcd4a5cb 100644 --- a/tests/script/general/compute/top.sim +++ b/tests/script/general/compute/top.sim @@ -31,8 +31,10 @@ while $i < $tbNum $x = 0 while $x < $rowNum - $ms = $x . m - sql insert into $tb values (now + $ms , $x ) + $cc = $x * 60000 + $ms = 1601481600000 + $cc + + sql insert into $tb values ($ms , $x ) $x = $x + 1 endw @@ -52,7 +54,10 @@ if $data01 != 19 then endi print =============== step3 -sql select top(tbcol, 1) from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select top(tbcol, 1) from $tb where ts <= $ms print ===> $data01 if $data01 != 4 then return -1 @@ -76,7 +81,10 @@ if $data11 != 19 then endi print =============== step6 -sql select top(tbcol, 2) as b from $tb where ts < now + 4m +$cc = 4 * 60000 +$ms = 1601481600000 + $cc + +sql select top(tbcol, 2) as b from $tb where ts <= $ms print ===> $data01 $data11 if $data01 != 3 then return -1 -- GitLab