fix stddev.case

This commit is contained in:
cpwu 2022-04-15 16:48:19 +08:00
parent dacbc8aa8e
commit e61d176305
1 changed files with 408 additions and 107 deletions

View File

@ -1,7 +1,5 @@
system sh/stop_dnodes.sh
system sh/deploy.sh -n dnode1 -i 1
system sh/cfg.sh -n dnode1 -c walLevel -v 1
system sh/exec.sh -n dnode1 -s start
$loop_cnt = 0
@ -12,6 +10,7 @@ check_dnode_ready:
print ====> dnode not ready!
return -1
endi
sql show dnodes
print ===> $rows $data00 $data01 $data02 $data03 $data04 $data05
if $data00 != 1 then
@ -23,108 +22,410 @@ endi
sql connect
$dbPrefix = db
$tbPrefix = ctb
$mtPrefix = stb
$tbNum = 10
$rowNum = 20
$totalNum = 200
print =============== step1
$i = 0
$db = $dbPrefix . $i
$mt = $mtPrefix . $i
sql drop database $db -x step1
step1:
sql create database $db
sql use $db
sql create table $mt (ts timestamp, tbcol int) TAGS(tgcol int)
$i = 0
while $i < $tbNum
$tb = $tbPrefix . $i
sql create table $tb using $mt tags( $i )
$x = 0
while $x < $rowNum
$cc = $x * 60000
$ms = 1601481600000 + $cc
sql insert into $tb values ($ms , $x )
$x = $x + 1
endw
$i = $i + 1
endw
sleep 100
print =============== step2
$i = 1
$tb = $tbPrefix . $i
sql select stddev(tbcol) from $tb
print ===> $data00
if $data00 != 5.766281297 then
return -1
endi
print =============== step3
$cc = 4 * 60000
$ms = 1601481600000 + $cc
print ===> select stddev(tbcol) from $tb where ts <= $ms
sql select stddev(tbcol) from $tb where ts <= $ms
print ====> $data00 $data01 $data02 $data03 $data04 $data05
if $data00 != 1.414213562 then
return -1
endi
print =============== step4
sql select stddev(tbcol) as b from $tb
print ===> $data00
if $data00 != 5.766281297 then
return -1
endi
print =============== step5
sql select _wstartts, stddev(tbcol) as b from $tb interval(1m)
print ===> $data01
if $data01 != 0.000000000 then
print expect 0.000000000, actual: $data01
return -1
endi
sql select _wstartts, stddev(tbcol) as b from $tb interval(1d)
print ===> $data01
if $data01 != 5.766281297 then
return -1
endi
print =============== step6
$cc = 4 * 60000
$ms = 1601481600000 + $cc
print select _wstartts, stddev(tbcol) as b from $tb where ts <= $ms interval(1m)
sql select _wstartts, stddev(tbcol) as b from $tb where ts <= $ms interval(1m)
print ===> $data01
if $data01 != 0.000000000 then
return -1
endi
print $data00 , $data10 , $data20 , $data30 , $data40 , $data50 , $data60
if $rows != 5 then
print expect 5, actual: $rows
return -1
endi
print =============== clear
sql drop database $db
print =============== create database
sql create database db
sql show databases
if $rows != 3 then
return -1
endi
sql use db
print =============== create super table and child table
sql create table stb1 (ts timestamp, c1 int, c2 bigint, c3 smallint, c4 tinyint, c5 float, c6 double, c7 bool, c8 binary(16),c9 nchar(32), c10 timestamp) tags (t1 int)
sql show stables
print $rows $data00 $data01 $data02
if $rows != 1 then
return -1
endi
sql create table ct1 using stb1 tags ( 1 )
sql create table ct2 using stb1 tags ( 2 )
sql create table ct3 using stb1 tags ( 3 )
sql create table ct4 using stb1 tags ( 4 )
sql show tables
print $rows $data00 $data10 $data20
if $rows != 4 then
return -1
endi
sql create table t1 (ts timestamp, c1 int, c2 bigint, c3 smallint, c4 tinyint, c5 float, c6 double, c7 bool, c8 binary(16),c9 nchar(32), c10 timestamp)
print =============== insert data into child table ct1 (s)
sql insert into ct1 values ( '2022-01-01 01:01:01.000', 1, 11111, 111, 11, 1.11, 11.11, 1, "binary1", "nchar1", now+1a )
sql insert into ct1 values ( '2022-01-01 01:01:06.000', 2, 22222, 222, 22, 2.22, 22.22, 0, "binary2", "nchar2", now+2a )
sql insert into ct1 values ( '2022-01-01 01:01:10.000', 3, 33333, 333, 33, 3.33, 33.33, 0, "binary3", "nchar3", now+3a )
sql insert into ct1 values ( '2022-01-01 01:01:16.000', 4, 44444, 444, 44, 4.44, 44.44, 1, "binary4", "nchar4", now+4a )
sql insert into ct1 values ( '2022-01-01 01:01:20.000', 5, 55555, 555, 55, 5.55, 55.55, 0, "binary5", "nchar5", now+5a )
sql insert into ct1 values ( '2022-01-01 01:01:26.000', 6, 66666, 666, 66, 6.66, 66.66, 1, "binary6", "nchar6", now+6a )
sql insert into ct1 values ( '2022-01-01 01:01:30.000', 7, 00000, 000, 00, 0.00, 00.00, 1, "binary7", "nchar7", now+7a )
sql insert into ct1 values ( '2022-01-01 01:01:36.000', 8, -88888, -888, -88, -8.88, -88.88, 0, "binary8", "nchar8", now+8a )
print =============== insert data into child table ct4 (y)
sql insert into ct4 values ( '2019-01-21 01:01:01.000', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL )
sql insert into ct4 values ( '2019-10-21 01:01:01.000', 1, 11111, 111, 11, 1.11, 11.11, 1, "binary1", "nchar1", now+1a )
sql insert into ct4 values ( '2019-12-31 01:01:01.000', 2, 22222, 222, 22, 2.22, 22.22, 0, "binary2", "nchar2", now+2a )
sql insert into ct4 values ( '2020-01-01 01:01:06.000', 3, 33333, 333, 33, 3.33, 33.33, 0, "binary3", "nchar3", now+3a )
sql insert into ct4 values ( '2020-05-07 01:01:10.000', 4, 44444, 444, 44, 4.44, 44.44, 1, "binary4", "nchar4", now+4a )
sql insert into ct4 values ( '2020-09-30 01:01:16.000', 5, 55555, 555, 55, 5.55, 55.55, 0, "binary5", "nchar5", now+5a )
sql insert into ct4 values ( '2020-12-21 01:01:01.000', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL )
sql insert into ct4 values ( '2021-02-01 01:01:20.000', 6, 66666, 666, 66, 6.66, 66.66, 1, "binary6", "nchar6", now+6a )
sql insert into ct4 values ( '2021-10-28 01:01:26.000', 7, 00000, 000, 00, 0.00, 00.00, 1, "binary7", "nchar7", "1970-01-01 08:00:00.000" )
sql insert into ct4 values ( '2021-12-01 01:01:30.000', 8, -88888, -888, -88, -8.88, -88.88, 0, "binary8", "nchar8", "1969-01-01 01:00:00.000" )
sql insert into ct4 values ( '2022-02-31 01:01:36.000', 9, -99999999999999999, -999, -99, -9.99, -999999999999999999999.99, 1, "binary9", "nchar9", "1900-01-01 00:00:00.000" )
sql insert into ct4 values ( '2022-05-21 01:01:01.000', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL )
print =============== insert data into child table t1
sql insert into t1 values ( '2020-10-21 01:01:01.000', 1, 11111, 111, 11, 1.11, 11.11, 1, "binary1", "nchar1", now+1a )
sql insert into t1 values ( '2020-12-31 01:01:01.000', 2, 22222, 222, 22, 2.22, 22.22, 0, "binary2", "nchar2", now+2a )
sql insert into t1 values ( '2021-01-01 01:01:06.000', 3, 33333, 333, 33, 3.33, 33.33, 0, "binary3", "nchar3", now+3a )
sql insert into t1 values ( '2021-05-07 01:01:10.000', 4, 44444, 444, 44, 4.44, 44.44, 1, "binary4", "nchar4", now+4a )
sql insert into t1 values ( '2021-09-30 01:01:16.000', 5, 55555, 555, 55, 5.55, 55.55, 0, "binary5", "nchar5", now+5a )
sql insert into t1 values ( '2022-02-01 01:01:20.000', 6, 66666, 666, 66, 6.66, 66.66, 1, "binary6", "nchar6", now+6a )
sql insert into t1 values ( '2022-10-28 01:01:26.000', 7, 00000, 000, 00, 0.00, 00.00, 1, "binary7", "nchar7", "1970-01-01 08:00:00.000" )
sql insert into t1 values ( '2022-12-01 01:01:30.000', 8, -88888, -888, -88, -8.88, -88.88, 0, "binary8", "nchar8", "1969-01-01 01:00:00.000" )
sql insert into t1 values ( '2022-12-31 01:01:36.000', 9, -99999999999999999, -999, -99, -9.99, -999999999999999999999.99, 1, "binary9", "nchar9", "1900-01-01 00:00:00.000" )
print ================ start query ======================
print =============== step1
print =====sql : select stddev(c1) as b from ct4
sql select stddev(c1) as b from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c1) as b from t1
sql select stddev(c1) as b from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select _wstartts, stddev(c1) as b from ct4 interval(1y)
sql select _wstartts, stddev(c1) as b from ct4 interval(1y)
print ===> $rows
if $rows != 4 then
return -1
endi
print =====sql : select _wstartts, stddev(c1) as b from t1 interval(1y)
sql select _wstartts, stddev(c1) as b from t1 interval(1y)
print ===> $rows
if $rows != 3 then
return -1
endi
print =====select _wstartts, stddev(c1) as b from ct4 where c1 <= 6 interval(180d)
sql select _wstartts, stddev(c1) as b from ct4 where c1 <= 6 interval(180d)
# print ===> $rows
# if $rows != 3 then
# return -1
# endi
print =====select _wstartts, stddev(c1) as b from t1 where c1 <= 6 interval(180d)
sql select _wstartts, stddev(c1) as b from t1 where c1 <= 6 interval(180d)
# print ===> $rows
# if $rows != 3 then
# return -1
# endi
print =====sql : select stddev(c1) a1, sum(c1) b1 from ct4
sql select stddev(c1) a1, sum(c1) b1 from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c1) a1, sum(c1) b1 from t1
sql select stddev(c1) a1, sum(c1) b1 from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c1)+sum(c1) b1 from ct4
sql select stddev(c1)+sum(c1) b1 from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c1)+sum(c1) b1 from t1
sql select stddev(c1)+sum(c1) b1 from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c2) from ct4
sql select stddev(c2) from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c2) from t1
sql select stddev(c2) from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c3) from ct4
sql select stddev(c3) from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c3) from t1
sql select stddev(c3) from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c4) from ct4
sql select stddev(c4) from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c4) from t1
sql select stddev(c4) from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c5) from ct4
sql select stddev(c5) from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c5) from t1
sql select stddev(c5) from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c6) from ct4
sql select stddev(c6) from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c6) from t1
sql select stddev(c6) from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c7) from ct4
sql_error select stddev(c7) from ct4
# print ===> $rows
# if $rows != 1 then
# return -1
# endi
print =====sql : select stddev(c7) from t1
sql_error select stddev(c7) from t1
# print ===> $rows
# if $rows != 1 then
# return -1
# endi
#=================================================
print =============== stop and restart taosd
system sh/exec.sh -n dnode1 -s stop -x SIGINT
system sh/exec.sh -n dnode1 -s start
$loop_cnt = 0
check_dnode_ready_0:
$loop_cnt = $loop_cnt + 1
sleep 200
if $loop_cnt == 10 then
print ====> dnode not ready!
return -1
endi
sql show dnodes
print ===> $rows $data00 $data01 $data02 $data03 $data04 $data05
if $data00 != 1 then
return -1
endi
if $data04 != ready then
goto check_dnode_ready_0
endi
print =============== step2 after wal
print =====sql : select stddev(c1) as b from ct4
sql select stddev(c1) as b from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c1) as b from t1
sql select stddev(c1) as b from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select _wstartts, stddev(c1) as b from ct4 interval(1y)
sql select _wstartts, stddev(c1) as b from ct4 interval(1y)
print ===> $rows
if $rows != 4 then
return -1
endi
print =====sql : select _wstartts, stddev(c1) as b from t1 interval(1y)
sql select _wstartts, stddev(c1) as b from t1 interval(1y)
print ===> $rows
if $rows != 3 then
return -1
endi
print =====select _wstartts, stddev(c1) as b from ct4 where c1 <= 6 interval(180d)
sql select _wstartts, stddev(c1) as b from ct4 where c1 <= 6 interval(180d)
print ===> $rows
if $rows != 3 then
return -1
endi
print =====select _wstartts, stddev(c1) as b from t1 where c1 <= 6 interval(180d)
sql select _wstartts, stddev(c1) as b from t1 where c1 <= 6 interval(180d)
print ===> $rows
if $rows != 3 then
return -1
endi
print =====sql : select stddev(c1) a1, sum(c1) b1 from ct4
sql select stddev(c1) a1, sum(c1) b1 from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c1) a1, sum(c1) b1 from t1
sql select stddev(c1) a1, sum(c1) b1 from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c1)+sum(c1) b1 from ct4
sql select stddev(c1)+sum(c1) b1 from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c1)+sum(c1) b1 from t1
sql select stddev(c1)+sum(c1) b1 from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c2) from ct4
sql select stddev(c2) from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c2) from t1
sql select stddev(c2) from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c3) from ct4
sql select stddev(c3) from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c3) from t1
sql select stddev(c3) from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c4) from ct4
sql select stddev(c4) from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c4) from t1
sql select stddev(c4) from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c5) from ct4
sql select stddev(c5) from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c5) from t1
sql select stddev(c5) from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c6) from ct4
sql select stddev(c6) from ct4
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c6) from t1
sql select stddev(c6) from t1
print ===> $rows
if $rows != 1 then
return -1
endi
print =====sql : select stddev(c7) from ct4
sql_error select stddev(c7) from ct4
# print ===> $rows
# if $rows != 1 then
# return -1
# endi
print =====sql : select stddev(c7) from t1
sql_error select stddev(c7) from t1
# print ===> $rows
# if $rows != 1 then
# return -1
# endi
print =============== clear
sql drop database db
sql show databases
if $rows != 2 then
return -1
endi
system sh/exec.sh -n dnode1 -s stop -x SIGINT