Skip to content

Commit e26e765

Browse files
Merge pull request #2095 from RedisInsight/be/feature/RI-4521_recommendation_for_cluster
#RI-4521 - [BE] Recommendation doesn't appear correct for cluster
2 parents fc08071 + 2a16ba1 commit e26e765

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

redisinsight/api/src/modules/database-recommendation/scanner/strategies/big-amount-connected-clients.strategy.spec.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,13 @@ describe('BigAmountConnectedClientsStrategy', () => {
2121
});
2222

2323
describe('cluster', () => {
24-
it('should return true when connectedClients more then 100 in the first node', async () => {
24+
it('should return true when connectedClients more then 100 in one of the nodes', async () => {
2525
expect(await strategy.isRecommendationReached({
2626
version: '1',
27-
nodes: [{ version: '1', connectedClients: 101 }],
27+
nodes: [
28+
{ version: '1', connectedClients: 1 },
29+
{ version: '2', connectedClients: 101 },
30+
],
2831
})).toEqual({ isReached: true });
2932
});
3033
});

redisinsight/api/src/modules/database-recommendation/scanner/strategies/big-amount-connected-clients.strategy.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { maxBy } from 'lodash';
12
import { AbstractRecommendationStrategy }
23
from 'src/modules/database-recommendation/scanner/strategies/abstract.recommendation.strategy';
34
import { IDatabaseRecommendationStrategyData }
@@ -12,7 +13,7 @@ export class BigAmountConnectedClientsStrategy extends AbstractRecommendationStr
1213
*/
1314

1415
async isRecommendationReached(info: RedisDatabaseInfoResponse): Promise<IDatabaseRecommendationStrategyData> {
15-
const nodeInfo = info.nodes?.length ? info.nodes[0] : info;
16-
return { isReached: nodeInfo.connectedClients > BIG_AMOUNT_OF_CONNECTED_CLIENTS_RECOMMENDATION_CLIENTS };
16+
const nodeInfo = info.nodes?.length ? maxBy(info.nodes, 'connectedClients') : info;
17+
return { isReached: nodeInfo?.connectedClients > BIG_AMOUNT_OF_CONNECTED_CLIENTS_RECOMMENDATION_CLIENTS };
1718
}
1819
}

0 commit comments

Comments
 (0)