From 4a6f41f7f1612fa02be3dfaf0d45baae0fb4f309 Mon Sep 17 00:00:00 2001 From: kailixu Date: Thu, 8 Dec 2022 11:56:29 +0800 Subject: [PATCH] fix: keep option of database with precision ns --- include/util/tdef.h | 1 + source/libs/parser/src/parTranslater.c | 5 +---- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/include/util/tdef.h b/include/util/tdef.h index 58c8c1b51a..0ebc78bedb 100644 --- a/include/util/tdef.h +++ b/include/util/tdef.h @@ -309,6 +309,7 @@ typedef enum ELogicConditionType { #define TSDB_DEFAULT_DURATION_PER_FILE (10 * 1440) #define TSDB_MIN_KEEP (1 * 1440) // data in db to be reserved. unit minute #define TSDB_MAX_KEEP (365000 * 1440) // data in db to be reserved. +#define TSDB_MAX_KEEP_NS (29200 * 1440) // data in db to be reserved. #define TSDB_DEFAULT_KEEP (3650 * 1440) // ten years #define TSDB_MIN_MINROWS_FBLOCK 10 #define TSDB_MAX_MINROWS_FBLOCK 1000 diff --git a/source/libs/parser/src/parTranslater.c b/source/libs/parser/src/parTranslater.c index 2afca5e35c..10e45901e5 100644 --- a/source/libs/parser/src/parTranslater.c +++ b/source/libs/parser/src/parTranslater.c @@ -3881,10 +3881,7 @@ static int32_t checkDbKeepOption(STranslateContext* pCxt, SDatabaseOptions* pOpt int64_t tsdbMaxKeep = TSDB_MAX_KEEP; if (pOptions->precision == TSDB_TIME_PRECISION_NANO) { - int64_t now = taosGetTimestampSec(); - if (now < 0) now = 0; - tsdbMaxKeep = now / 60 + 292 * 365 * 1440; - tsdbMaxKeep = TMIN(tsdbMaxKeep, TSDB_MAX_KEEP); + tsdbMaxKeep = TSDB_MAX_KEEP_NS; } if (pOptions->keep[0] < TSDB_MIN_KEEP || pOptions->keep[1] < TSDB_MIN_KEEP || pOptions->keep[2] < TSDB_MIN_KEEP ||