Skip to content

Commit 70408ee

Browse files
#RI-3942 - workaround determine only on first shard
1 parent 54296e5 commit 70408ee

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

redisinsight/api/src/modules/database-analysis/database-analysis.service.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import { IFindRedisClientInstanceByOptions } from 'src/modules/redis/redis.servi
33
import { isNull, flatten, uniqBy } from 'lodash';
44
import { RecommendationService } from 'src/modules/recommendation/recommendation.service';
55
import { catchAclError } from 'src/utils';
6+
import { RECOMMENDATION_NAMES } from 'src/constants';
67
import { DatabaseAnalyzer } from 'src/modules/database-analysis/providers/database-analyzer';
78
import { plainToClass } from 'class-transformer';
89
import { DatabaseAnalysis, ShortDatabaseAnalysis } from 'src/modules/database-analysis/models';
@@ -58,11 +59,13 @@ export class DatabaseAnalysisService {
5859

5960
const recommendations = DatabaseAnalysisService.getRecommendationsSummary(
6061
flatten(await Promise.all(
61-
scanResults.map(async (nodeResult) => (
62+
scanResults.map(async (nodeResult, idx) => (
6263
await this.recommendationService.getRecommendations({
6364
client: nodeResult.client,
6465
keys: nodeResult.keys,
6566
total: progress.total,
67+
// TODO: create generic solution to exclude recommendations
68+
exclude: idx !== 0 ? [RECOMMENDATION_NAMES.RTS] : [],
6669
})
6770
)),
6871
)),

redisinsight/api/src/modules/recommendation/recommendation.service.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { Injectable } from '@nestjs/common';
22
import { Redis } from 'ioredis';
33
import { RecommendationProvider } from 'src/modules/recommendation/providers/recommendation.provider';
44
import { Recommendation } from 'src/modules/database-analysis/models/recommendation';
5+
import { RECOMMENDATION_NAMES } from 'src/constants';
56
import { RedisString } from 'src/common/constants';
67
import { Key } from 'src/modules/database-analysis/models';
78

@@ -10,6 +11,7 @@ interface RecommendationInput {
1011
keys?: Key[],
1112
info?: RedisString,
1213
total?: number,
14+
exclude?: string[],
1315
}
1416

1517
@Injectable()
@@ -31,6 +33,7 @@ export class RecommendationService {
3133
keys,
3234
info,
3335
total,
36+
exclude,
3437
} = dto;
3538

3639
return (
@@ -49,7 +52,8 @@ export class RecommendationService {
4952
await this.recommendationProvider.determineBigSetsRecommendation(keys),
5053
await this.recommendationProvider.determineConnectionClientsRecommendation(client),
5154
await this.recommendationProvider.determineSetPasswordRecommendation(client),
52-
await this.recommendationProvider.determineRTSRecommendation(client, keys),
55+
// TODO rework, need better solution to do not start determine recommendation
56+
exclude.includes(RECOMMENDATION_NAMES.RTS) ? null : await this.recommendationProvider.determineRTSRecommendation(client, keys),
5357
]));
5458
}
5559
}

0 commit comments

Comments
 (0)