@restorecommerce/chassis-srv 0.3.6 → 0.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,4 +1,10 @@
1
- ### 0.3.5 (Jnuary 28th, 2022)
1
+ ### 0.3.7 (February 11th, 2022)
2
+
3
+ - updated dependencies
4
+ - removed emitting healthcheck resposne to kafka
5
+ - migrate from ioredis to redis
6
+
7
+ ### 0.3.6 (January 28th, 2022)
2
8
 
3
9
  - restructured graph traversal api
4
10
  - updated dependencies
@@ -1,7 +1,7 @@
1
1
  import { Server } from './../microservice/server';
2
2
  import { Events, Topic } from '@restorecommerce/kafka-client';
3
3
  import { Logger } from 'winston';
4
- import Redis from 'ioredis';
4
+ import { RedisClientType } from 'redis';
5
5
  /**
6
6
  * Generic interface to expose system operations.
7
7
  */
@@ -30,8 +30,8 @@ export declare class CommandInterface implements ICommandInterface {
30
30
  commands: any;
31
31
  commandTopic: Topic;
32
32
  bufferedCollection: Map<string, string>;
33
- redisClient: Redis;
34
- constructor(server: Server, config: any, logger: Logger, events: Events, redisClient: Redis);
33
+ redisClient: RedisClientType<any, any>;
34
+ constructor(server: Server, config: any, logger: Logger, events: Events, redisClient: RedisClientType<any, any>);
35
35
  /**
36
36
  * Generic command operation, which demultiplexes a command by its name and parameters.
37
37
  * @param call
@@ -352,7 +352,6 @@ class CommandInterface {
352
352
  }
353
353
  }
354
354
  catch (err) {
355
- console.log('Err is...........', err);
356
355
  this.logger.error('Error occurred while restoring the system', err.message);
357
356
  await this.commandTopic.emit('restoreResponse', {
358
357
  services: _.keys(this.service),
@@ -457,12 +456,6 @@ class CommandInterface {
457
456
  }
458
457
  const serviceName = payload.service;
459
458
  if (_.isNil(serviceName) || _.size(serviceName) === 0) {
460
- await this.commandTopic.emit('healthCheckResponse', {
461
- services: _.keys(this.service),
462
- payload: this.encodeMsg({
463
- status: this.health.status,
464
- })
465
- });
466
459
  return {
467
460
  status: this.health.status,
468
461
  };
@@ -485,12 +478,6 @@ class CommandInterface {
485
478
  status = transportStatus;
486
479
  }
487
480
  });
488
- await this.commandTopic.emit('healthCheckResponse', {
489
- services: [serviceName],
490
- payload: this.encodeMsg({
491
- status,
492
- })
493
- });
494
481
  return {
495
482
  status,
496
483
  };
@@ -600,81 +587,40 @@ class CommandInterface {
600
587
  if (pattern != undefined) {
601
588
  let flushPattern = '*' + pattern + '*';
602
589
  this.logger.debug('Flushing cache wiht pattern', { dbIndex, flushPattern });
603
- let stream, pipeline;
590
+ let scanIterator;
604
591
  try {
605
- stream = this.redisClient.scanStream({ match: flushPattern, count: 100 });
606
- pipeline = this.redisClient.pipeline();
592
+ scanIterator = this.redisClient.scanIterator({ MATCH: flushPattern, COUNT: 100 });
593
+ for await (const key of scanIterator) {
594
+ await this.redisClient.del(key);
595
+ }
596
+ this.logger.debug(`Successfully flushed cache pattern ${flushPattern}`);
597
+ response = {
598
+ status: 'Successfully flushed cache pattern'
599
+ };
607
600
  }
608
601
  catch (err) {
609
602
  this.logger.error('Error creating stream / pipeline in Redis', { message: err.message });
610
603
  response = err.message;
611
604
  }
612
- let localKeys = [];
613
- if (stream && pipeline) {
614
- await new Promise((resolve, reject) => {
615
- stream.on('data', (resultKeys) => {
616
- this.logger.info('Data Received:', localKeys.length);
617
- for (let i = 0; i < resultKeys.length; i++) {
618
- localKeys.push(resultKeys[i]);
619
- pipeline.del(resultKeys[i]);
620
- }
621
- if (localKeys.length > 100) {
622
- pipeline.exec(() => { this.logger.info('one batch delete complete'); });
623
- localKeys = [];
624
- pipeline = this.redisClient.pipeline();
625
- }
626
- });
627
- stream.on('end', () => {
628
- pipeline.exec(() => { this.logger.info('final batch delete complete'); });
629
- response = {
630
- status: 'Successfully flushed cache pattern'
631
- };
632
- resolve(response);
633
- });
634
- stream.on('error', (err) => {
635
- this.logger.error('error', err);
636
- response = err.message;
637
- resolve(err);
638
- });
639
- });
640
- }
641
605
  }
642
606
  else {
643
607
  this.logger.debug('Flushing cache', { dbIndex });
644
- await new Promise((resolve, reject) => {
645
- if (dbIndex || dbIndex === 0) {
646
- // Flush all keys in the given dbIndex (flushDB)
647
- this.redisClient.flushdb(async (err, reply) => {
648
- if (err) {
649
- this.logger.error('Failed flushing cache with DB index', { err, dbIndex });
650
- return reject();
651
- }
652
- if (reply) {
653
- this.logger.debug('Successfully flushed cache with DB index', { dbIndex });
654
- response = {
655
- status: `Successfully flushed cache with DB index ${dbIndex}`
656
- };
657
- return resolve(response);
658
- }
659
- });
660
- }
661
- else {
662
- // Flush Complete Redis Cache (flushAll)
663
- this.redisClient.flushall(async (err, reply) => {
664
- if (err) {
665
- this.logger.error('Failed flushing complete cache', { err });
666
- return reject();
667
- }
668
- if (reply) {
669
- this.logger.debug('Successfully flushed complete cache');
670
- response = {
671
- status: 'Successfully flushed complete cache'
672
- };
673
- return resolve(response);
674
- }
675
- });
676
- }
677
- });
608
+ if (dbIndex || dbIndex === 0) {
609
+ // Flush all keys in the given dbIndex (flushDB)
610
+ await this.redisClient.flushDb();
611
+ response = {
612
+ status: `Successfully flushed cache with DB index ${dbIndex}`
613
+ };
614
+ this.logger.debug('Successfully flushed cache with DB index', { dbIndex });
615
+ }
616
+ else {
617
+ // Flush Complete Redis Cache (flushAll)
618
+ await this.redisClient.flushAll();
619
+ response = {
620
+ status: 'Successfully flushed complete cache'
621
+ };
622
+ this.logger.debug('Successfully flushed complete cache');
623
+ }
678
624
  }
679
625
  }
680
626
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/command-interface/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/command-interface/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Events, Topic } from '@restorecommerce/kafka-client';
2
- import Redis from 'ioredis';
2
+ import { RedisClientType } from 'redis';
3
3
  import { Logger } from 'winston';
4
4
  /**
5
5
  * Stores the offsets of the provided topics to redis periodically
@@ -8,7 +8,7 @@ export declare class OffsetStore {
8
8
  logger: Logger;
9
9
  config: any;
10
10
  kafkaEvents: Events;
11
- redisClient: Redis;
11
+ redisClient: RedisClientType<any, any>;
12
12
  topics: any;
13
13
  timerID: any;
14
14
  constructor(events: Events, config: any, logger: Logger);
@@ -18,13 +18,10 @@ var __importStar = (this && this.__importStar) || function (mod) {
18
18
  __setModuleDefault(result, mod);
19
19
  return result;
20
20
  };
21
- var __importDefault = (this && this.__importDefault) || function (mod) {
22
- return (mod && mod.__esModule) ? mod : { "default": mod };
23
- };
24
21
  Object.defineProperty(exports, "__esModule", { value: true });
25
22
  exports.OffsetStore = void 0;
26
23
  const _ = __importStar(require("lodash"));
27
- const ioredis_1 = __importDefault(require("ioredis"));
24
+ const redis_1 = require("redis");
28
25
  /**
29
26
  * Stores the offsets of the provided topics to redis periodically
30
27
  */
@@ -48,9 +45,11 @@ class OffsetStore {
48
45
  if (this.config.get('redis')) {
49
46
  const redisConfig = this.config.get('redis');
50
47
  if (_.has(redisConfig, 'db-indexes.db-offsetStore')) {
51
- redisConfig.db = _.get(redisConfig, 'db-indexes.db-offsetStore');
48
+ redisConfig.database = _.get(redisConfig, 'db-indexes.db-offsetStore');
52
49
  }
53
- this.redisClient = new ioredis_1.default(redisConfig);
50
+ this.redisClient = (0, redis_1.createClient)(redisConfig);
51
+ this.redisClient.on('error', (err) => logger.error('Redis Client Error in offsetstore', err));
52
+ this.redisClient.connect().then((val) => logger.info('Redis client connection successful for offsetstore'));
54
53
  }
55
54
  this.topics = {};
56
55
  this.timerID = [];
@@ -83,7 +82,7 @@ class OffsetStore {
83
82
  async storeOffset(topic, topicName) {
84
83
  // get the latest offset here each time and store it.
85
84
  const offsetValue = await topic.$offset(-1);
86
- const redisKey = this.config.get('events:kafka:clientId') + ':' + topicName;
85
+ const redisKey = this.config.get('events:kafka:clientId:kafka:clientId') + ':' + topicName;
87
86
  this.redisClient.set(redisKey, offsetValue);
88
87
  }
89
88
  /**
@@ -93,16 +92,9 @@ class OffsetStore {
93
92
  */
94
93
  async getOffset(topicName) {
95
94
  const redisKey = this.config.get('events:kafka:clientId') + ':' + topicName;
96
- const offsetValue = await new Promise((resolve, reject) => {
97
- this.redisClient.get(redisKey, (err, response) => {
98
- if (err) {
99
- reject(err);
100
- }
101
- resolve(response);
102
- });
103
- });
95
+ const offsetValue = await this.redisClient.get(redisKey);
104
96
  this.logger.info('The offset value retreived from redis for topic is:', { topicName, offsetValue });
105
- return offsetValue;
97
+ return Number(offsetValue);
106
98
  }
107
99
  /**
108
100
  * stops the redis client
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/offsets/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/offsets/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@restorecommerce/chassis-srv",
3
- "version": "0.3.6",
3
+ "version": "0.3.7",
4
4
  "description": "Restore Commerce microservice chassis",
5
5
  "main": "./lib/index.js",
6
6
  "author": "n-fuse GmbH",
@@ -17,25 +17,25 @@
17
17
  ],
18
18
  "typings": "lib/index.d.ts",
19
19
  "dependencies": {
20
- "@grpc/grpc-js": "^1.5.3",
20
+ "@grpc/grpc-js": "^1.5.5",
21
21
  "@grpc/proto-loader": "^0.6.9",
22
- "@restorecommerce/grpc-client": "^0.2.14",
23
- "@restorecommerce/kafka-client": "^0.2.29",
24
- "@restorecommerce/logger": "^0.11.3",
25
- "@restorecommerce/protos": "^0.5.0",
26
- "@restorecommerce/service-config": "^0.4.23",
22
+ "@restorecommerce/grpc-client": "^0.3.0",
23
+ "@restorecommerce/kafka-client": "^0.3.0",
24
+ "@restorecommerce/logger": "^0.12.0",
25
+ "@restorecommerce/protos": "^0.6.2",
26
+ "@restorecommerce/service-config": "^0.4.24",
27
27
  "arangojs": "^7.7.0",
28
28
  "async": "^3.2.3",
29
29
  "async-retry": "^1.3.3",
30
30
  "cache-manager": "^3.6.0",
31
31
  "cls-hooked": "^4.2.2",
32
32
  "cls-rtracer": "^2.6.0",
33
- "ioredis": "^4.28.3",
34
- "kafkajs": "^1.15.0",
33
+ "kafkajs": "^1.16.0",
35
34
  "lodash": "^4.17.21",
36
35
  "long": "^5.2.0",
37
36
  "nedb": "^1.8.0",
38
- "protobufjs": "^6.11.2"
37
+ "protobufjs": "^6.11.2",
38
+ "redis": "^4.0.3"
39
39
  },
40
40
  "devDependencies": {
41
41
  "@types/cache-manager": "^3.4.2",
@@ -43,22 +43,22 @@
43
43
  "@types/long": "^4.0.1",
44
44
  "@types/mocha": "^9.1.0",
45
45
  "@types/nedb": "^1.8.12",
46
- "@types/node": "^17.0.13",
47
- "@typescript-eslint/eslint-plugin": "^5.10.1",
48
- "@typescript-eslint/eslint-plugin-tslint": "^5.10.1",
49
- "@typescript-eslint/parser": "^5.10.1",
46
+ "@types/node": "^17.0.17",
47
+ "@typescript-eslint/eslint-plugin": "^5.11.0",
48
+ "@typescript-eslint/eslint-plugin-tslint": "^5.11.0",
49
+ "@typescript-eslint/parser": "^5.11.0",
50
50
  "cross-env": "^7.0.3",
51
- "eslint": "^8.7.0",
51
+ "eslint": "^8.8.0",
52
52
  "eslint-plugin-prefer-arrow-functions": "^3.1.4",
53
53
  "mocha": "^9.2.0",
54
54
  "mocha-typescript": "^1.1.17",
55
55
  "npm-run-all": "^4.1.5",
56
56
  "nyc": "^15.1.0",
57
57
  "rimraf": "^3.0.2",
58
- "rxjs": "^7.5.2",
58
+ "rxjs": "^7.5.4",
59
59
  "should": "^13.2.3",
60
60
  "sleep": "^6.3.0",
61
- "ts-node": "^10.4.0",
61
+ "ts-node": "^10.5.0",
62
62
  "tslint": "^6.1.3",
63
63
  "typescript": "^4.5.5"
64
64
  },
package/test.js DELETED
@@ -1,56 +0,0 @@
1
- const edgeDefConfig = [
2
- {
3
- "collection": "has",
4
- "from": "person",
5
- "to": "car"
6
- },
7
- {
8
- "collection": "belongs",
9
- "from": "car",
10
- "to": "place"
11
- },
12
- {
13
- "collection": "redides",
14
- "from": "place",
15
- "to": "state"
16
- },
17
- {
18
- "collection": "lives",
19
- "from": "person",
20
- "to": "country"
21
- }
22
- ];
23
-
24
- const collectionName = 'person';
25
-
26
- let entitiesList = [];
27
-
28
- const recursivePathFinder = (collection) => {
29
- if(entitiesList.includes(collection)) {
30
- return;
31
- }
32
- entitiesList.push(collection);
33
- console.log('Entities list after adding collection is...', entitiesList);
34
- let items = edgeDefConfig.filter(col => col.from === collection);
35
- for (let item of items) {
36
- recursivePathFinder(item.to);
37
- }
38
- // console.log(t);
39
- };
40
-
41
- // recursivePathFinder('person');
42
-
43
- const _ = require('lodash');
44
- let filteredEntities = ["person"];
45
- let completeEntities = ["person", "car", "place", "country"];
46
-
47
- filteredEntities = filteredEntities.sort();
48
- completeEntities = completeEntities.sort();
49
- console.log('Complete entities are...', completeEntities);
50
- console.log('Equal ...or not...', _.isEqual(filteredEntities, completeEntities));
51
- let t = _.intersection(filteredEntities, completeEntities);
52
- console.log('Intersection is..', t);
53
- for (let elem of t) {
54
- completeEntities.splice(completeEntities.indexOf(elem), 1);
55
- }
56
- console.log('CMP is...', completeEntities);