You need to sign in or sign up before continuing.
提交 a5c5afb5 编写于 作者: W wangjiaming0909

fix: fill operator with desc ts order returned 1 more rows

上级 ec761444
...@@ -162,7 +162,6 @@ static void revisedFillStartKey(SFillOperatorInfo* pInfo, SSDataBlock* pBlock, i ...@@ -162,7 +162,6 @@ static void revisedFillStartKey(SFillOperatorInfo* pInfo, SSDataBlock* pBlock, i
int64_t ekey = pBlock->info.window.ekey; int64_t ekey = pBlock->info.window.ekey;
if (ekey > pInfo->pFillInfo->start) { if (ekey > pInfo->pFillInfo->start) {
ASSERT( taosFillNotStarted(pInfo->pFillInfo)); ASSERT( taosFillNotStarted(pInfo->pFillInfo));
taosFillUpdateStartTimestampInfo(pInfo->pFillInfo, ekey);
} else if (ekey < pInfo->pFillInfo->start) { } else if (ekey < pInfo->pFillInfo->start) {
int64_t t = ekey; int64_t t = ekey;
SInterval* pInterval = &pInfo->pFillInfo->interval; SInterval* pInterval = &pInfo->pFillInfo->interval;
...@@ -177,8 +176,9 @@ static void revisedFillStartKey(SFillOperatorInfo* pInfo, SSDataBlock* pBlock, i ...@@ -177,8 +176,9 @@ static void revisedFillStartKey(SFillOperatorInfo* pInfo, SSDataBlock* pBlock, i
} }
// todo time window chosen problem: t or prev value? // todo time window chosen problem: t or prev value?
taosFillUpdateStartTimestampInfo(pInfo->pFillInfo, t); ekey = t;
} }
taosFillUpdateStartTimestampInfo(pInfo->pFillInfo, ekey - pInfo->pFillInfo->interval.sliding);
} }
} }
......
...@@ -130,9 +130,18 @@ class TDTestCase: ...@@ -130,9 +130,18 @@ class TDTestCase:
for j in range(0,60): for j in range(0,60):
tdSql.checkData(i*1500+j, 1, None) tdSql.checkData(i*1500+j, 1, None)
def test_fill_with_order_by(self):
sql = "select _wstart, _wend, count(ts), sum(c1) from meters where ts > '2018-11-25 00:00:00.000' and ts < '2018-11-26 00:00:00.00' interval(1d) fill(NULL) order by _wstart"
tdSql.query(sql)
tdSql.checkRows(1)
sql = "select _wstart, _wend, count(ts), sum(c1) from meters where ts > '2018-11-25 00:00:00.000' and ts < '2018-11-26 00:00:00.00' interval(1d) fill(NULL) order by _wstart desc"
tdSql.query(sql)
tdSql.checkRows(1)
def run(self): def run(self):
self.prepareTestEnv() self.prepareTestEnv()
self.test_partition_by_with_interval_fill_prev_new_group_fill_error() self.test_partition_by_with_interval_fill_prev_new_group_fill_error()
self.test_fill_with_order_by()
def stop(self): def stop(self):
tdSql.close() tdSql.close()
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册