Merge pull request #23070 from taosdata/szhou/fix-td4070
fix: set null when creating empty input for count
This commit is contained in:
commit
222deba430
|
@ -334,6 +334,7 @@ static int32_t createDataBlockForEmptyInput(SOperatorInfo* pOperator, SSDataBloc
|
|||
colInfo.info.type = TSDB_DATA_TYPE_NULL;
|
||||
colInfo.info.bytes = 1;
|
||||
|
||||
|
||||
SExprInfo* pOneExpr = &pOperator->exprSupp.pExprInfo[i];
|
||||
for (int32_t j = 0; j < pOneExpr->base.numOfParams; ++j) {
|
||||
SFunctParam* pFuncParam = &pOneExpr->base.pParam[j];
|
||||
|
@ -353,6 +354,10 @@ static int32_t createDataBlockForEmptyInput(SOperatorInfo* pOperator, SSDataBloc
|
|||
}
|
||||
|
||||
blockDataEnsureCapacity(pBlock, pBlock->info.rows);
|
||||
for (int32_t i = 0; i < blockDataGetNumOfCols(pBlock); ++i) {
|
||||
SColumnInfoData* pColInfoData = taosArrayGet(pBlock->pDataBlock, i);
|
||||
colDataSetNULL(pColInfoData, 0);
|
||||
}
|
||||
*ppBlock = pBlock;
|
||||
|
||||
return TSDB_CODE_SUCCESS;
|
||||
|
|
|
@ -993,6 +993,7 @@
|
|||
,,y,script,./test.sh -f tsim/query/udf_with_const.sim
|
||||
,,y,script,./test.sh -f tsim/query/join_interval.sim
|
||||
,,y,script,./test.sh -f tsim/query/join_pk.sim
|
||||
,,y,script,./test.sh -f tsim/query/count_spread.sim
|
||||
,,y,script,./test.sh -f tsim/query/unionall_as_table.sim
|
||||
,,y,script,./test.sh -f tsim/query/multi_order_by.sim
|
||||
,,y,script,./test.sh -f tsim/query/sys_tbname.sim
|
||||
|
|
|
@ -0,0 +1,24 @@
|
|||
system sh/stop_dnodes.sh
|
||||
system sh/deploy.sh -n dnode1 -i 1
|
||||
system sh/exec.sh -n dnode1 -s start
|
||||
sql connect
|
||||
|
||||
sql create database test;
|
||||
sql use test;
|
||||
sql create table st(ts timestamp, f int) tags(t int);
|
||||
sql insert into ct1 using st tags(1) values(now, 0)(now+1s, 1)(now+2s, 10)(now+3s, 11)
|
||||
sql insert into ct2 using st tags(2) values(now+2s, 2)(now+3s, 3)
|
||||
sql insert into ct3 using st tags(3) values(now+4s, 4)(now+5s, 5)
|
||||
sql insert into ct4 using st tags(4) values(now+6s, 6)(now+7s, 7)
|
||||
|
||||
sql select count(*), spread(ts) from st where tbname='ct1'
|
||||
print $data00, $data01
|
||||
if $data00 != @4@ then
|
||||
return -1
|
||||
endi
|
||||
if $data01 != @3000.000000000@ then
|
||||
return -1
|
||||
endi
|
||||
|
||||
sql drop database test;
|
||||
system sh/exec.sh -n dnode1 -s stop -x SIGINT
|
Loading…
Reference in New Issue