@orion-js/mongodb 3.2.21 → 3.2.24

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.
@@ -8,13 +8,28 @@ const mongodb_1 = require("mongodb");
8
8
  const connections_1 = require("./connections");
9
9
  const getDBName_1 = __importDefault(require("./getDBName"));
10
10
  const getMongoURLFromEnv_1 = require("./getMongoURLFromEnv");
11
+ const logger_1 = require("@orion-js/logger");
12
+ const helpers_1 = require("@orion-js/helpers");
11
13
  exports.allConnectionPromises = [];
14
+ async function connect(client) {
15
+ try {
16
+ const result = await client.connect();
17
+ return result;
18
+ }
19
+ catch (error) {
20
+ logger_1.logger.error(`Error connecting to mongo: ${error.message}. Will retry in 5s`, error);
21
+ await (0, helpers_1.sleep)(5000);
22
+ return connect(client);
23
+ }
24
+ }
12
25
  const getMongoConnection = ({ name, uri }) => {
13
26
  uri = uri || (0, getMongoURLFromEnv_1.getMongoURLFromEnv)(name);
14
27
  if (connections_1.connections[name])
15
28
  return connections_1.connections[name];
16
- const client = new mongodb_1.MongoClient(uri);
17
- const connectionPromise = client.connect();
29
+ const client = new mongodb_1.MongoClient(uri, {
30
+ retryReads: true
31
+ });
32
+ const connectionPromise = connect(client);
18
33
  exports.allConnectionPromises.push(connectionPromise);
19
34
  const dbName = (0, getDBName_1.default)(uri);
20
35
  const db = client.db(dbName);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orion-js/mongodb",
3
- "version": "3.2.21",
3
+ "version": "3.2.24",
4
4
  "main": "lib/index.js",
5
5
  "types": "lib/index.d.ts",
6
6
  "files": [
@@ -19,6 +19,7 @@
19
19
  "dependencies": {
20
20
  "@orion-js/env": "^3.2.21",
21
21
  "@orion-js/helpers": "^3.2.21",
22
+ "@orion-js/logger": "^3.2.21",
22
23
  "@orion-js/models": "^3.2.21",
23
24
  "@orion-js/resolvers": "^3.2.21",
24
25
  "@orion-js/schema": "^3.2.21",
@@ -40,5 +41,5 @@
40
41
  "publishConfig": {
41
42
  "access": "public"
42
43
  },
43
- "gitHead": "160e776b7a8448c8e4f67cae79849d6520eaf0c1"
44
+ "gitHead": "7ac18ac50d53bc98504e157706f3ed0cd14a38e9"
44
45
  }