提交 257353e2 编写于 作者: S slzhou

fix: more strict query time range

上级 f1397e4f
......@@ -6613,7 +6613,7 @@ static int32_t validateMaxQueryTimeRange(SSqlObj* pSql, SQueryInfo* pQueryInfo)
STableComInfo tinfo = tscGetTableInfo(pTableMetaInfo->pTableMeta);
int64_t maxTimeRange = convertTimePrecision(tsMaxQueryTimeRange * 1000, TSDB_TIME_PRECISION_MILLI, tinfo.precision);
uint64_t queryTimeRange = pQueryInfo->window.ekey - pQueryInfo->window.skey;
if (queryTimeRange > maxTimeRange) {
if (queryTimeRange > (maxTimeRange - 1)) {
return TSDB_CODE_TSC_EXCEED_QUERY_TIME_RANGE;
}
return TSDB_CODE_SUCCESS;
......
......@@ -18,21 +18,21 @@ sql create table t (ts timestamp, f int)
sql insert into t values ( $ts , 1)( $ts + 1s , 2)( $ts + 2s , 3)( $ts + 3s, 4)( $ts + 4s, 5)
sql select * from t where ts >= $ts and ts <= $ts + 3000
sql select * from t where ts >= $ts and ts <= $ts + 3000 order by ts desc
sql select * from t where ts > $ts and ts <= $ts + 3001
sql select * from t where ts > $ts and ts <= $ts + 3001 order by ts desc
sql select * from t where ts > $ts and ts < $ts + 3000
sql select * from t where ts > $ts and ts < $ts + 3000 order by ts desc
sql select * from t where ts >= $ts and ts <= $ts + 2999
sql select * from t where ts >= $ts and ts <= $ts + 2999 order by ts desc
sql select * from t where ts > $ts and ts <= $ts + 3000
sql select * from t where ts > $ts and ts <= $ts + 3000 order by ts desc
sql select * from t where ts >= $ts and ts < $ts + 3000
sql select * from t where ts >= $ts and ts < $ts + 3000 order by ts desc
sql select * from t where ts > $ts and ts < $ts + 2999
sql select * from t where ts > $ts and ts < $ts + 2999 order by ts desc
sql select * from t where ts > $ts and ts <= $ts + 2999
sql select * from t where ts > $ts and ts <= $ts + 2999 order by ts desc
sql select * from t where ts >= $ts and ts < $ts + 2999
sql select * from t where ts >= $ts and ts < $ts + 2999 order by ts desc
sql select * from t where ts > $ts and ts < $ts + 2000
sql select * from t where ts = $ts + 200
sql select * from t where ts = $ts
sql select * from t where ts > $ts and ts <= $ts + 3001
sql select * from (select * from t where ts > $ts and ts <= $ts + 3001) where ts = $ts + 200
sql select * from t where ts > $ts and ts <= $ts + 3000
sql select * from (select * from t where ts > $ts and ts <= $ts + 3000) where ts = $ts + 200
sql_error select * from t
sql_error select * from t order by ts desc
......@@ -41,8 +41,8 @@ sql_error select * from t where ts > $ts order by ts desc
sql_error select * from t where ts < $ts
sql_error select * from t where ts < $ts order by ts desc
sql_error select * from t where ts >= $ts and ts <= $ts + 3001
sql_error select * from t where ts >= $ts and ts <= $ts + 3001 order by ts desc
sql_error select * from t where ts >= $ts and ts <= $ts + 3000
sql_error select * from t where ts >= $ts and ts <= $ts + 3000 order by ts desc
sql_error select * from t where ts >= $ts and ts <= $ts + 4000
sql_error select * from t where ts >= $ts and ts <= $ts + 4000 order by ts desc
......@@ -50,7 +50,7 @@ sql_error select * from ( select * from t ) where ts >= $ts and ts <= $ts + 2000
sql_error select * from ( select * from t ) where ts >= $ts and ts <= $ts + 2000 oder by ts desc
sql_error select * from ( select * from t order by ts desc) where ts >= $ts and ts <= $ts + 2000 oder by ts desc
sql_error select * from ( select * from t where ts > $ts and ts < $ts + 3000) where ts > $ts
sql_error select * from ( select * from t where ts > $ts and ts < $ts + 2999) where ts > $ts
sql_error select * from ( select * from t where ts > $ts and ts < $ts + 4000) where ts > $ts
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册