Skip to content

Commit d5c4d38

Browse files
authored
Merge pull request taosdata#22535 from taosdata/fix/TS-3831-MAIN
fix: query failed return time from websocket is last successful time
2 parents 013cf97 + 6877e33 commit d5c4d38

File tree

2 files changed

+23
-23
lines changed

2 files changed

+23
-23
lines changed

tests/system-test/0-others/walRetention.py

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -147,23 +147,34 @@ def canDelete(self, walFile):
147147
if self.lastVer != -1 and ret:
148148
# first wal file ignore
149149
if walFile.startVer == self.firstVer:
150-
tdLog.info(f" {walFile.pathFile} can del, but is first. snapVer={self.snapVer} firstVer={self.firstVer}")
150+
tdLog.info(f" can del {walFile.pathFile}, but is first. snapVer={self.snapVer} firstVer={self.firstVer}")
151151
return False
152152

153153
# ver in stay range
154154
smallVer = self.snapVer - self.walStayRange -1
155155
if walFile.startVer >= smallVer:
156-
tdLog.info(f" {walFile.pathFile} can del, but range not arrived. snapVer={self.snapVer} smallVer={smallVer}")
156+
tdLog.info(f" can del {walFile.pathFile}, but range not arrived. snapVer={self.snapVer} smallVer={smallVer}")
157157
return False
158158

159159
return ret
160160

161161
# get log size
162162
def getWalsSize(self):
163163
size = 0
164+
lastSize = 0
165+
max = -1
164166
for walFile in self.walFiles:
165-
size += walFile.fsize
167+
if self.canDelete(walFile) == False:
168+
tdLog.info(f" calc vnode size {walFile.pathFile} size={walFile.fsize} startVer={walFile.startVer}")
169+
size += walFile.fsize
170+
if max < walFile.startVer:
171+
max = walFile.startVer
172+
lastSize = walFile.fsize
173+
166174

175+
if lastSize > 0:
176+
tdLog.info(f" last file size need reduct . lastSize={lastSize}")
177+
size -= lastSize
167178
return size
168179

169180
# vnode
@@ -183,7 +194,7 @@ def check_retention(self):
183194
delTs = delTsLine.timestamp()
184195
for walFile in self.walFiles:
185196
mt = datetime.fromtimestamp(walFile.mtime)
186-
info = f" {walFile.pathFile} mt={mt} line={delTsLine} start={walFile.startVer} snap={self.snapVer} end= {walFile.endVer}"
197+
info = f" {walFile.pathFile} size={walFile.fsize} mt={mt} line={delTsLine} start={walFile.startVer} snap={self.snapVer} end= {walFile.endVer}"
187198
tdLog.info(info)
188199
if walFile.mtime < delTs and self.canDelete(walFile):
189200
# wait a moment then check file exist
@@ -199,25 +210,16 @@ def check_retention(self):
199210
if self.walSize == 0:
200211
return True
201212

213+
time.sleep(2)
202214
vnodeSize = self.getWalsSize()
203-
if vnodeSize < self.walSize:
204-
tdLog.info(f" wal size valid. {self.path} real = {vnodeSize} set = {self.walSize} ")
215+
# need over 20%
216+
if vnodeSize < self.walSize * 1.2:
217+
tdLog.info(f" wal size valid. {self.path} real = {vnodeSize} set = {self.walSize}. allow over 20%.")
205218
return True
206219

207-
# check valid
208-
tdLog.info(f" wal size over set. {self.path} real = {vnodeSize} set = {self.walSize} ")
209-
for walFile in self.walFiles:
210-
if self.canDelete(walFile):
211-
# wait a moment then check file exist
212-
time.sleep(1)
213-
if os.path.exists(walFile.pathFile):
214-
tdLog.exit(f" wal file size over .\
215-
\n wal file = {walFile.pathFile}\
216-
\n snapVer = {self.snapVer}\
217-
\n real = {vnodeSize} bytes\
218-
\n set = {self.walSize} bytes")
219-
return False
220-
return True
220+
# check over
221+
tdLog.exit(f" wal size over set. {self.path} real = {vnodeSize} set = {self.walSize} ")
222+
return False
221223

222224

223225
# insert by async

tools/shell/src/shellWebsocket.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ void shellRunSingleCommandWebsocketImp(char *command) {
278278
}
279279
if (code == TSDB_CODE_WS_SEND_TIMEOUT
280280
|| code == TSDB_CODE_WS_RECV_TIMEOUT) {
281-
fprintf(stderr, "Hint: use -t to increase the timeout in seconds\n");
281+
fprintf(stderr, "Hint: use -T to increase the timeout in seconds\n");
282282
} else if (code == TSDB_CODE_WS_INTERNAL_ERRO
283283
|| code == TSDB_CODE_WS_CLOSED) {
284284
shell.ws_conn = NULL;
@@ -373,8 +373,6 @@ void shellRunSingleCommandWebsocketImp(char *command) {
373373
} else {
374374
printf("Query interrupted, %d row(s) in set (%.6fs)\n", numOfRows,
375375
(et - st)/1E6);
376-
printf("Execute: %.2f ms Network: %.2f ms Total: %.2f ms\n",
377-
execute_time, net_time, total_time);
378376
}
379377
}
380378
printf("\n");

0 commit comments

Comments
 (0)