cols in stream

This commit is contained in:
facetosea 2025-02-11 09:33:34 +00:00
parent 3c0121ef1a
commit fa203ca249
3 changed files with 13 additions and 2 deletions

View File

@ -7548,6 +7548,9 @@ static int32_t rewriteColsFunction(STranslateContext* pCxt, SNodeList** nodeList
SNodeList* pNewNodeList = NULL; SNodeList* pNewNodeList = NULL;
if (needRewrite) { if (needRewrite) {
if (pCxt->createStream) {
return TSDB_CODE_PAR_INVALID_COLS_FUNCTION;
}
code = nodesMakeList(&pNewNodeList); code = nodesMakeList(&pNewNodeList);
if (NULL == pNewNodeList) { if (NULL == pNewNodeList) {
return code; return code;

View File

@ -15,3 +15,5 @@ TSDB_CODE_UDF_FUNC_EXEC_FAILURE = (TAOS_DEF_ERROR_CODE | 0x290A)
TSDB_CODE_TSC_INTERNAL_ERROR = (TAOS_DEF_ERROR_CODE | 0x02FF) TSDB_CODE_TSC_INTERNAL_ERROR = (TAOS_DEF_ERROR_CODE | 0x02FF)
TSDB_CODE_PAR_SYNTAX_ERROR = (TAOS_DEF_ERROR_CODE | 0x2600) TSDB_CODE_PAR_SYNTAX_ERROR = (TAOS_DEF_ERROR_CODE | 0x2600)
TSDB_CODE_PAR_INVALID_COLS_FUNCTION = (TAOS_DEF_ERROR_CODE | 0x2687)

View File

@ -4,6 +4,7 @@ from util.log import *
from util.cases import * from util.cases import *
from util.sql import * from util.sql import *
from util.common import * from util.common import *
from util.tserror import *
import numpy as np import numpy as np
@ -935,8 +936,12 @@ class TDTestCase:
tdSql.checkCols(3) tdSql.checkCols(3)
tdSql.checkData(0, 0, 'd0') tdSql.checkData(0, 0, 'd0')
tdSql.checkData(0, 1, 1734574929000) tdSql.checkData(0, 1, 1734574929000)
tdSql.checkData(0, 2, 1) tdSql.checkData(0, 2, 1)
def stream_cols_test(self):
tdSql.error(f'CREATE STREAM last_col_s1 INTO last_col1 AS SELECT cols(last(ts), ts, c0) FROM meters PARTITION BY tbname INTERVAL(1s) SLIDING(1s);', TSDB_CODE_PAR_INVALID_COLS_FUNCTION)
tdSql.query(f'CREATE STREAM last_col_s INTO last_col AS SELECT last(ts), c0 FROM meters PARTITION BY tbname INTERVAL(1s) SLIDING(1s);')
def run(self): def run(self):
self.funcNestTest() self.funcNestTest()
self.funcSupperTableTest() self.funcSupperTableTest()
@ -947,6 +952,7 @@ class TDTestCase:
self.subquery_test() self.subquery_test()
self.window_test() self.window_test()
self.join_test() self.join_test()
self.stream_cols_test()
def stop(self): def stop(self):
tdSql.close() tdSql.close()