$loop_all = 0
looptest:

system sh/stop_dnodes.sh
system sh/deploy.sh -n dnode1 -i 1
system sh/exec.sh -n dnode1 -s start
#==system sh/exec.sh -n dnode1 -s start -v

sleep 1000
sql connect

sql drop stream if exists streams1;
sql drop stream if exists streams2;
sql drop stream if exists streams3;
sql drop stream if exists streams4;
sql drop stream if exists streams5;
sql drop database if exists test1;
sql create database test1  vgroups 1;
sql use test1;
sql create table t1(ts timestamp, a int, b int , c int, d double, s varchar(20));
sql create stream streams1 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt1 as select  _wstart as ts, max(a), sum(b), count(*) from t1 where ts >= 1648791210000 and ts < 1648791261000 interval(1s) fill(NULL);
sql create stream streams2 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt2 as select  _wstart as ts, max(a), sum(b), count(*) from t1 where ts >= 1648791210000 and ts < 1648791261000 interval(1s) fill(value,100,200,300);
sql create stream streams3 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt3 as select  _wstart as ts, max(a), sum(b), count(*) from t1 where ts >= 1648791210000 and ts < 1648791261000 interval(1s) fill(next);
sql create stream streams4 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt4 as select  _wstart as ts, max(a), sum(b), count(*) from t1 where ts >= 1648791210000 and ts < 1648791261000 interval(1s) fill(prev);
sql create stream streams5 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt5 as select  _wstart as ts, max(a), sum(b), count(*) from t1 where ts >= 1648791210000 and ts < 1648791261000 interval(1s) fill(linear);

sql insert into t1 values(1648791210000,0,0,0,0.0,'aaa');
sql insert into t1 values(1648791213000,1,1,1,1.0,'bbb');
sql insert into t1 values(1648791215000,5,5,5,5.0,'ccc');
sql insert into t1 values(1648791217000,6,6,6,6.0,'ddd');

$loop_count = 0

loop0:
sleep 1000

$loop_count = $loop_count + 1
if $loop_count == 10 then
  return -1
endi

sql select * from streamt1 order by ts;

if $rows != 8 then
  print =====rows=$rows
  goto loop0
endi


sql delete from t1 where ts = 1648791213000;

$loop_count = 0

loop2:
sleep 1000

$loop_count = $loop_count + 1
if $loop_count == 10 then
  return -1
endi


sql select * from streamt1 order by ts;

if $rows != 8 then
  print ====streamt1=rows1=$rows
  goto loop2
endi
if $data31 != NULL then
  print ====streamt1=data31=$data31
  goto loop2
endi

sql select * from streamt2 order by ts;

if $rows != 8 then
  print ====streamt2=rows2=$rows
  goto loop2
endi
if $data31 != 100 then
  print ====streamt2=data31=$data31
  goto loop2
endi

sql select * from streamt3 order by ts;

if $rows != 8 then
  print ====streamt3=rows3=$rows
  goto loop2
endi
if $data31 != 5 then
  print ====streamt3=data31=$data31
  goto loop2
endi

sql select * from streamt4 order by ts;

if $rows != 8 then
  print ====streamt4=rows4=$rows
  goto loop2
endi
if $data31 != 0 then
  print ====streamt4=data31=$data31
  goto loop2
endi

sql select * from streamt5 order by ts;

if $rows != 8 then
  print ====streamt5=rows5=$rows
  goto loop2
endi
if $data31 != 3 then
  print ====streamt5=data31=$data31
  goto loop2
endi


sql insert into t1 values(1648791212000,5,5,5,5.0,'eee');
sql insert into t1 values(1648791213000,6,6,6,6.0,'fff');

$loop_count = 0

loop3:
sleep 1000

$loop_count = $loop_count + 1
if $loop_count == 10 then
  return -1
endi

sql select * from streamt1 order by ts;

if $data21 != 5 then
  print ====133=rows=$rows
  goto loop3
endi
if $data31 != 6 then
  print ====137=rows=$rows
  goto loop3
endi


sql delete from t1 where ts >= 1648791211000 and ts <= 1648791214000;

$loop_count = 0

loop4:
sleep 1000

$loop_count = $loop_count + 1
if $loop_count == 10 then
  return -1
endi

sql select * from streamt1 order by ts;

if $rows != 8 then
  print ====streamt1=rows1=$rows
  goto loop4
endi
if $data31 != NULL then
  print ====streamt1=data31=$data31
  goto loop4
endi

sql select * from streamt2 order by ts;

if $rows != 8 then
  print ====streamt2=rows2=$rows
  goto loop4
endi
if $data31 != 100 then
  print ====streamt2=data31=$data31
  goto loop4
endi

sql select * from streamt3 order by ts;

if $rows != 8 then
  print ====streamt3=rows3=$rows
  goto loop4
endi
if $data31 != 5 then
  print ====streamt3=data31=$data31
  goto loop4
endi

sql select * from streamt4 order by ts;

if $rows != 8 then
  print ====streamt4=rows4=$rows
  goto loop4
endi
if $data31 != 0 then
  print ====streamt4=data31=$data31
  goto loop4
endi

sql select * from streamt5 order by ts;

if $rows != 8 then
  print ====streamt5=rows5=$rows
  goto loop4
endi
if $data31 != 3 then
  print ====streamt5=data31=$data31
  goto loop4
endi



sql drop stream if exists streams6;
sql drop stream if exists streams7;
sql drop stream if exists streams8;
sql drop stream if exists streams9;
sql drop stream if exists streams10;
sql drop database if exists test6;
sql create database test6  vgroups 1;
sql use test6;
sql create stable st(ts timestamp, a int, b int , c int, d double, s varchar(20)) tags(ta int,tb int,tc int);
sql create table t1 using st tags(1,1,1);
sql create table t2 using st tags(1,1,1);
sql create stream streams6 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt6 as select  _wstart as ts, max(a), sum(b), count(*) from st where ts >= 1648791210000 and ts < 1648791261000 interval(1s) fill(NULL);
sql create stream streams7 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt7 as select  _wstart as ts, max(a), sum(b), count(*) from st where ts >= 1648791210000 and ts < 1648791261000 interval(1s) fill(value,100,200,300);
sql create stream streams8 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt8 as select  _wstart as ts, max(a), sum(b), count(*) from st where ts >= 1648791210000 and ts < 1648791261000 interval(1s) fill(next);
sql create stream streams9 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt9 as select  _wstart as ts, max(a), sum(b), count(*) from st where ts >= 1648791210000 and ts < 1648791261000 interval(1s) fill(prev);
sql create stream streams10 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt10 as select  _wstart as ts, max(a), sum(b), count(*) from st where ts >= 1648791210000 and ts < 1648791261000 interval(1s) fill(linear);

sql insert into t1 values(1648791210000,1,1,1,1.0,'aaa');
sql insert into t1 values(1648791215000,6,8,8,8.0,'bbb');
sql insert into t1 values(1648791220000,11,10,10,10.0,'ccc');
sql insert into t1 values(1648791221000,6,6,6,6.0,'fff');

sql insert into t2 values(1648791212000,4,4,4,4.0,'ddd');
sql insert into t2 values(1648791214000,5,5,5,5.0,'eee');
sql insert into t2 values(1648791216000,2,2,2,2.0,'bbb');
sql insert into t2 values(1648791222000,6,6,6,6.0,'fff');

$loop_count = 0

loop5:
sleep 1000

$loop_count = $loop_count + 1
if $loop_count == 10 then
  return -1
endi

sql select * from streamt6 order by ts;

if $rows != 13 then
  print ====streamt6=rows1=$rows
  goto loop5
endi
if $data21 != 4 then
  print ====streamt6=data21=$data21
  goto loop5
endi

sql delete from t2;
print delete from t2;

$loop_count = 0

loop6:

sleep 1000

$loop_count = $loop_count + 1
if $loop_count == 10 then
  return -1
endi

sql select * from streamt6 order by ts;

if $rows != 12 then
  print ====streamt6=rows2=$rows
  goto loop6
endi
if $data31 != NULL then
  print ====streamt6=data31=$data31
  goto loop6
endi


sql select * from streamt7 order by ts;

if $rows != 12 then
  print ====streamt7=rows2=$rows
  goto loop6
endi
if $data31 != 100 then
  print ====streamt7=data31=$data31
  goto loop6
endi

sql select * from streamt8 order by ts;

if $rows != 12 then
  print ====streamt8=rows3=$rows
  goto loop6
endi
if $data31 != 6 then
  print ====streamt8=data31=$data31
  goto loop6
endi

sql select * from streamt9 order by ts;

if $rows != 12 then
  print ====streamt9=rows4=$rows
  goto loop6
endi
if $data31 != 1 then
  print ====streamt9=data31=$data31
  goto loop6
endi

sql select * from streamt10 order by ts;

if $rows != 12 then
  print ====streamt10=rows5=$rows
  goto loop6
endi
if $data21 != 3 then
  print ====streamt10=data21=$data21
  goto loop6
endi
if $data31 != 4 then
  print ====streamt10=data31=$data31
  goto loop6
endi
if $data71 != 8 then
  print ====streamt10=data71=$data71
  goto loop6
endi
if $data91 != 10 then
  print ====streamt10=data91=$data91
  goto loop6
endi





sql drop stream if exists streams11;
sql drop stream if exists streams12;
sql drop stream if exists streams13;
sql drop stream if exists streams14;
sql drop stream if exists streams15;
sql drop database if exists test7;
sql create database test7  vgroups 1;
sql use test7;
sql create table t1(ts timestamp, a int, b int , c int, d double, s varchar(20));
sql create stream streams11 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt11 as select  _wstart as ts, avg(a), count(*), timezone(), to_iso8601(1) from t1 where ts >= 1648791210000 and ts < 1648791240000 interval(1s) fill(NULL);
sql create stream streams12 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt12 as select  _wstart as ts, avg(a), count(*), timezone(), to_iso8601(1) from t1 where ts >= 1648791210000 and ts < 1648791240000 interval(1s) fill(value,100.0,200);
sql create stream streams13 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt13 as select  _wstart as ts, avg(a), count(*), timezone(), to_iso8601(1) from t1 where ts >= 1648791210000 and ts < 1648791240000 interval(1s) fill(next);
sql create stream streams14 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt14 as select  _wstart as ts, avg(a), count(*), timezone(), to_iso8601(1) from t1 where ts >= 1648791210000 and ts < 1648791240000 interval(1s) fill(prev);
sql create stream streams15 trigger at_once IGNORE EXPIRED 0 IGNORE UPDATE 0   into streamt15 as select  _wstart as ts, avg(a), count(*), timezone(), to_iso8601(1) from t1 where ts >= 1648791210000 and ts < 1648791240000 interval(1s) fill(linear);


sql insert into t1 values(1648791210000,1,1,1,1.0,'aaa');
sql insert into t1 values(1648791210001,1,1,1,1.0,'aaa');

sql insert into t1 values(1648791215000,2,2,2,2.0,'bbb');
sql insert into t1 values(1648791220000,3,3,3,3.0,'ccc');
sql insert into t1 values(1648791225000,4,4,4,4.0,'fff');

sql insert into t1 values(1648791230000,5,5,5,5.0,'ddd');
sql insert into t1 values(1648791230001,6,6,6,6.0,'eee');
sql insert into t1 values(1648791230002,7,7,7,7.0,'fff');

$loop_count = 0

loop7:
sleep 1000

$loop_count = $loop_count + 1
if $loop_count == 20 then
  return -1
endi

sql select * from streamt11 order by ts;

if $rows != 21 then
  print ====streamt11=rows3=$rows
  goto loop7
endi

sql select * from streamt12 order by ts;

if $rows != 21 then
  print ====streamt12=rows3=$rows
  goto loop7
endi

sql select * from streamt13 order by ts;

if $rows != 21 then
  print ====streamt13=rows3=$rows
  goto loop7
endi

sql select * from streamt14 order by ts;

if $rows != 21 then
  print ====streamt14=rows3=$rows
  goto loop7
endi

sql select * from streamt15 order by ts;

if $rows != 21 then
  print ====streamt15=rows3=$rows
  goto loop7
endi

sql delete from t1 where ts > 1648791210001 and ts < 1648791230000;

$loop_count = 0

loop8:
sleep 1000

$loop_count = $loop_count + 1
if $loop_count == 20 then
  return -1
endi

sql select * from streamt11 order by ts;

if $rows != 21 then
  print ====streamt11=rows3=$rows
  goto loop8
endi

if $data12 != NULL then
  print ====streamt11=3=data01=$data01
  goto loop8
endi

if $data[19][2] != NULL then
  print ====streamt11=3=data[19][2]=$data[19][2]
  goto loop8
endi

sql select * from streamt12 order by ts;

if $rows != 21 then
  print ====streamt12=rows3=$rows
  goto loop8
endi

if $data12 != 200 then
  print ====streamt12=3=data12=$data12
  goto loop8
endi

if $data[19][2] != 200 then
  print ====streamt12=3=data[19][2]=$data[19][2]
  goto loop8
endi

sql select * from streamt13 order by ts;

if $rows != 21 then
  print ====streamt13=rows3=$rows
  goto loop8
endi

if $data12 != 3 then
  print ====streamt13=3=data12=$data12
  goto loop8
endi

if $data[19][2] != 3 then
  print ====streamt13=3=data[19][2]=$data[19][2]
  goto loop8
endi


sql select * from streamt14 order by ts;

if $rows != 21 then
  print ====streamt14=rows3=$rows
  goto loop8
endi

if $data12 != 2 then
  print ====streamt14=3=data12=$data12
  goto loop8
endi

if $data[19][2] != 2 then
  print ====streamt14=3=data[19][2]=$data[19][2]
  goto loop8
endi


sql select * from streamt15 order by ts;

if $rows != 21 then
  print ====streamt15=rows3=$rows
  goto loop8
endi

if $data12 != 2 then
  print ====streamt15=3=data12=$data12
  goto loop8
endi

if $data[19][2] != 2 then
  print ====streamt15=3=data[19][2]=$data[19][2]
  goto loop8
endi



#==system sh/exec.sh -n dnode1 -s stop -x SIGINT
#==print =============== check
#==$null=

#==system_content sh/checkValgrind.sh -n dnode1 
#==print cmd return result ----> [ $system_content ]
#==if $system_content > 0 then
#==  return -1
#==endi 

#==if $system_content == $null then
#==  return -1
#==endi
#==return 1




sql drop stream if exists streams0;
sql drop stream if exists streams1;
sql drop stream if exists streams2;
sql drop stream if exists streams3;
sql drop stream if exists streams4;
sql drop stream if exists streams5;
sql drop stream if exists streams6;
sql drop stream if exists streams7;
sql drop stream if exists streams8;
sql drop stream if exists streams9;
sql drop stream if exists streams10;
sql drop stream if exists streams11;
sql drop stream if exists streams12;
sql drop stream if exists streams13;
sql drop stream if exists streams14;
sql drop stream if exists streams15;

sql use test1;
sql select * from t1;
print $data00

$loop_all = $loop_all + 1
print ============loop_all=$loop_all

system sh/stop_dnodes.sh

#goto looptest