Skip to content

Commit ca8f89a

Browse files
author
Artem
committed
change behavior
1 parent c418f8a commit ca8f89a

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

redisinsight/api/src/modules/shared/services/instances-business/overview.service.spec.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,6 @@ export const mockDatabaseOverview: DatabaseOverview = {
6262
totalKeys: 2,
6363
totalKeysPerDb: {
6464
db0: 1,
65-
db1: 0,
66-
db2: 1,
6765
},
6866
connectedClients: 1,
6967
opsPerSecond: 1,
@@ -228,8 +226,6 @@ describe('OverviewService', () => {
228226
totalKeys: 6,
229227
totalKeysPerDb: {
230228
db0: 3,
231-
db1: 0,
232-
db2: 3,
233229
},
234230
usedMemory: 3,
235231
networkInKbps: 6,
@@ -284,8 +280,6 @@ describe('OverviewService', () => {
284280
totalKeys: 6,
285281
totalKeysPerDb: {
286282
db0: 3,
287-
db1: 0,
288-
db2: 3,
289283
},
290284
usedMemory: 3,
291285
networkInKbps: 6,

redisinsight/api/src/modules/shared/services/instances-business/overview.service.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,17 @@ export class OverviewService {
2828
client: IORedis.Redis | IORedis.Cluster,
2929
): Promise<DatabaseOverview> {
3030
let nodesInfo = [];
31+
let currentDbIndex = 0;
32+
3133
if (client instanceof IORedis.Cluster) {
34+
currentDbIndex = get(client, ['options', 'db'], 0);
3235
nodesInfo = await this.getNodesInfo(client);
3336
} else {
37+
currentDbIndex = get(client, ['options', 'db'], 0);
3438
nodesInfo = [await this.getNodeInfo(client)];
3539
}
3640

37-
const [totalKeys, totalKeysPerDb] = this.calculateTotalKeys(nodesInfo);
41+
const [totalKeys, totalKeysPerDb] = this.calculateTotalKeys(nodesInfo, currentDbIndex);
3842
return {
3943
version: this.getVersion(nodesInfo),
4044
totalKeys,
@@ -192,9 +196,10 @@ export class OverviewService {
192196
* Sum of keys for primary shards
193197
* In case when shard has multiple logical databases shard total keys = sum of all dbs keys
194198
* @param nodes
199+
* @param index
195200
* @private
196201
*/
197-
private calculateTotalKeys(nodes = []): [number, Record<string, number>] {
202+
private calculateTotalKeys(nodes = [], index: number): [number, Record<string, number>] {
198203
if (!this.isMetricsAvailable(nodes, 'keyspace', [undefined])) {
199204
return [undefined, undefined];
200205
}
@@ -222,7 +227,8 @@ export class OverviewService {
222227
});
223228

224229
const totalKeys = totalKeysPerDb ? sum(Object.values(totalKeysPerDb)) : undefined;
225-
return [totalKeys, Object.keys(totalKeysPerDb).length > 1 ? totalKeysPerDb : undefined];
230+
const dbIndexKeys = totalKeysPerDb[`db${index}`] || 0;
231+
return [totalKeys, dbIndexKeys === totalKeys ? undefined : { [`db${index}`]: dbIndexKeys }];
226232
} catch (e) {
227233
return [null, null];
228234
}

0 commit comments

Comments
 (0)