提交 7291f2bd 编写于 作者: G Ganlin Zhao

change interp linear behavior

上级 c8f069c6
......@@ -2020,7 +2020,7 @@ static void doKeepLinearInfo(STimeSliceOperatorInfo* pSliceInfo, const SSDataBlo
}
static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp* pExprSup, SSDataBlock* pResBlock) {
static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp* pExprSup, SSDataBlock* pResBlock, bool beforeTs) {
int32_t rows = pResBlock->info.rows;
blockDataEnsureCapacity(pResBlock, rows + 1);
// todo set the correct primary timestamp column
......@@ -2071,6 +2071,11 @@ static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp
SPoint end = pLinearInfo->end;
SPoint current = {.key = pSliceInfo->current};
// do not interpolate before ts range, only increate pSliceInfo->current
if (beforeTs && !pLinearInfo->isEndSet) {
return true;
}
if (!pLinearInfo->isStartSet || !pLinearInfo->isEndSet) {
hasInterp = false;
break;
......@@ -2319,7 +2324,7 @@ static SSDataBlock* doTimeslice(SOperatorInfo* pOperator) {
int64_t nextTs = *(int64_t*)colDataGetData(pTsCol, i + 1);
if (nextTs > pSliceInfo->current) {
while (pSliceInfo->current < nextTs && pSliceInfo->current <= pSliceInfo->win.ekey) {
if (!genInterpolationResult(pSliceInfo, &pOperator->exprSupp, pResBlock) && pSliceInfo->fillType == TSDB_FILL_LINEAR) {
if (!genInterpolationResult(pSliceInfo, &pOperator->exprSupp, pResBlock, false) && pSliceInfo->fillType == TSDB_FILL_LINEAR) {
break;
} else {
pSliceInfo->current =
......@@ -2343,7 +2348,7 @@ static SSDataBlock* doTimeslice(SOperatorInfo* pOperator) {
doKeepLinearInfo(pSliceInfo, pBlock, i);
while (pSliceInfo->current < ts && pSliceInfo->current <= pSliceInfo->win.ekey) {
if (!genInterpolationResult(pSliceInfo, &pOperator->exprSupp, pResBlock) && pSliceInfo->fillType == TSDB_FILL_LINEAR) {
if (!genInterpolationResult(pSliceInfo, &pOperator->exprSupp, pResBlock, true) && pSliceInfo->fillType == TSDB_FILL_LINEAR) {
break;
} else {
pSliceInfo->current =
......@@ -2372,7 +2377,7 @@ static SSDataBlock* doTimeslice(SOperatorInfo* pOperator) {
// except for fill(next), fill(linear)
while (pSliceInfo->current <= pSliceInfo->win.ekey && pSliceInfo->fillType != TSDB_FILL_NEXT &&
pSliceInfo->fillType != TSDB_FILL_LINEAR) {
genInterpolationResult(pSliceInfo, &pOperator->exprSupp, pResBlock);
genInterpolationResult(pSliceInfo, &pOperator->exprSupp, pResBlock, false);
pSliceInfo->current =
taosTimeAdd(pSliceInfo->current, pInterval->interval, pInterval->intervalUnit, pInterval->precision);
}
......
......@@ -908,224 +908,464 @@ class TDTestCase:
tdSql.checkData(0, 0, 0)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-01 23:59:59', '2020-02-02 00:00:03') every(1s) fill(linear)")
tdSql.checkRows(1)
tdSql.checkRows(4)
tdSql.checkData(0, 0, 0)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-01 23:59:59', '2020-02-02 00:00:05') every(1s) fill(linear)")
tdSql.checkRows(1)
tdSql.checkRows(6)
tdSql.checkData(0, 0, 0)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-01 23:59:59', '2020-02-02 00:00:08') every(1s) fill(linear)")
tdSql.checkRows(9)
tdSql.checkData(0, 0, 0)
tdSql.checkData(1, 0, 1)
tdSql.checkData(2, 0, 2)
tdSql.checkData(3, 0, 3)
tdSql.checkData(4, 0, 4)
tdSql.checkData(5, 0, 5)
tdSql.checkData(6, 0, 6)
tdSql.checkData(7, 0, 7)
tdSql.checkData(8, 0, 8)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.checkData(6, 0, None)
tdSql.checkData(7, 0, None)
tdSql.checkData(8, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:01', '2020-02-02 00:00:03') every(1s) fill(linear)")
tdSql.checkRows(0)
tdSql.checkRows(3)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:03', '2020-02-02 00:00:08') every(1s) fill(linear)")
tdSql.checkRows(6)
tdSql.checkData(0, 0, 3)
tdSql.checkData(1, 0, 4)
tdSql.checkData(2, 0, 5)
tdSql.checkData(3, 0, 6)
tdSql.checkData(4, 0, 7)
tdSql.checkData(5, 0, 8)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:05', '2020-02-02 00:00:10') every(1s) fill(linear)")
tdSql.checkRows(1)
tdSql.checkData(0, 0, 10)
tdSql.checkRows(6)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, 10)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:05', '2020-02-02 00:00:15') every(1s) fill(linear)")
tdSql.checkRows(1)
tdSql.checkData(0, 0, 10)
tdSql.checkRows(11)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, 10)
tdSql.checkData(6, 0, None)
tdSql.checkData(7, 0, None)
tdSql.checkData(8, 0, None)
tdSql.checkData(9, 0, None)
tdSql.checkData(10, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:05', '2020-02-02 00:00:18') every(1s) fill(linear)")
tdSql.checkRows(9)
tdSql.checkData(0, 0, 10)
tdSql.checkData(1, 0, 11)
tdSql.checkData(2, 0, 12)
tdSql.checkData(3, 0, 13)
tdSql.checkData(4, 0, 14)
tdSql.checkData(5, 0, 15)
tdSql.checkData(6, 0, 16)
tdSql.checkData(7, 0, 17)
tdSql.checkData(8, 0, 18)
tdSql.checkRows(14)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, 10)
tdSql.checkData(6, 0, None)
tdSql.checkData(7, 0, None)
tdSql.checkData(8, 0, None)
tdSql.checkData(9, 0, None)
tdSql.checkData(10, 0, None)
tdSql.checkData(11, 0, None)
tdSql.checkData(12, 0, None)
tdSql.checkData(13, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:05', '2020-02-02 00:00:20') every(1s) fill(linear)")
tdSql.checkRows(11)
tdSql.checkData(0, 0, 10)
tdSql.checkData(1, 0, 11)
tdSql.checkData(2, 0, 12)
tdSql.checkData(3, 0, 13)
tdSql.checkData(4, 0, 14)
tdSql.checkData(5, 0, 15)
tdSql.checkData(6, 0, 16)
tdSql.checkData(7, 0, 17)
tdSql.checkData(8, 0, 18)
tdSql.checkData(9, 0, 19)
tdSql.checkData(10, 0, 20)
tdSql.checkRows(16)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, 10)
tdSql.checkData(6, 0, None)
tdSql.checkData(7, 0, None)
tdSql.checkData(8, 0, None)
tdSql.checkData(9, 0, None)
tdSql.checkData(10, 0, None)
tdSql.checkData(11, 0, None)
tdSql.checkData(12, 0, None)
tdSql.checkData(13, 0, None)
tdSql.checkData(14, 0, None)
tdSql.checkData(15, 0, 20)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:09', '2020-02-02 00:00:11') every(1s) fill(linear)")
tdSql.checkRows(1)
tdSql.checkData(0, 0, 10)
tdSql.checkRows(3)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, 10)
tdSql.checkData(2, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:10', '2020-02-02 00:00:15') every(1s) fill(linear)")
tdSql.checkRows(1)
tdSql.checkRows(6)
tdSql.checkData(0, 0, 10)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:12', '2020-02-02 00:00:13') every(1s) fill(linear)")
tdSql.checkRows(0)
tdSql.checkRows(2)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:12', '2020-02-02 00:00:15') every(1s) fill(linear)")
tdSql.checkRows(0)
tdSql.checkRows(4)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:12', '2020-02-02 00:00:18') every(1s) fill(linear)")
tdSql.checkRows(7)
tdSql.checkData(0, 0, 12)
tdSql.checkData(1, 0, 13)
tdSql.checkData(2, 0, 14)
tdSql.checkData(3, 0, 15)
tdSql.checkData(4, 0, 16)
tdSql.checkData(5, 0, 17)
tdSql.checkData(6, 0, 18)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.checkData(6, 0, None)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:30', '2020-02-02 00:00:40') every(1s) fill(linear)")
tdSql.checkRows(11)
tdSql.checkData(0, 0, 30)
tdSql.checkData(1, 0, 31)
tdSql.checkData(2, 0, 32)
tdSql.checkData(3, 0, 33)
tdSql.checkData(4, 0, 34)
tdSql.checkData(5, 0, 35)
tdSql.checkData(6, 0, 36)
tdSql.checkData(7, 0, 37)
tdSql.checkData(8, 0, 38)
tdSql.checkData(9, 0, 39)
tdSql.checkData(10, 0, 40)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:25', '2020-02-02 00:00:45') every(1s) fill(linear)")
tdSql.checkRows(11)
tdSql.checkData(0, 0, 30)
tdSql.checkData(10, 0, 40)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:25', '2020-02-02 00:00:45') every(1s) fill(linear)")
tdSql.checkRows(11)
tdSql.checkData(0, 0, 30)
tdSql.checkData(10, 0, 40)
tdSql.checkRows(21)
tdSql.checkData(5, 0, 30)
tdSql.checkData(6, 0, 31)
tdSql.checkData(7, 0, 32)
tdSql.checkData(8, 0, 33)
tdSql.checkData(9, 0, 34)
tdSql.checkData(10, 0, 35)
tdSql.checkData(11, 0, 36)
tdSql.checkData(12, 0, 37)
tdSql.checkData(13, 0, 38)
tdSql.checkData(14, 0, 39)
tdSql.checkData(15, 0, 40)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:20', '2020-02-02 00:00:40') every(1s) fill(linear)")
tdSql.checkRows(21)
tdSql.checkData(0, 0, 20)
tdSql.checkData(10, 0, 30)
tdSql.checkData(11, 0, 31)
tdSql.checkData(12, 0, 32)
tdSql.checkData(13, 0, 33)
tdSql.checkData(14, 0, 34)
tdSql.checkData(15, 0, 35)
tdSql.checkData(16, 0, 36)
tdSql.checkData(17, 0, 37)
tdSql.checkData(18, 0, 38)
tdSql.checkData(19, 0, 39)
tdSql.checkData(20, 0, 40)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:30', '2020-02-02 00:00:50') every(1s) fill(linear)")
tdSql.checkRows(21)
tdSql.checkData(0, 0, 30)
tdSql.checkData(1, 0, 31)
tdSql.checkData(2, 0, 32)
tdSql.checkData(3, 0, 33)
tdSql.checkData(4, 0, 34)
tdSql.checkData(5, 0, 35)
tdSql.checkData(6, 0, 36)
tdSql.checkData(7, 0, 37)
tdSql.checkData(8, 0, 38)
tdSql.checkData(9, 0, 39)
tdSql.checkData(10, 0, 40)
tdSql.checkData(20, 0, 50)
tdSql.query(f"select interp(c0) from {dbname}.{tbname1} range('2020-02-02 00:00:20', '2020-02-02 00:00:50') every(1s) fill(linear)")
tdSql.checkRows(31)
tdSql.checkData(0, 0, 20)
tdSql.checkData(10, 0, 30)
tdSql.checkData(11, 0, 31)
tdSql.checkData(12, 0, 32)
tdSql.checkData(13, 0, 33)
tdSql.checkData(14, 0, 34)
tdSql.checkData(15, 0, 35)
tdSql.checkData(16, 0, 36)
tdSql.checkData(17, 0, 37)
tdSql.checkData(18, 0, 38)
tdSql.checkData(19, 0, 39)
tdSql.checkData(20, 0, 40)
tdSql.checkData(30, 0, 50)
# check c1
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-01 23:59:59', '2020-02-02 00:00:05') every(1s) fill(linear)")
tdSql.checkRows(0)
tdSql.checkRows(6)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:05') every(1s) fill(linear)")
tdSql.checkRows(0)
tdSql.checkRows(6)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:08') every(1s) fill(linear)")
tdSql.checkRows(0)
tdSql.checkRows(9)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.checkData(6, 0, None)
tdSql.checkData(7, 0, None)
tdSql.checkData(8, 0, None)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:10') every(1s) fill(linear)")
tdSql.checkRows(1)
tdSql.checkData(0, 0, 10)
tdSql.checkRows(11)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.checkData(6, 0, None)
tdSql.checkData(7, 0, None)
tdSql.checkData(8, 0, None)
tdSql.checkData(9, 0, None)
tdSql.checkData(10, 0, 10)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:15') every(1s) fill(linear)")
tdSql.checkRows(1)
tdSql.checkData(0, 0, 10)
tdSql.checkRows(16)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.checkData(6, 0, None)
tdSql.checkData(7, 0, None)
tdSql.checkData(8, 0, None)
tdSql.checkData(9, 0, None)
tdSql.checkData(10, 0, 10)
tdSql.checkData(11, 0, None)
tdSql.checkData(12, 0, None)
tdSql.checkData(13, 0, None)
tdSql.checkData(14, 0, None)
tdSql.checkData(15, 0, None)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:20') every(1s) fill(linear)")
tdSql.checkRows(1)
tdSql.checkData(0, 0, 10)
tdSql.checkRows(21)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.checkData(6, 0, None)
tdSql.checkData(7, 0, None)
tdSql.checkData(8, 0, None)
tdSql.checkData(9, 0, None)
tdSql.checkData(10, 0, 10)
tdSql.checkData(11, 0, None)
tdSql.checkData(12, 0, None)
tdSql.checkData(13, 0, None)
tdSql.checkData(14, 0, None)
tdSql.checkData(15, 0, None)
tdSql.checkData(16, 0, None)
tdSql.checkData(17, 0, None)
tdSql.checkData(18, 0, None)
tdSql.checkData(19, 0, None)
tdSql.checkData(20, 0, None)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:25') every(1s) fill(linear)")
tdSql.checkRows(1)
tdSql.checkData(0, 0, 10)
tdSql.checkRows(26)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.checkData(6, 0, None)
tdSql.checkData(7, 0, None)
tdSql.checkData(8, 0, None)
tdSql.checkData(9, 0, None)
tdSql.checkData(10, 0, 10)
tdSql.checkData(11, 0, None)
tdSql.checkData(12, 0, None)
tdSql.checkData(13, 0, None)
tdSql.checkData(14, 0, None)
tdSql.checkData(15, 0, None)
tdSql.checkData(16, 0, None)
tdSql.checkData(17, 0, None)
tdSql.checkData(18, 0, None)
tdSql.checkData(19, 0, None)
tdSql.checkData(20, 0, None)
tdSql.checkData(21, 0, None)
tdSql.checkData(22, 0, None)
tdSql.checkData(23, 0, None)
tdSql.checkData(24, 0, None)
tdSql.checkData(25, 0, None)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:30') every(1s) fill(linear)")
tdSql.checkRows(21)
tdSql.checkData(0, 0, 10)
tdSql.checkData(1, 0, 11)
tdSql.checkData(2, 0, 12)
tdSql.checkData(3, 0, 13)
tdSql.checkData(4, 0, 14)
tdSql.checkData(5, 0, 15)
tdSql.checkData(6, 0, 16)
tdSql.checkData(7, 0, 17)
tdSql.checkData(8, 0, 18)
tdSql.checkData(9, 0, 19)
tdSql.checkData(10, 0, 20)
tdSql.checkData(11, 0, 21)
tdSql.checkData(12, 0, 22)
tdSql.checkData(13, 0, 23)
tdSql.checkData(14, 0, 24)
tdSql.checkData(15, 0, 25)
tdSql.checkData(16, 0, 26)
tdSql.checkData(17, 0, 27)
tdSql.checkData(18, 0, 28)
tdSql.checkData(19, 0, 29)
tdSql.checkData(20, 0, 30)
tdSql.checkRows(31)
tdSql.checkData(0, 0, None)
tdSql.checkData(1, 0, None)
tdSql.checkData(2, 0, None)
tdSql.checkData(3, 0, None)
tdSql.checkData(4, 0, None)
tdSql.checkData(5, 0, None)
tdSql.checkData(6, 0, None)
tdSql.checkData(7, 0, None)
tdSql.checkData(8, 0, None)
tdSql.checkData(9, 0, None)
tdSql.checkData(10, 0, 10)
tdSql.checkData(11, 0, None)
tdSql.checkData(12, 0, None)
tdSql.checkData(13, 0, None)
tdSql.checkData(14, 0, None)
tdSql.checkData(15, 0, None)
tdSql.checkData(16, 0, None)
tdSql.checkData(17, 0, None)
tdSql.checkData(18, 0, None)
tdSql.checkData(19, 0, None)
tdSql.checkData(20, 0, None)
tdSql.checkData(21, 0, None)
tdSql.checkData(22, 0, None)
tdSql.checkData(23, 0, None)
tdSql.checkData(24, 0, None)
tdSql.checkData(25, 0, None)
tdSql.checkData(26, 0, None)
tdSql.checkData(27, 0, None)
tdSql.checkData(28, 0, None)
tdSql.checkData(29, 0, None)
tdSql.checkData(30, 0, 30)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:35') every(1s) fill(linear)")
tdSql.checkRows(21)
tdSql.checkData(0, 0, 10)
tdSql.checkData(20, 0, 30)
tdSql.checkRows(36)
tdSql.checkData(10, 0, 10)
tdSql.checkData(30, 0, 30)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:40') every(1s) fill(linear)")
tdSql.checkRows(31)
tdSql.checkRows(41)
tdSql.checkData(0, 0, 10)
tdSql.checkData(30, 0, 40)
tdSql.checkData(30, 0, 30)
tdSql.checkData(40, 0, 40)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:45') every(1s) fill(linear)")
tdSql.checkRows(36)
tdSql.checkRows(46)
tdSql.checkData(0, 0, 10)
tdSql.checkData(35, 0, 45)
tdSql.checkData(30, 0, 30)
tdSql.checkData(40, 0, 40)
tdSql.checkData(41, 0, 41)
tdSql.checkData(42, 0, 42)
tdSql.checkData(43, 0, 43)
tdSql.checkData(44, 0, 44)
tdSql.checkData(45, 0, 45)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:50') every(1s) fill(linear)")
tdSql.checkRows(36)
tdSql.checkRows(51)
tdSql.checkData(0, 0, 10)
tdSql.checkData(35, 0, 45)
tdSql.checkData(30, 0, 30)
tdSql.checkData(40, 0, 40)
tdSql.checkData(41, 0, 41)
tdSql.checkData(42, 0, 42)
tdSql.checkData(43, 0, 43)
tdSql.checkData(44, 0, 44)
tdSql.checkData(45, 0, 45)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:00:55') every(1s) fill(linear)")
tdSql.checkRows(36)
tdSql.checkRows(56)
tdSql.checkData(0, 0, 10)
tdSql.checkData(35, 0, 45)
tdSql.checkData(30, 0, 30)
tdSql.checkData(40, 0, 40)
tdSql.checkData(41, 0, 41)
tdSql.checkData(42, 0, 42)
tdSql.checkData(43, 0, 43)
tdSql.checkData(44, 0, 44)
tdSql.checkData(45, 0, 45)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:00', '2020-02-02 00:01:00') every(1s) fill(linear)")
tdSql.checkRows(51)
tdSql.checkRows(60)
tdSql.checkData(0, 0, 10)
tdSql.checkData(50, 0, 60)
tdSql.checkData(30, 0, 30)
tdSql.checkData(40, 0, 40)
tdSql.checkData(41, 0, 41)
tdSql.checkData(42, 0, 42)
tdSql.checkData(43, 0, 43)
tdSql.checkData(44, 0, 44)
tdSql.checkData(45, 0, 45)
tdSql.checkData(60, 0, 60)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:40', '2020-02-02 00:00:45') every(1s) fill(linear)")
tdSql.checkRows(6)
tdSql.checkData(0, 0, 40)
tdSql.checkData(1, 0, 41)
tdSql.checkData(2, 0, 42)
tdSql.checkData(3, 0, 43)
tdSql.checkData(4, 0, 44)
tdSql.checkData(5, 0, 45)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:35', '2020-02-02 00:00:50') every(1s) fill(linear)")
tdSql.checkRows(6)
tdSql.checkData(0, 0, 40)
tdSql.checkData(5, 0, 45)
tdSql.checkRows(16)
tdSql.checkData(5, 0, 40)
tdSql.checkData(6, 0, 41)
tdSql.checkData(7, 0, 42)
tdSql.checkData(8, 0, 43)
tdSql.checkData(9, 0, 44)
tdSql.checkData(10, 0, 45)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:35', '2020-02-02 00:00:55') every(1s) fill(linear)")
tdSql.checkRows(6)
tdSql.checkData(0, 0, 40)
tdSql.checkData(5, 0, 45)
tdSql.checkRows(21)
tdSql.checkData(5, 0, 40)
tdSql.checkData(6, 0, 41)
tdSql.checkData(7, 0, 42)
tdSql.checkData(8, 0, 43)
tdSql.checkData(9, 0, 44)
tdSql.checkData(10, 0, 45)
tdSql.query(f"select interp(c1) from {dbname}.{tbname1} range('2020-02-02 00:00:30', '2020-02-02 00:01:00') every(1s) fill(linear)")
tdSql.checkRows(31)
tdSql.checkData(0, 0, 30)
tdSql.checkData(10, 0, 40)
tdSql.checkData(11, 0, 41)
tdSql.checkData(12, 0, 42)
tdSql.checkData(13, 0, 43)
tdSql.checkData(14, 0, 44)
tdSql.checkData(15, 0, 45)
tdSql.checkData(30, 0, 60)
tdLog.printNoPrefix("==========step11:test multi-interp cases")
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册