Skip to content

Commit 565f53c

Browse files
author
arthosofteq
authored
Merge pull request #581 from RedisInsight/bugifx/RI-2654-workaround-for-rec-scan-issue
scan until cursor !== 0 when dbsize < scanThreshold
2 parents 7c9ffab + 57b6319 commit 565f53c

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

redisinsight/api/src/modules/browser/services/keys-business/scanner/strategies/cluster.strategy.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,8 +68,14 @@ export class ClusterStrategy extends AbstractStrategy {
6868
while (
6969
!allNodesScanned
7070
&& nodes.reduce((prev, cur) => prev + cur.keys.length, 0) < count
71-
&& nodes.reduce((prev, cur) => prev + cur.scanned, 0)
72-
< settings.scanThreshold
71+
&& (
72+
(
73+
nodes.reduce((prev, cur) => prev + cur.total, 0) < settings.scanThreshold
74+
&& nodes.find((node) => !!node.cursor)
75+
)
76+
|| nodes.reduce((prev, cur) => prev + cur.scanned, 0)
77+
< settings.scanThreshold
78+
)
7379
) {
7480
await this.scanNodes(clientOptions, nodes, match, count, args.type);
7581
allNodesScanned = !nodes.some((node) => node.cursor !== 0);

redisinsight/api/src/modules/browser/services/keys-business/scanner/strategies/standalone.strategy.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,10 @@ export class StandaloneStrategy extends AbstractStrategy {
8383
node.total > 0
8484
&& !fullScanned
8585
&& node.keys.length < count
86-
&& node.scanned < settings.scanThreshold
86+
&& (
87+
(node.total < settings.scanThreshold && node.cursor)
88+
|| node.scanned < settings.scanThreshold
89+
)
8790
) {
8891
let commandArgs = [`${node.cursor}`, 'MATCH', match, 'COUNT', count];
8992
if (type) {

0 commit comments

Comments
 (0)