#### session windows system sh/stop_dnodes.sh system sh/deploy.sh -n dnode1 -i 1 system sh/cfg.sh -n dnode1 system sh/exec.sh -n dnode1 -s start $loop_cnt = 0 check_dnode_ready: $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 endi sql connect $vgroups = 4 $dbNamme = d0 print ====> create database d1 precision 'us' sql create database d1 precision 'us' sql use d1 sql create table dev_001 (ts timestamp ,i timestamp ,j int) sql insert into dev_001 values(1623046993681000,now,1)(1623046993681001,now+1s,2)(1623046993681002,now+2s,3)(1623046993681004,now+5s,4) sql create table secondts(ts timestamp,t2 timestamp,i int) sql insert into secondts values(1623046993681000,now,1)(1623046993681001,now+1s,2)(1623046993681002,now+2s,3)(1623046993681004,now+5s,4) print ====> create database $dbNamme vgroups $vgroups sql create database $dbNamme vgroups $vgroups sql show databases print $data00 $data01 $data02 $data03 $data04 $data05 $data06 $data07 $data08 $data09 print $data10 $data11 $data12 $data13 $data14 $data15 $data16 $data17 $data18 $data19 #print $data20 $data21 $data22 $data23 $data24 $data25 $data26 $data27 $data28 $data29 sql use $dbNamme print =============== create super table, child table and insert data sql create table if not exists st (ts timestamp, tagtype int) tags(dev nchar(50), tag2 binary(16)) sql create table if not exists dev_001 using st tags("dev_01", "tag_01") sql create table if not exists dev_002 using st tags("dev_02", "tag_02") sql INSERT INTO dev_001 VALUES('2020-05-13 10:00:00.000', 1) sql INSERT INTO dev_001 VALUES('2020-05-13 10:00:00.005', 2) sql INSERT INTO dev_001 VALUES('2020-05-13 10:00:00.011', 3) sql INSERT INTO dev_001 VALUES('2020-05-13 10:00:01.011', 4) sql INSERT INTO dev_001 VALUES('2020-05-13 10:00:01.611', 5) sql INSERT INTO dev_001 VALUES('2020-05-13 10:00:02.612', 6) sql INSERT INTO dev_001 VALUES('2020-05-13 10:01:02.612', 7) sql INSERT INTO dev_001 VALUES('2020-05-13 10:02:02.612', 8) sql INSERT INTO dev_001 VALUES('2020-05-13 10:03:02.613', 9) sql INSERT INTO dev_001 VALUES('2020-05-13 11:00:00.000', 10) sql INSERT INTO dev_001 VALUES('2020-05-13 12:00:00.000', 11) sql INSERT INTO dev_001 VALUES('2020-05-13 13:00:00.001', 12) sql INSERT INTO dev_001 VALUES('2020-05-14 13:00:00.001', 13) sql INSERT INTO dev_001 VALUES('2020-05-15 14:00:00.000', 14) sql INSERT INTO dev_001 VALUES('2020-05-20 10:00:00.000', 15) sql INSERT INTO dev_001 VALUES('2020-05-27 10:00:00.001', 16) sql INSERT INTO dev_002 VALUES('2020-05-13 10:00:00.000', 1) sql INSERT INTO dev_002 VALUES('2020-05-13 10:00:00.005', 2) sql INSERT INTO dev_002 VALUES('2020-05-13 10:00:00.009', 3) sql INSERT INTO dev_002 VALUES('2020-05-13 10:00:00.0021', 4) sql INSERT INTO dev_002 VALUES('2020-05-13 10:00:00.031', 5) sql INSERT INTO dev_002 VALUES('2020-05-13 10:00:00.036', 6) sql INSERT INTO dev_002 VALUES('2020-05-13 10:00:00.51', 7) $loop_test = 0 loop_test_pos: sql use $dbNamme # session(ts,5a) print ====> select count(*) from dev_001 session(ts,5a) sql select _wstartts, count(*) from dev_001 session(ts,5a) print ====> rows: $rows print ====> $data00 $data01 $data02 $data03 $data04 $data05 print ====> $data10 $data11 $data12 $data13 $data14 $data15 print ====> $data20 $data21 $data22 $data23 $data24 $data25 print ====> $data30 $data31 $data32 $data33 $data34 $data35 print ====> $data40 $data41 $data42 $data43 $data44 $data45 print ====> $data50 $data51 $data52 $data53 $data54 $data55 print ====> $data60 $data61 $data62 $data63 $data64 $data65 print ====> $data70 $data71 $data72 $data73 $data74 $data75 print ====> $data80 $data81 $data82 $data83 $data84 $data85 print ====> $data90 $data91 $data92 $data93 $data94 $data95 if $rows != 15 then return -1 endi if $data01 != 2 then return -1 endi # #print ====> select count(*) from (select * from dev_001) session(ts,5a) #sql select _wstartts, count(*) from (select * from dev_001) session(ts,5a) #if $rows != 15 then # return -1 #endi #if $data01 != 2 then # return -1 #endi print ====> select count(*) from dev_001 session(ts,1s) sql select _wstartts, count(*) from dev_001 session(ts,1s) if $rows != 12 then return -1 endi if $data01 != 5 then return -1 endi #print ====> select count(*) from (select * from dev_001) session(ts,1s) #sql select _wstartts, count(*) from (select * from dev_001) session(ts,1s) #if $rows != 12 then # return -1 #endi #if $data01 != 5 then # return -1 #endi print ====> select count(*) from dev_001 session(ts,1000a) sql select _wstartts, count(*) from dev_001 session(ts,1000a) if $rows != 12 then return -1 endi if $data01 != 5 then return -1 endi #print ====> select count(*) from (select * from dev_001) session(ts,1000a) #sql select _wstartts, count(*) from (select * from dev_001) session(ts,1000a) #if $rows != 12 then # return -1 #endi #if $data01 != 5 then # return -1 #endi print ====> select count(*) from dev_001 session(ts,1m) sql select _wstartts, count(*) from dev_001 session(ts,1m) if $rows != 9 then return -1 endi if $data01 != 8 then return -1 endi #print ====> select count(*) from (select * from dev_001) session(ts,1m) #sql select _wstartts, count(*) from (select * from dev_001) session(ts,1m) #if $rows != 9 then # return -1 #endi #if $data01 != 8 then # return -1 #endi print ====> select count(*) from dev_001 session(ts,1h) sql select _wstartts, count(*) from dev_001 session(ts,1h) if $rows != 6 then return -1 endi if $data01 != 11 then return -1 endi #print ====> select count(*) from (select * from dev_001) session(ts,1h) #sql select _wstartts, count(*) from (select * from dev_001) session(ts,1h) #if $rows != 6 then # return -1 #endi #if $data01 != 11 then # return -1 #endi print ====> select count(*) from dev_001 session(ts,1d) sql select _wstartts, count(*) from dev_001 session(ts,1d) if $rows != 4 then return -1 endi if $data01 != 13 then return -1 endi #print ====> select count(*) from (select * from dev_001) session(ts,1d) #sql select _wstartts, count(*) from (select * from dev_001) session(ts,1d) #if $rows != 4 then # return -1 #endi #if $data01 != 13 then # return -1 #endi print ====> select count(*) from dev_001 session(ts,1w) sql select _wstartts, count(*) from dev_001 session(ts,1w) if $rows != 2 then return -1 endi if $data01 != 15 then return -1 endi #print ====> select count(*) from (select * from dev_001) session(ts,1w) #sql select _wstartts, count(*) from (select * from dev_001) session(ts,1w) #if $rows != 2 then # return -1 #endi #if $data01 != 15 then # return -1 #endi #print ====> leastsquares not supported yet. #print ====> select count(*),first(tagtype),last(tagtype),avg(tagtype),sum(tagtype),min(tagtype),max(tagtype),leastsquares(tagtype, 1, 1),spread(tagtype),stddev(tagtype),percentile(tagtype,0) from dev_001 where ts <'2020-05-20 0:0:0' session(ts,1d) #sql select count(*),first(tagtype),last(tagtype),avg(tagtype),sum(tagtype),min(tagtype),max(tagtype),leastsquares(tagtype, 1, 1),spread(tagtype),stddev(tagtype),percentile(tagtype,0) from dev_001 where ts <'2020-05-20 0:0:0' session(ts,1d) #if $rows != 2 then # return -1 #endi #if $data01 != 13 then # return -1 #endi #if $data02 != 1 then # return -1 #endi #if $data03 != 13 then # return -1 #endi #if $data04 != 7 then # return -1 #endi #if $data05 != 91 then # return -1 #endi #if $data06 != 1 then # return -1 #endi #if $data07 != 13 then # return -1 #endi #if $data08 != @{slop:1.000000, intercept:0.000000}@ then # return -1 #endi #if $data09 != 12 then # return -1 #endi # $data0-10 != 3.741657387 # $data0-11 != 1 # $data1-11 != 14 print ====> select count(*),first(tagtype),last(tagtype),avg(tagtype),sum(tagtype),min(tagtype),max(tagtype),leastsquares(tagtype, 1, 1) from (select * from dev_001 where ts <'2020-05-20 0:0:0') session(ts,1d) #sql select count(*),first(tagtype),last(tagtype),avg(tagtype),sum(tagtype),min(tagtype),max(tagtype),leastsquares(tagtype, 1, 1) from (select * from dev_001 where ts <'2020-05-20 0:0:0') session(ts,1d) #if $rows != 2 then # return -1 #endi #if $data01 != 13 then # return -1 #endi #if $data02 != 1 then # return -1 #endi #if $data03 != 13 then # return -1 #endi #if $data04 != 7 then # return -1 #endi #if $data05 != 91 then # return -1 #endi #if $data06 != 1 then # return -1 #endi #if $data07 != 13 then # return -1 #endi #if $data08 != @{slop:1.000000, intercept:0.000000}@ then # return -1 #endi print ================> syntax error check not active ================> reactive sql_error select * from dev_001 session(ts,1w) sql select count(*) from st session(ts,1w) sql_error select count(*) from dev_001 group by tagtype session(ts,1w) sql select count(*) from dev_001 session(ts,1n) sql select count(*) from dev_001 session(ts,1y) sql select count(*) from dev_001 session(ts,0s) sql_error select count(*) from dev_001 session(i,1y) sql_error select count(*) from dev_001 session(ts,1d) where ts <'2020-05-20 0:0:0' print ====> create database d1 precision 'us' sql create database d1 precision 'us' sql use d1 sql create table dev_001 (ts timestamp ,i timestamp ,j int) sql insert into dev_001 values(1623046993681000,now,1)(1623046993681001,now+1s,2)(1623046993681002,now+2s,3)(1623046993681004,now+5s,4) print ====> select count(*) from dev_001 session(ts,1u) sql select _wstartts, count(*) from dev_001 session(ts,1u) print rows: $rows print $data00 $data01 $data02 $data03 print $data10 $data11 $data12 $data13 print $data20 $data21 $data22 $data23 print $data30 $data31 $data32 $data33 if $rows != 4 then print expect 2, actual: $rows return -1 endi if $data01 != 1 then return -1 endi #sql_error select count(*) from dev_001 session(i,1s) sql create table secondts(ts timestamp,t2 timestamp,i int) #sql_error select count(*) from secondts session(t2,2s) if $loop_test == 0 then 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 $loop_test = 1 goto loop_test_pos endi #system sh/exec.sh -n dnode1 -s stop -x SIGINT