@resolveio/server-lib 20.12.61 → 20.12.62

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.
@@ -1157,9 +1157,61 @@ var MongoManagerCollection = /** @class */ (function () {
1157
1157
  }
1158
1158
  return matches && matches.length > 1 ? matches[1] : null;
1159
1159
  };
1160
+ MongoManagerCollection.prototype.shouldRetryWriteConflict = function (err) {
1161
+ if (!err) {
1162
+ return false;
1163
+ }
1164
+ if (err.code === 112 || err.codeName === 'WriteConflict') {
1165
+ return true;
1166
+ }
1167
+ return typeof err.message === 'string' && err.message.includes('Write conflict');
1168
+ };
1169
+ MongoManagerCollection.prototype.delay = function (ms) {
1170
+ return __awaiter(this, void 0, void 0, function () {
1171
+ return __generator(this, function (_a) {
1172
+ // eslint-disable-next-line no-restricted-syntax
1173
+ return [2 /*return*/, new Promise(function (resolve) { return setTimeout(resolve, ms); })];
1174
+ });
1175
+ });
1176
+ };
1177
+ MongoManagerCollection.prototype.retryWrite = function (operation, options) {
1178
+ return __awaiter(this, void 0, void 0, function () {
1179
+ var attempt, maxRetries, err_7;
1180
+ return __generator(this, function (_a) {
1181
+ switch (_a.label) {
1182
+ case 0:
1183
+ if (options && options.session && typeof options.session.inTransaction === 'function' && options.session.inTransaction()) {
1184
+ return [2 /*return*/, operation()];
1185
+ }
1186
+ attempt = 0;
1187
+ maxRetries = 3;
1188
+ _a.label = 1;
1189
+ case 1:
1190
+ if (!true) return [3 /*break*/, 7];
1191
+ _a.label = 2;
1192
+ case 2:
1193
+ _a.trys.push([2, 4, , 6]);
1194
+ return [4 /*yield*/, operation()];
1195
+ case 3: return [2 /*return*/, _a.sent()];
1196
+ case 4:
1197
+ err_7 = _a.sent();
1198
+ if (!this.shouldRetryWriteConflict(err_7) || attempt >= maxRetries) {
1199
+ throw err_7;
1200
+ }
1201
+ attempt += 1;
1202
+ return [4 /*yield*/, this.delay(50 * attempt)];
1203
+ case 5:
1204
+ _a.sent();
1205
+ return [3 /*break*/, 6];
1206
+ case 6: return [3 /*break*/, 1];
1207
+ case 7: return [2 /*return*/];
1208
+ }
1209
+ });
1210
+ });
1211
+ };
1160
1212
  MongoManagerCollection.prototype.aggregate = function (pipeline_1, options_1) {
1161
1213
  return __awaiter(this, arguments, void 0, function (pipeline, options, skipCache, bypassSession) {
1162
- var mongoSession, _a, session, safeOptions, monitor, res, err_7;
1214
+ var mongoSession, _a, session, safeOptions, monitor, res, err_8;
1163
1215
  if (skipCache === void 0) { skipCache = false; }
1164
1216
  if (bypassSession === void 0) { bypassSession = false; }
1165
1217
  return __generator(this, function (_b) {
@@ -1190,15 +1242,15 @@ var MongoManagerCollection = /** @class */ (function () {
1190
1242
  (0, subscription_dependency_context_1.recordAggregateDependencies)(this.collectionName, pipeline, res);
1191
1243
  return [2 /*return*/, res];
1192
1244
  case 4:
1193
- err_7 = _b.sent();
1245
+ err_8 = _b.sent();
1194
1246
  console.log(JSON.stringify([new Date(), 'Error Aggregate', this.collectionName, pipeline, safeOptions, {
1195
- code: err_7.code,
1196
- codeName: err_7.codeName,
1197
- message: err_7.message,
1198
- stack: err_7.stack
1247
+ code: err_8.code,
1248
+ codeName: err_8.codeName,
1249
+ message: err_8.message,
1250
+ stack: err_8.stack
1199
1251
  }], null, 2));
1200
- err_7.message = "Error in Aggregate: ".concat(this.collectionName, " => ").concat(err_7.codeName || 'NoCodeName', " => ").concat(err_7.message);
1201
- throw err_7;
1252
+ err_8.message = "Error in Aggregate: ".concat(this.collectionName, " => ").concat(err_8.codeName || 'NoCodeName', " => ").concat(err_8.message);
1253
+ throw err_8;
1202
1254
  case 5: return [4 /*yield*/, monitor.finish()];
1203
1255
  case 6:
1204
1256
  _b.sent();
@@ -1210,7 +1262,7 @@ var MongoManagerCollection = /** @class */ (function () {
1210
1262
  };
1211
1263
  MongoManagerCollection.prototype.aggregateCount = function (pipeline_1, options_1) {
1212
1264
  return __awaiter(this, arguments, void 0, function (pipeline, options, bypassSession) {
1213
- var mongoSession, _a, session, safeOptions, monitor, res, err_8;
1265
+ var mongoSession, _a, session, safeOptions, monitor, res, err_9;
1214
1266
  if (bypassSession === void 0) { bypassSession = false; }
1215
1267
  return __generator(this, function (_b) {
1216
1268
  switch (_b.label) {
@@ -1237,15 +1289,15 @@ var MongoManagerCollection = /** @class */ (function () {
1237
1289
  (0, subscription_dependency_context_1.recordAggregateDependencies)(this.collectionName, pipeline, res);
1238
1290
  return [2 /*return*/, res.length];
1239
1291
  case 3:
1240
- err_8 = _b.sent();
1292
+ err_9 = _b.sent();
1241
1293
  console.log(JSON.stringify([new Date(), 'Error Aggregate Count', this.collectionName, pipeline, safeOptions, {
1242
- code: err_8.code,
1243
- codeName: err_8.codeName,
1244
- message: err_8.message,
1245
- stack: err_8.stack
1294
+ code: err_9.code,
1295
+ codeName: err_9.codeName,
1296
+ message: err_9.message,
1297
+ stack: err_9.stack
1246
1298
  }], null, 2));
1247
- err_8.message = "Error in Aggregate Count: ".concat(this.collectionName, " => ").concat(err_8.codeName || 'NoCodeName', " => ").concat(err_8.message);
1248
- throw err_8;
1299
+ err_9.message = "Error in Aggregate Count: ".concat(this.collectionName, " => ").concat(err_9.codeName || 'NoCodeName', " => ").concat(err_9.message);
1300
+ throw err_9;
1249
1301
  case 4: return [4 /*yield*/, monitor.finish()];
1250
1302
  case 5:
1251
1303
  _b.sent();
@@ -1316,7 +1368,7 @@ var MongoManagerCollection = /** @class */ (function () {
1316
1368
  };
1317
1369
  MongoManagerCollection.prototype.bulkWrite = function (operations_1, options_1) {
1318
1370
  return __awaiter(this, arguments, void 0, function (operations, options, bypassCheckSchema, bypassLogs, bypassVersions, bypassSession) {
1319
- var BATCH_SIZE, opIndex, mongoSession, _a, session, safeOptions, batchOps, logs, versionOps, batchOps_1, batchOps_1_1, op, opType, doc, validationContext, isValid, affectedDocs, versionFilters, versionInserts, _b, _c, monitor, err_9, bwOptions, affectedDocIds, pipeline, oldVersions, _d;
1371
+ var BATCH_SIZE, opIndex, mongoSession, _a, session, safeOptions, batchOps, logs, versionOps, batchOps_1, batchOps_1_1, op, opType, doc, validationContext, isValid, affectedDocs, versionFilters, versionInserts, _b, _c, monitor, err_10, bwOptions, affectedDocIds, pipeline, oldVersions, _d;
1320
1372
  var e_6, _e;
1321
1373
  if (bypassCheckSchema === void 0) { bypassCheckSchema = false; }
1322
1374
  if (bypassLogs === void 0) { bypassLogs = false; }
@@ -1567,15 +1619,15 @@ var MongoManagerCollection = /** @class */ (function () {
1567
1619
  _f.sent();
1568
1620
  return [3 /*break*/, 16];
1569
1621
  case 13:
1570
- err_9 = _f.sent();
1622
+ err_10 = _f.sent();
1571
1623
  console.log(JSON.stringify([new Date(), 'Error Bulk Write', this.collectionName, operations, safeOptions, {
1572
- code: err_9.code,
1573
- codeName: err_9.codeName,
1574
- message: err_9.message,
1575
- stack: err_9.stack
1624
+ code: err_10.code,
1625
+ codeName: err_10.codeName,
1626
+ message: err_10.message,
1627
+ stack: err_10.stack
1576
1628
  }], null, 2));
1577
- err_9.message = "Error in Bulk Write: ".concat(this.collectionName, " => ").concat(err_9.codeName || 'NoCodeName', " => ").concat(err_9.message);
1578
- throw err_9;
1629
+ err_10.message = "Error in Bulk Write: ".concat(this.collectionName, " => ").concat(err_10.codeName || 'NoCodeName', " => ").concat(err_10.message);
1630
+ throw err_10;
1579
1631
  case 14: return [4 /*yield*/, monitor.finish()];
1580
1632
  case 15:
1581
1633
  _f.sent();
@@ -1668,7 +1720,7 @@ var MongoManagerCollection = /** @class */ (function () {
1668
1720
  };
1669
1721
  MongoManagerCollection.prototype.countDocuments = function () {
1670
1722
  return __awaiter(this, arguments, void 0, function (filter, options, skipCache) {
1671
- var _a, session, safeOptions, isUnfiltered, monitor, res, err_10;
1723
+ var _a, session, safeOptions, isUnfiltered, monitor, res, err_11;
1672
1724
  if (filter === void 0) { filter = {}; }
1673
1725
  if (skipCache === void 0) { skipCache = false; }
1674
1726
  return __generator(this, function (_b) {
@@ -1693,15 +1745,15 @@ var MongoManagerCollection = /** @class */ (function () {
1693
1745
  res = _b.sent();
1694
1746
  return [2 /*return*/, res];
1695
1747
  case 5:
1696
- err_10 = _b.sent();
1748
+ err_11 = _b.sent();
1697
1749
  console.log(JSON.stringify([new Date(), 'Error Count Documents', this.collectionName, filter, safeOptions, {
1698
- code: err_10.code,
1699
- codeName: err_10.codeName,
1700
- message: err_10.message,
1701
- stack: err_10.stack
1750
+ code: err_11.code,
1751
+ codeName: err_11.codeName,
1752
+ message: err_11.message,
1753
+ stack: err_11.stack
1702
1754
  }], null, 2));
1703
- err_10.message = "Error in Count Documents: ".concat(this.collectionName, " => ").concat(err_10.codeName || 'NoCodeName', " => ").concat(err_10.message);
1704
- throw err_10;
1755
+ err_11.message = "Error in Count Documents: ".concat(this.collectionName, " => ").concat(err_11.codeName || 'NoCodeName', " => ").concat(err_11.message);
1756
+ throw err_11;
1705
1757
  case 6: return [4 /*yield*/, monitor.finish()];
1706
1758
  case 7:
1707
1759
  _b.sent();
@@ -1778,7 +1830,7 @@ var MongoManagerCollection = /** @class */ (function () {
1778
1830
  };
1779
1831
  MongoManagerCollection.prototype.deleteMany = function () {
1780
1832
  return __awaiter(this, arguments, void 0, function (filter, options, bypassLogs, bypassSession) {
1781
- var mongoSession, _a, session, safeOptions, docs, i, doc, versionDoc, _b, monitor, res, err_11;
1833
+ var mongoSession, _a, session, safeOptions, docs, i, doc, versionDoc, _b, monitor, res, err_12;
1782
1834
  if (filter === void 0) { filter = {}; }
1783
1835
  if (bypassLogs === void 0) { bypassLogs = false; }
1784
1836
  if (bypassSession === void 0) { bypassSession = false; }
@@ -1877,15 +1929,15 @@ var MongoManagerCollection = /** @class */ (function () {
1877
1929
  }
1878
1930
  return [2 /*return*/, res];
1879
1931
  case 14:
1880
- err_11 = _c.sent();
1932
+ err_12 = _c.sent();
1881
1933
  console.log(JSON.stringify([new Date(), 'Error Delete Many', this.collectionName, filter, safeOptions, {
1882
- code: err_11.code,
1883
- codeName: err_11.codeName,
1884
- message: err_11.message,
1885
- stack: err_11.stack
1934
+ code: err_12.code,
1935
+ codeName: err_12.codeName,
1936
+ message: err_12.message,
1937
+ stack: err_12.stack
1886
1938
  }], null, 2));
1887
- err_11.message = "Error in Delete Many: ".concat(this.collectionName, " => ").concat(err_11.codeName || 'NoCodeName', " => ").concat(err_11.message);
1888
- throw err_11;
1939
+ err_12.message = "Error in Delete Many: ".concat(this.collectionName, " => ").concat(err_12.codeName || 'NoCodeName', " => ").concat(err_12.message);
1940
+ throw err_12;
1889
1941
  case 15: return [4 /*yield*/, monitor.finish()];
1890
1942
  case 16:
1891
1943
  _c.sent();
@@ -1897,7 +1949,7 @@ var MongoManagerCollection = /** @class */ (function () {
1897
1949
  };
1898
1950
  MongoManagerCollection.prototype.deleteOne = function () {
1899
1951
  return __awaiter(this, arguments, void 0, function (filter, options, bypassLogs, bypassSession) {
1900
- var mongoSession, _a, session, safeOptions, monitor, res, doc, versionDoc, _b, err_12, monitor, res, err_13;
1952
+ var mongoSession, _a, session, safeOptions, monitor, res, doc, versionDoc, _b, err_13, monitor, res, err_14;
1901
1953
  if (filter === void 0) { filter = {}; }
1902
1954
  if (bypassLogs === void 0) { bypassLogs = false; }
1903
1955
  if (bypassSession === void 0) { bypassSession = false; }
@@ -1990,15 +2042,15 @@ var MongoManagerCollection = /** @class */ (function () {
1990
2042
  _c.label = 12;
1991
2043
  case 12: return [2 /*return*/, res];
1992
2044
  case 13:
1993
- err_12 = _c.sent();
2045
+ err_13 = _c.sent();
1994
2046
  console.log(JSON.stringify([new Date(), 'Error Delete One (Find One And Delete)', this.collectionName, filter, safeOptions, {
1995
- code: err_12.code,
1996
- codeName: err_12.codeName,
1997
- message: err_12.message,
1998
- stack: err_12.stack
2047
+ code: err_13.code,
2048
+ codeName: err_13.codeName,
2049
+ message: err_13.message,
2050
+ stack: err_13.stack
1999
2051
  }], null, 2));
2000
- err_12.message = "Error in Delete One (Find One And Delete): ".concat(this.collectionName, " => ").concat(err_12.codeName || 'NoCodeName', " => ").concat(err_12.message);
2001
- throw err_12;
2052
+ err_13.message = "Error in Delete One (Find One And Delete): ".concat(this.collectionName, " => ").concat(err_13.codeName || 'NoCodeName', " => ").concat(err_13.message);
2053
+ throw err_13;
2002
2054
  case 14: return [4 /*yield*/, monitor.finish()];
2003
2055
  case 15:
2004
2056
  _c.sent();
@@ -2017,15 +2069,15 @@ var MongoManagerCollection = /** @class */ (function () {
2017
2069
  }
2018
2070
  return [2 /*return*/, res];
2019
2071
  case 20:
2020
- err_13 = _c.sent();
2072
+ err_14 = _c.sent();
2021
2073
  console.log(JSON.stringify([new Date(), 'Error Delete One', this.collectionName, filter, safeOptions, {
2022
- code: err_13.code,
2023
- codeName: err_13.codeName,
2024
- message: err_13.message,
2025
- stack: err_13.stack
2074
+ code: err_14.code,
2075
+ codeName: err_14.codeName,
2076
+ message: err_14.message,
2077
+ stack: err_14.stack
2026
2078
  }], null, 2));
2027
- err_13.message = "Error in Delete One: ".concat(this.collectionName, " => ").concat(err_13.codeName || 'NoCodeName', " => ").concat(err_13.message);
2028
- throw err_13;
2079
+ err_14.message = "Error in Delete One: ".concat(this.collectionName, " => ").concat(err_14.codeName || 'NoCodeName', " => ").concat(err_14.message);
2080
+ throw err_14;
2029
2081
  case 21: return [4 /*yield*/, monitor.finish()];
2030
2082
  case 22:
2031
2083
  _c.sent();
@@ -2037,7 +2089,7 @@ var MongoManagerCollection = /** @class */ (function () {
2037
2089
  };
2038
2090
  MongoManagerCollection.prototype.distinct = function (key_1, filter_1, options_1) {
2039
2091
  return __awaiter(this, arguments, void 0, function (key, filter, options, bypassSession) {
2040
- var mongoSession, _a, session, safeOptions, monitor, res, err_14;
2092
+ var mongoSession, _a, session, safeOptions, monitor, res, err_15;
2041
2093
  if (bypassSession === void 0) { bypassSession = false; }
2042
2094
  return __generator(this, function (_b) {
2043
2095
  switch (_b.label) {
@@ -2063,15 +2115,15 @@ var MongoManagerCollection = /** @class */ (function () {
2063
2115
  res = _b.sent();
2064
2116
  return [2 /*return*/, res];
2065
2117
  case 3:
2066
- err_14 = _b.sent();
2118
+ err_15 = _b.sent();
2067
2119
  console.log(JSON.stringify([new Date(), 'Error Distinct', this.collectionName, filter, safeOptions, {
2068
- code: err_14.code,
2069
- codeName: err_14.codeName,
2070
- message: err_14.message,
2071
- stack: err_14.stack
2120
+ code: err_15.code,
2121
+ codeName: err_15.codeName,
2122
+ message: err_15.message,
2123
+ stack: err_15.stack
2072
2124
  }], null, 2));
2073
- err_14.message = "Error in Distinct: ".concat(this.collectionName, " => ").concat(err_14.codeName || 'NoCodeName', " => ").concat(err_14.message);
2074
- throw err_14;
2125
+ err_15.message = "Error in Distinct: ".concat(this.collectionName, " => ").concat(err_15.codeName || 'NoCodeName', " => ").concat(err_15.message);
2126
+ throw err_15;
2075
2127
  case 4: return [4 /*yield*/, monitor.finish()];
2076
2128
  case 5:
2077
2129
  _b.sent();
@@ -2083,7 +2135,7 @@ var MongoManagerCollection = /** @class */ (function () {
2083
2135
  };
2084
2136
  MongoManagerCollection.prototype.drop = function (options_1) {
2085
2137
  return __awaiter(this, arguments, void 0, function (options, bypassSession) {
2086
- var mongoSession, _a, session, safeOptions, monitor, res, err_15;
2138
+ var mongoSession, _a, session, safeOptions, monitor, res, err_16;
2087
2139
  if (bypassSession === void 0) { bypassSession = false; }
2088
2140
  return __generator(this, function (_b) {
2089
2141
  switch (_b.label) {
@@ -2109,15 +2161,15 @@ var MongoManagerCollection = /** @class */ (function () {
2109
2161
  res = _b.sent();
2110
2162
  return [2 /*return*/, res];
2111
2163
  case 3:
2112
- err_15 = _b.sent();
2164
+ err_16 = _b.sent();
2113
2165
  console.log(JSON.stringify([new Date(), 'Error Drop Collection', this.collectionName, safeOptions, {
2114
- code: err_15.code,
2115
- codeName: err_15.codeName,
2116
- message: err_15.message,
2117
- stack: err_15.stack
2166
+ code: err_16.code,
2167
+ codeName: err_16.codeName,
2168
+ message: err_16.message,
2169
+ stack: err_16.stack
2118
2170
  }], null, 2));
2119
- err_15.message = "Error in Drop Collection: ".concat(this.collectionName, " => ").concat(err_15.codeName || 'NoCodeName', " => ").concat(err_15.message);
2120
- throw err_15;
2171
+ err_16.message = "Error in Drop Collection: ".concat(this.collectionName, " => ").concat(err_16.codeName || 'NoCodeName', " => ").concat(err_16.message);
2172
+ throw err_16;
2121
2173
  case 4: return [4 /*yield*/, monitor.finish()];
2122
2174
  case 5:
2123
2175
  _b.sent();
@@ -2129,7 +2181,7 @@ var MongoManagerCollection = /** @class */ (function () {
2129
2181
  };
2130
2182
  MongoManagerCollection.prototype.dropIndex = function (indexName_1, options_1) {
2131
2183
  return __awaiter(this, arguments, void 0, function (indexName, options, bypassSession) {
2132
- var mongoSession, _a, session, safeOptions, monitor, res, err_16;
2184
+ var mongoSession, _a, session, safeOptions, monitor, res, err_17;
2133
2185
  if (bypassSession === void 0) { bypassSession = false; }
2134
2186
  return __generator(this, function (_b) {
2135
2187
  switch (_b.label) {
@@ -2155,15 +2207,15 @@ var MongoManagerCollection = /** @class */ (function () {
2155
2207
  res = _b.sent();
2156
2208
  return [2 /*return*/, res];
2157
2209
  case 3:
2158
- err_16 = _b.sent();
2210
+ err_17 = _b.sent();
2159
2211
  console.log(JSON.stringify([new Date(), 'Error Drop Index', this.collectionName, indexName, safeOptions, {
2160
- code: err_16.code,
2161
- codeName: err_16.codeName,
2162
- message: err_16.message,
2163
- stack: err_16.stack
2212
+ code: err_17.code,
2213
+ codeName: err_17.codeName,
2214
+ message: err_17.message,
2215
+ stack: err_17.stack
2164
2216
  }], null, 2));
2165
- err_16.message = "Error in Drop Index: ".concat(this.collectionName, " => ").concat(err_16.codeName || 'NoCodeName', " => ").concat(err_16.message);
2166
- throw err_16;
2217
+ err_17.message = "Error in Drop Index: ".concat(this.collectionName, " => ").concat(err_17.codeName || 'NoCodeName', " => ").concat(err_17.message);
2218
+ throw err_17;
2167
2219
  case 4: return [4 /*yield*/, monitor.finish()];
2168
2220
  case 5:
2169
2221
  _b.sent();
@@ -2175,7 +2227,7 @@ var MongoManagerCollection = /** @class */ (function () {
2175
2227
  };
2176
2228
  MongoManagerCollection.prototype.dropIndexes = function (options_1) {
2177
2229
  return __awaiter(this, arguments, void 0, function (options, bypassSession) {
2178
- var mongoSession, _a, session, safeOptions, monitor, res, err_17;
2230
+ var mongoSession, _a, session, safeOptions, monitor, res, err_18;
2179
2231
  if (bypassSession === void 0) { bypassSession = false; }
2180
2232
  return __generator(this, function (_b) {
2181
2233
  switch (_b.label) {
@@ -2201,15 +2253,15 @@ var MongoManagerCollection = /** @class */ (function () {
2201
2253
  res = _b.sent();
2202
2254
  return [2 /*return*/, res];
2203
2255
  case 3:
2204
- err_17 = _b.sent();
2256
+ err_18 = _b.sent();
2205
2257
  console.log(JSON.stringify([new Date(), 'Error Drop Indexes', this.collectionName, safeOptions, {
2206
- code: err_17.code,
2207
- codeName: err_17.codeName,
2208
- message: err_17.message,
2209
- stack: err_17.stack
2258
+ code: err_18.code,
2259
+ codeName: err_18.codeName,
2260
+ message: err_18.message,
2261
+ stack: err_18.stack
2210
2262
  }], null, 2));
2211
- err_17.message = "Error in Drop Indexes: ".concat(this.collectionName, " => ").concat(err_17.codeName || 'NoCodeName', " => ").concat(err_17.message);
2212
- throw err_17;
2263
+ err_18.message = "Error in Drop Indexes: ".concat(this.collectionName, " => ").concat(err_18.codeName || 'NoCodeName', " => ").concat(err_18.message);
2264
+ throw err_18;
2213
2265
  case 4: return [4 /*yield*/, monitor.finish()];
2214
2266
  case 5:
2215
2267
  _b.sent();
@@ -2221,7 +2273,7 @@ var MongoManagerCollection = /** @class */ (function () {
2221
2273
  };
2222
2274
  MongoManagerCollection.prototype.find = function () {
2223
2275
  return __awaiter(this, arguments, void 0, function (filter, options, skipCache, bypassSession) {
2224
- var mongoSession, _a, session, safeOptions, monitor, res, err_18;
2276
+ var mongoSession, _a, session, safeOptions, monitor, res, err_19;
2225
2277
  if (filter === void 0) { filter = {}; }
2226
2278
  if (skipCache === void 0) { skipCache = false; }
2227
2279
  if (bypassSession === void 0) { bypassSession = false; }
@@ -2253,15 +2305,15 @@ var MongoManagerCollection = /** @class */ (function () {
2253
2305
  (0, subscription_dependency_context_1.recordDependencyResult)(this.collectionName, res, { filter: filter, meta: buildQueryMetaFromFindOptions(safeOptions) });
2254
2306
  return [2 /*return*/, res];
2255
2307
  case 4:
2256
- err_18 = _b.sent();
2308
+ err_19 = _b.sent();
2257
2309
  console.log(JSON.stringify([new Date(), 'Error Find', this.collectionName, filter, safeOptions, {
2258
- code: err_18.code,
2259
- codeName: err_18.codeName,
2260
- message: err_18.message,
2261
- stack: err_18.stack
2310
+ code: err_19.code,
2311
+ codeName: err_19.codeName,
2312
+ message: err_19.message,
2313
+ stack: err_19.stack
2262
2314
  }], null, 2));
2263
- err_18.message = "Error in Find: ".concat(this.collectionName, " => ").concat(err_18.codeName || 'NoCodeName', " => ").concat(err_18.message);
2264
- throw err_18;
2315
+ err_19.message = "Error in Find: ".concat(this.collectionName, " => ").concat(err_19.codeName || 'NoCodeName', " => ").concat(err_19.message);
2316
+ throw err_19;
2265
2317
  case 5: return [4 /*yield*/, monitor.finish()];
2266
2318
  case 6:
2267
2319
  _b.sent();
@@ -2273,7 +2325,7 @@ var MongoManagerCollection = /** @class */ (function () {
2273
2325
  };
2274
2326
  MongoManagerCollection.prototype.findById = function (id_1, options_1) {
2275
2327
  return __awaiter(this, arguments, void 0, function (id, options, skipCache, bypassSession) {
2276
- var mongoSession, _a, session, safeOptions, monitor, res, err_19;
2328
+ var mongoSession, _a, session, safeOptions, monitor, res, err_20;
2277
2329
  if (skipCache === void 0) { skipCache = false; }
2278
2330
  if (bypassSession === void 0) { bypassSession = false; }
2279
2331
  return __generator(this, function (_b) {
@@ -2304,15 +2356,15 @@ var MongoManagerCollection = /** @class */ (function () {
2304
2356
  (0, subscription_dependency_context_1.recordDependencyResult)(this.collectionName, res, { filter: { _id: id }, meta: buildQueryMetaFromFindOptions(safeOptions) });
2305
2357
  return [2 /*return*/, res];
2306
2358
  case 4:
2307
- err_19 = _b.sent();
2359
+ err_20 = _b.sent();
2308
2360
  console.log(JSON.stringify([new Date(), 'Error Find By ID', this.collectionName, id, safeOptions, {
2309
- code: err_19.code,
2310
- codeName: err_19.codeName,
2311
- message: err_19.message,
2312
- stack: err_19.stack
2361
+ code: err_20.code,
2362
+ codeName: err_20.codeName,
2363
+ message: err_20.message,
2364
+ stack: err_20.stack
2313
2365
  }], null, 2));
2314
- err_19.message = "Error in Find By ID: ".concat(this.collectionName, " => ").concat(err_19.codeName || 'NoCodeName', " => ").concat(err_19.message);
2315
- throw err_19;
2366
+ err_20.message = "Error in Find By ID: ".concat(this.collectionName, " => ").concat(err_20.codeName || 'NoCodeName', " => ").concat(err_20.message);
2367
+ throw err_20;
2316
2368
  case 5: return [4 /*yield*/, monitor.finish()];
2317
2369
  case 6:
2318
2370
  _b.sent();
@@ -2324,7 +2376,7 @@ var MongoManagerCollection = /** @class */ (function () {
2324
2376
  };
2325
2377
  MongoManagerCollection.prototype.findCount = function () {
2326
2378
  return __awaiter(this, arguments, void 0, function (filter, options, bypassSession) {
2327
- var mongoSession, _a, session, safeOptions, monitor, res, err_20;
2379
+ var mongoSession, _a, session, safeOptions, monitor, res, err_21;
2328
2380
  if (filter === void 0) { filter = {}; }
2329
2381
  if (bypassSession === void 0) { bypassSession = false; }
2330
2382
  return __generator(this, function (_b) {
@@ -2352,15 +2404,15 @@ var MongoManagerCollection = /** @class */ (function () {
2352
2404
  (0, subscription_dependency_context_1.recordDependencyResult)(this.collectionName, res, { filter: filter });
2353
2405
  return [2 /*return*/, res];
2354
2406
  case 3:
2355
- err_20 = _b.sent();
2407
+ err_21 = _b.sent();
2356
2408
  console.log(JSON.stringify([new Date(), 'Error Find Count', this.collectionName, filter, safeOptions, {
2357
- code: err_20.code,
2358
- codeName: err_20.codeName,
2359
- message: err_20.message,
2360
- stack: err_20.stack
2409
+ code: err_21.code,
2410
+ codeName: err_21.codeName,
2411
+ message: err_21.message,
2412
+ stack: err_21.stack
2361
2413
  }], null, 2));
2362
- err_20.message = "Error in Find Count: ".concat(this.collectionName, " => ").concat(err_20.codeName || 'NoCodeName', " => ").concat(err_20.message);
2363
- throw err_20;
2414
+ err_21.message = "Error in Find Count: ".concat(this.collectionName, " => ").concat(err_21.codeName || 'NoCodeName', " => ").concat(err_21.message);
2415
+ throw err_21;
2364
2416
  case 4: return [4 /*yield*/, monitor.finish()];
2365
2417
  case 5:
2366
2418
  _b.sent();
@@ -2430,7 +2482,7 @@ var MongoManagerCollection = /** @class */ (function () {
2430
2482
  };
2431
2483
  MongoManagerCollection.prototype.findOne = function () {
2432
2484
  return __awaiter(this, arguments, void 0, function (filter, options, skipCache, bypassSession) {
2433
- var mongoSession, _a, session, safeOptions, monitor, res, err_21;
2485
+ var mongoSession, _a, session, safeOptions, monitor, res, err_22;
2434
2486
  if (filter === void 0) { filter = {}; }
2435
2487
  if (skipCache === void 0) { skipCache = false; }
2436
2488
  if (bypassSession === void 0) { bypassSession = false; }
@@ -2462,15 +2514,15 @@ var MongoManagerCollection = /** @class */ (function () {
2462
2514
  (0, subscription_dependency_context_1.recordDependencyResult)(this.collectionName, res, { filter: filter });
2463
2515
  return [2 /*return*/, res];
2464
2516
  case 4:
2465
- err_21 = _b.sent();
2517
+ err_22 = _b.sent();
2466
2518
  console.log(JSON.stringify([new Date(), 'Error Find One', this.collectionName, filter, safeOptions, {
2467
- code: err_21.code,
2468
- codeName: err_21.codeName,
2469
- message: err_21.message,
2470
- stack: err_21.stack
2519
+ code: err_22.code,
2520
+ codeName: err_22.codeName,
2521
+ message: err_22.message,
2522
+ stack: err_22.stack
2471
2523
  }], null, 2));
2472
- err_21.message = "Error in Find One: ".concat(this.collectionName, " => ").concat(err_21.codeName || 'NoCodeName', " => ").concat(err_21.message);
2473
- throw err_21;
2524
+ err_22.message = "Error in Find One: ".concat(this.collectionName, " => ").concat(err_22.codeName || 'NoCodeName', " => ").concat(err_22.message);
2525
+ throw err_22;
2474
2526
  case 5: return [4 /*yield*/, monitor.finish()];
2475
2527
  case 6:
2476
2528
  _b.sent();
@@ -2482,7 +2534,7 @@ var MongoManagerCollection = /** @class */ (function () {
2482
2534
  };
2483
2535
  MongoManagerCollection.prototype.findOneAndDelete = function () {
2484
2536
  return __awaiter(this, arguments, void 0, function (filter, options, bypassLogs, bypassSession) {
2485
- var mongoSession, _a, session, safeOptions, monitor, doc, versionDoc, _b, err_22;
2537
+ var mongoSession, _a, session, safeOptions, monitor, doc, versionDoc, _b, err_23;
2486
2538
  if (filter === void 0) { filter = {}; }
2487
2539
  if (bypassLogs === void 0) { bypassLogs = false; }
2488
2540
  if (bypassSession === void 0) { bypassSession = false; }
@@ -2569,15 +2621,15 @@ var MongoManagerCollection = /** @class */ (function () {
2569
2621
  case 10: return [2 /*return*/, null];
2570
2622
  case 11: return [3 /*break*/, 15];
2571
2623
  case 12:
2572
- err_22 = _c.sent();
2624
+ err_23 = _c.sent();
2573
2625
  console.log(JSON.stringify([new Date(), 'Error Find One And Delete', this.collectionName, filter, safeOptions, {
2574
- code: err_22.code,
2575
- codeName: err_22.codeName,
2576
- message: err_22.message,
2577
- stack: err_22.stack
2626
+ code: err_23.code,
2627
+ codeName: err_23.codeName,
2628
+ message: err_23.message,
2629
+ stack: err_23.stack
2578
2630
  }], null, 2));
2579
- err_22.message = "Error in Find One And Delete: ".concat(this.collectionName, " => ").concat(err_22.codeName || 'NoCodeName', " => ").concat(err_22.message);
2580
- throw err_22;
2631
+ err_23.message = "Error in Find One And Delete: ".concat(this.collectionName, " => ").concat(err_23.codeName || 'NoCodeName', " => ").concat(err_23.message);
2632
+ throw err_23;
2581
2633
  case 13: return [4 /*yield*/, monitor.finish()];
2582
2634
  case 14:
2583
2635
  _c.sent();
@@ -2589,7 +2641,7 @@ var MongoManagerCollection = /** @class */ (function () {
2589
2641
  };
2590
2642
  MongoManagerCollection.prototype.findOneAndReplace = function () {
2591
2643
  return __awaiter(this, arguments, void 0, function (filter, replacement, options, bypassLogs, bypassCheckSchema, bypassSession) {
2592
- var validation, isValid, date, mongoSession, _a, session, safeOptions, monitor, doc, versionDoc, _b, err_23;
2644
+ var validation, isValid, date, mongoSession, _a, session, safeOptions, monitor, doc, versionDoc, _b, err_24;
2593
2645
  if (filter === void 0) { filter = {}; }
2594
2646
  if (bypassLogs === void 0) { bypassLogs = false; }
2595
2647
  if (bypassCheckSchema === void 0) { bypassCheckSchema = false; }
@@ -2702,15 +2754,15 @@ var MongoManagerCollection = /** @class */ (function () {
2702
2754
  case 12: return [2 /*return*/, null];
2703
2755
  case 13: return [3 /*break*/, 17];
2704
2756
  case 14:
2705
- err_23 = _c.sent();
2757
+ err_24 = _c.sent();
2706
2758
  console.log(JSON.stringify([new Date(), 'Error Find One And Replace', this.collectionName, filter, safeOptions, {
2707
- code: err_23.code,
2708
- codeName: err_23.codeName,
2709
- message: err_23.message,
2710
- stack: err_23.stack
2759
+ code: err_24.code,
2760
+ codeName: err_24.codeName,
2761
+ message: err_24.message,
2762
+ stack: err_24.stack
2711
2763
  }], null, 2));
2712
- err_23.message = "Error in Find One And Replace: ".concat(this.collectionName, " => ").concat(err_23.codeName || 'NoCodeName', " => ").concat(err_23.message);
2713
- throw err_23;
2764
+ err_24.message = "Error in Find One And Replace: ".concat(this.collectionName, " => ").concat(err_24.codeName || 'NoCodeName', " => ").concat(err_24.message);
2765
+ throw err_24;
2714
2766
  case 15: return [4 /*yield*/, monitor.finish()];
2715
2767
  case 16:
2716
2768
  _c.sent();
@@ -2722,7 +2774,7 @@ var MongoManagerCollection = /** @class */ (function () {
2722
2774
  };
2723
2775
  MongoManagerCollection.prototype.findOneAndUpdate = function () {
2724
2776
  return __awaiter(this, arguments, void 0, function (filter, update, options, bypassLogs, bypassCheckSchema, bypassSession) {
2725
- var validation, isValid, date, mongoSession, _a, session, safeOptions, monitor, doc, versionDoc, _b, err_24;
2777
+ var validation, isValid, date, mongoSession, _a, session, safeOptions, monitor, doc, versionDoc, _b, err_25;
2726
2778
  if (filter === void 0) { filter = {}; }
2727
2779
  if (bypassLogs === void 0) { bypassLogs = false; }
2728
2780
  if (bypassCheckSchema === void 0) { bypassCheckSchema = false; }
@@ -2852,15 +2904,15 @@ var MongoManagerCollection = /** @class */ (function () {
2852
2904
  case 12: return [2 /*return*/, null];
2853
2905
  case 13: return [3 /*break*/, 17];
2854
2906
  case 14:
2855
- err_24 = _c.sent();
2907
+ err_25 = _c.sent();
2856
2908
  console.log(JSON.stringify([new Date(), 'Error Find One And Update', this.collectionName, filter, safeOptions, {
2857
- code: err_24.code,
2858
- codeName: err_24.codeName,
2859
- message: err_24.message,
2860
- stack: err_24.stack
2909
+ code: err_25.code,
2910
+ codeName: err_25.codeName,
2911
+ message: err_25.message,
2912
+ stack: err_25.stack
2861
2913
  }], null, 2));
2862
- err_24.message = "Error in Find One And Update: ".concat(this.collectionName, " => ").concat(err_24.codeName || 'NoCodeName', " => ").concat(err_24.message);
2863
- throw err_24;
2914
+ err_25.message = "Error in Find One And Update: ".concat(this.collectionName, " => ").concat(err_25.codeName || 'NoCodeName', " => ").concat(err_25.message);
2915
+ throw err_25;
2864
2916
  case 15: return [4 /*yield*/, monitor.finish()];
2865
2917
  case 16:
2866
2918
  _c.sent();
@@ -2872,7 +2924,7 @@ var MongoManagerCollection = /** @class */ (function () {
2872
2924
  };
2873
2925
  MongoManagerCollection.prototype.indexes = function (options) {
2874
2926
  return __awaiter(this, void 0, void 0, function () {
2875
- var _a, session, safeOptions, monitor, res, err_25;
2927
+ var _a, session, safeOptions, monitor, res, err_26;
2876
2928
  return __generator(this, function (_b) {
2877
2929
  switch (_b.label) {
2878
2930
  case 0:
@@ -2886,15 +2938,15 @@ var MongoManagerCollection = /** @class */ (function () {
2886
2938
  res = _b.sent();
2887
2939
  return [2 /*return*/, res];
2888
2940
  case 3:
2889
- err_25 = _b.sent();
2941
+ err_26 = _b.sent();
2890
2942
  console.log(JSON.stringify([new Date(), 'Error Indexes', this.collectionName, safeOptions, {
2891
- code: err_25.code,
2892
- codeName: err_25.codeName,
2893
- message: err_25.message,
2894
- stack: err_25.stack
2943
+ code: err_26.code,
2944
+ codeName: err_26.codeName,
2945
+ message: err_26.message,
2946
+ stack: err_26.stack
2895
2947
  }], null, 2));
2896
- err_25.message = "Error in Indexes: ".concat(this.collectionName, " => ").concat(err_25.codeName || 'NoCodeName', " => ").concat(err_25.message);
2897
- throw err_25;
2948
+ err_26.message = "Error in Indexes: ".concat(this.collectionName, " => ").concat(err_26.codeName || 'NoCodeName', " => ").concat(err_26.message);
2949
+ throw err_26;
2898
2950
  case 4: return [4 /*yield*/, monitor.finish()];
2899
2951
  case 5:
2900
2952
  _b.sent();
@@ -2906,7 +2958,7 @@ var MongoManagerCollection = /** @class */ (function () {
2906
2958
  };
2907
2959
  MongoManagerCollection.prototype.indexExists = function (indexes, options) {
2908
2960
  return __awaiter(this, void 0, void 0, function () {
2909
- var _a, session, safeOptions, monitor, res, err_26;
2961
+ var _a, session, safeOptions, monitor, res, err_27;
2910
2962
  return __generator(this, function (_b) {
2911
2963
  switch (_b.label) {
2912
2964
  case 0:
@@ -2920,15 +2972,15 @@ var MongoManagerCollection = /** @class */ (function () {
2920
2972
  res = _b.sent();
2921
2973
  return [2 /*return*/, res];
2922
2974
  case 3:
2923
- err_26 = _b.sent();
2975
+ err_27 = _b.sent();
2924
2976
  console.log(JSON.stringify([new Date(), 'Error Index Exists', this.collectionName, indexes, safeOptions, {
2925
- code: err_26.code,
2926
- codeName: err_26.codeName,
2927
- message: err_26.message,
2928
- stack: err_26.stack
2977
+ code: err_27.code,
2978
+ codeName: err_27.codeName,
2979
+ message: err_27.message,
2980
+ stack: err_27.stack
2929
2981
  }], null, 2));
2930
- err_26.message = "Error in Index Exists: ".concat(this.collectionName, " => ").concat(err_26.codeName || 'NoCodeName', " => ").concat(err_26.message);
2931
- throw err_26;
2982
+ err_27.message = "Error in Index Exists: ".concat(this.collectionName, " => ").concat(err_27.codeName || 'NoCodeName', " => ").concat(err_27.message);
2983
+ throw err_27;
2932
2984
  case 4: return [4 /*yield*/, monitor.finish()];
2933
2985
  case 5:
2934
2986
  _b.sent();
@@ -2940,8 +2992,9 @@ var MongoManagerCollection = /** @class */ (function () {
2940
2992
  };
2941
2993
  MongoManagerCollection.prototype.insertMany = function (docs_1, options_1) {
2942
2994
  return __awaiter(this, arguments, void 0, function (docs, options, bypassLogs, bypassCheckSchema, bypassMonitor, bypassSession) {
2943
- var validationResults, docs_2, docs_2_1, doc, validation, isValid, e_7_1, validDocs, mongoSession, _a, session, safeOptions, i, doc, date, monitor, err_27;
2995
+ var validationResults, docs_2, docs_2_1, doc, validation, isValid, e_7_1, validDocs, mongoSession, _a, session, safeOptions, i, doc, date, monitor, err_28;
2944
2996
  var e_7, _b;
2997
+ var _this = this;
2945
2998
  if (bypassLogs === void 0) { bypassLogs = false; }
2946
2999
  if (bypassCheckSchema === void 0) { bypassCheckSchema = false; }
2947
3000
  if (bypassMonitor === void 0) { bypassMonitor = false; }
@@ -3072,7 +3125,7 @@ var MongoManagerCollection = /** @class */ (function () {
3072
3125
  _c.label = 15;
3073
3126
  case 15:
3074
3127
  _c.trys.push([15, 17, 18, 19]);
3075
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).insertMany(validDocs, options || undefined)];
3128
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).insertMany(validDocs, options || undefined); }, options)];
3076
3129
  case 16:
3077
3130
  _c.sent();
3078
3131
  if (!this.skipCache) {
@@ -3080,15 +3133,15 @@ var MongoManagerCollection = /** @class */ (function () {
3080
3133
  }
3081
3134
  return [2 /*return*/, validDocs];
3082
3135
  case 17:
3083
- err_27 = _c.sent();
3136
+ err_28 = _c.sent();
3084
3137
  console.log(JSON.stringify([new Date(), 'Error Insert Many', this.collectionName, docs, safeOptions, {
3085
- code: err_27.code,
3086
- codeName: err_27.codeName,
3087
- message: err_27.message,
3088
- stack: err_27.stack
3138
+ code: err_28.code,
3139
+ codeName: err_28.codeName,
3140
+ message: err_28.message,
3141
+ stack: err_28.stack
3089
3142
  }], null, 2));
3090
- err_27.message = "Error in Insert Many: ".concat(this.collectionName, " => ").concat(err_27.codeName || 'NoCodeName', " => ").concat(err_27.message);
3091
- throw err_27;
3143
+ err_28.message = "Error in Insert Many: ".concat(this.collectionName, " => ").concat(err_28.codeName || 'NoCodeName', " => ").concat(err_28.message);
3144
+ throw err_28;
3092
3145
  case 18:
3093
3146
  if (monitor) {
3094
3147
  monitor.finish();
@@ -3101,7 +3154,8 @@ var MongoManagerCollection = /** @class */ (function () {
3101
3154
  };
3102
3155
  MongoManagerCollection.prototype.insertOne = function (doc_1, options_1) {
3103
3156
  return __awaiter(this, arguments, void 0, function (doc, options, bypassLogs, bypassCheckSchema, bypassSession) {
3104
- var validation, isValid, date, mongoSession, _a, session, safeOptions, monitor, err_28;
3157
+ var validation, isValid, date, mongoSession, _a, session, safeOptions, monitor, err_29;
3158
+ var _this = this;
3105
3159
  if (bypassLogs === void 0) { bypassLogs = false; }
3106
3160
  if (bypassCheckSchema === void 0) { bypassCheckSchema = false; }
3107
3161
  if (bypassSession === void 0) { bypassSession = false; }
@@ -3188,7 +3242,7 @@ var MongoManagerCollection = /** @class */ (function () {
3188
3242
  _b.label = 6;
3189
3243
  case 6:
3190
3244
  _b.trys.push([6, 8, 9, 11]);
3191
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).insertOne(doc, options || undefined)];
3245
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).insertOne(doc, options || undefined); }, options)];
3192
3246
  case 7:
3193
3247
  _b.sent();
3194
3248
  if (!this.skipCache) {
@@ -3196,15 +3250,15 @@ var MongoManagerCollection = /** @class */ (function () {
3196
3250
  }
3197
3251
  return [2 /*return*/, doc];
3198
3252
  case 8:
3199
- err_28 = _b.sent();
3253
+ err_29 = _b.sent();
3200
3254
  console.log(JSON.stringify([new Date(), 'Error Insert One', this.collectionName, doc, safeOptions, {
3201
- code: err_28.code,
3202
- codeName: err_28.codeName,
3203
- message: err_28.message,
3204
- stack: err_28.stack
3255
+ code: err_29.code,
3256
+ codeName: err_29.codeName,
3257
+ message: err_29.message,
3258
+ stack: err_29.stack
3205
3259
  }], null, 2));
3206
- err_28.message = "Error in Insert One: ".concat(this.collectionName, " => ").concat(err_28.codeName || 'NoCodeName', " => ").concat(err_28.message);
3207
- throw err_28;
3260
+ err_29.message = "Error in Insert One: ".concat(this.collectionName, " => ").concat(err_29.codeName || 'NoCodeName', " => ").concat(err_29.message);
3261
+ throw err_29;
3208
3262
  case 9: return [4 /*yield*/, monitor.finish()];
3209
3263
  case 10:
3210
3264
  _b.sent();
@@ -3244,7 +3298,7 @@ var MongoManagerCollection = /** @class */ (function () {
3244
3298
  };
3245
3299
  MongoManagerCollection.prototype.rename = function (newName_1, options_1) {
3246
3300
  return __awaiter(this, arguments, void 0, function (newName, options, bypassSession) {
3247
- var mongoSession, _a, session, safeOptions, monitor, res, err_29;
3301
+ var mongoSession, _a, session, safeOptions, monitor, res, err_30;
3248
3302
  if (bypassSession === void 0) { bypassSession = false; }
3249
3303
  return __generator(this, function (_b) {
3250
3304
  switch (_b.label) {
@@ -3270,15 +3324,15 @@ var MongoManagerCollection = /** @class */ (function () {
3270
3324
  res = _b.sent();
3271
3325
  return [2 /*return*/, res];
3272
3326
  case 3:
3273
- err_29 = _b.sent();
3327
+ err_30 = _b.sent();
3274
3328
  console.log(JSON.stringify([new Date(), 'Error Rename', this.collectionName, newName, safeOptions, {
3275
- code: err_29.code,
3276
- codeName: err_29.codeName,
3277
- message: err_29.message,
3278
- stack: err_29.stack
3329
+ code: err_30.code,
3330
+ codeName: err_30.codeName,
3331
+ message: err_30.message,
3332
+ stack: err_30.stack
3279
3333
  }], null, 2));
3280
- err_29.message = "Error in Rename: ".concat(this.collectionName, " => ").concat(err_29.codeName || 'NoCodeName', " => ").concat(err_29.message);
3281
- throw err_29;
3334
+ err_30.message = "Error in Rename: ".concat(this.collectionName, " => ").concat(err_30.codeName || 'NoCodeName', " => ").concat(err_30.message);
3335
+ throw err_30;
3282
3336
  case 4: return [4 /*yield*/, monitor.finish()];
3283
3337
  case 5:
3284
3338
  _b.sent();
@@ -3290,7 +3344,8 @@ var MongoManagerCollection = /** @class */ (function () {
3290
3344
  };
3291
3345
  MongoManagerCollection.prototype.replaceOne = function (filter_1, replacement_1, options_1) {
3292
3346
  return __awaiter(this, arguments, void 0, function (filter, replacement, options, bypassLogs, bypassCheckSchema, doc, bypassSession) {
3293
- var validation, isValid, date, mongoSession, _a, session, safeOptions, versionDoc, _b, monitor, res, err_30, prevDoc, docId, docVersion, updatedDoc, monitor, res, err_31, monitor, res, err_32, _c, session_1, safeOptions_1, monitor, res, doc_1, err_33, monitor, res, err_34;
3347
+ var validation, isValid, date, mongoSession, _a, session, safeOptions, versionDoc, _b, monitor, res, err_31, prevDoc, docId, docVersion, updatedDoc_1, monitor, res, err_32, monitor, res, err_33, _c, session_1, safeOptions_1, monitor, res, doc_1, err_34, monitor, res, err_35;
3348
+ var _this = this;
3294
3349
  if (bypassLogs === void 0) { bypassLogs = false; }
3295
3350
  if (bypassCheckSchema === void 0) { bypassCheckSchema = false; }
3296
3351
  if (doc === void 0) { doc = null; }
@@ -3402,7 +3457,7 @@ var MongoManagerCollection = /** @class */ (function () {
3402
3457
  _d.label = 14;
3403
3458
  case 14:
3404
3459
  _d.trys.push([14, 16, 17, 19]);
3405
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).replaceOne(filter, replacement, options)];
3460
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).replaceOne(filter, replacement, options); }, options)];
3406
3461
  case 15:
3407
3462
  res = _d.sent();
3408
3463
  if (!this.skipCache) {
@@ -3410,15 +3465,15 @@ var MongoManagerCollection = /** @class */ (function () {
3410
3465
  }
3411
3466
  return [2 /*return*/, res];
3412
3467
  case 16:
3413
- err_30 = _d.sent();
3468
+ err_31 = _d.sent();
3414
3469
  console.log(JSON.stringify([new Date(), 'Error Replace One', this.collectionName, filter, replacement, safeOptions, {
3415
- code: err_30.code,
3416
- codeName: err_30.codeName,
3417
- message: err_30.message,
3418
- stack: err_30.stack
3470
+ code: err_31.code,
3471
+ codeName: err_31.codeName,
3472
+ message: err_31.message,
3473
+ stack: err_31.stack
3419
3474
  }], null, 2));
3420
- err_30.message = "Error in Replace One: ".concat(this.collectionName, " => ").concat(err_30.codeName || 'NoCodeName', " => ").concat(err_30.message);
3421
- throw err_30;
3475
+ err_31.message = "Error in Replace One: ".concat(this.collectionName, " => ").concat(err_31.codeName || 'NoCodeName', " => ").concat(err_31.message);
3476
+ throw err_31;
3422
3477
  case 17: return [4 /*yield*/, monitor.finish()];
3423
3478
  case 18:
3424
3479
  _d.sent();
@@ -3437,9 +3492,9 @@ var MongoManagerCollection = /** @class */ (function () {
3437
3492
  if (!prevDoc) return [3 /*break*/, 31];
3438
3493
  docId = doc._id;
3439
3494
  docVersion = doc.__v;
3440
- updatedDoc = (0, common_1.getMongoMergeUpdatedDoc)(replacement, doc, prevDoc);
3441
- updatedDoc._id = docId;
3442
- updatedDoc.__v = docVersion + 1;
3495
+ updatedDoc_1 = (0, common_1.getMongoMergeUpdatedDoc)(replacement, doc, prevDoc);
3496
+ updatedDoc_1._id = docId;
3497
+ updatedDoc_1.__v = docVersion + 1;
3443
3498
  if (!(this.createLogs && !bypassLogs)) return [3 /*break*/, 24];
3444
3499
  if (!(resolveio_server_app_1.ResolveIOServer.getServerConfig()['ROOT_URL'] !== 'https://resolveio.com'
3445
3500
  && resolveio_server_app_1.ResolveIOServer.getServerConfig()['ROOT_URL'] !== 'http://localhost:4200')) return [3 /*break*/, 22];
@@ -3450,7 +3505,7 @@ var MongoManagerCollection = /** @class */ (function () {
3450
3505
  type: 'document',
3451
3506
  collection: this.collectionName,
3452
3507
  id_document: docId,
3453
- payload: (0, common_1.getBinarySize)(JSON.stringify(['invalidVersion - merge', doc, filter, updatedDoc, safeOptions])) < 1000000 ? JSON.stringify(['invalidVersion - merge', doc, filter, updatedDoc, safeOptions], null, 2) : 'Too Big',
3508
+ payload: (0, common_1.getBinarySize)(JSON.stringify(['invalidVersion - merge', doc, filter, updatedDoc_1, safeOptions])) < 1000000 ? JSON.stringify(['invalidVersion - merge', doc, filter, updatedDoc_1, safeOptions], null, 2) : 'Too Big',
3454
3509
  method: 'replaceOne',
3455
3510
  id_user: '',
3456
3511
  user: '',
@@ -3466,7 +3521,7 @@ var MongoManagerCollection = /** @class */ (function () {
3466
3521
  type: 'document',
3467
3522
  collection: this.collectionName,
3468
3523
  id_document: docId,
3469
- payload: (0, common_1.getBinarySize)(JSON.stringify(['invalidVersion - merge', doc, filter, updatedDoc, safeOptions])) < 1000000 ? JSON.stringify(['invalidVersion - merge', doc, filter, updatedDoc, safeOptions], null, 2) : 'Too Big',
3524
+ payload: (0, common_1.getBinarySize)(JSON.stringify(['invalidVersion - merge', doc, filter, updatedDoc_1, safeOptions])) < 1000000 ? JSON.stringify(['invalidVersion - merge', doc, filter, updatedDoc_1, safeOptions], null, 2) : 'Too Big',
3470
3525
  method: 'replaceOne',
3471
3526
  id_user: '',
3472
3527
  user: '',
@@ -3481,11 +3536,11 @@ var MongoManagerCollection = /** @class */ (function () {
3481
3536
  _d.sent();
3482
3537
  _d.label = 24;
3483
3538
  case 24:
3484
- monitor = monitor_manager_1.MonitorMongo.create('replaceOne', this.collectionName, JSON.stringify([filter, updatedDoc, safeOptions]));
3539
+ monitor = monitor_manager_1.MonitorMongo.create('replaceOne', this.collectionName, JSON.stringify([filter, updatedDoc_1, safeOptions]));
3485
3540
  _d.label = 25;
3486
3541
  case 25:
3487
3542
  _d.trys.push([25, 27, 28, 30]);
3488
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).replaceOne(filter, updatedDoc, options)];
3543
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).replaceOne(filter, updatedDoc_1, options); }, options)];
3489
3544
  case 26:
3490
3545
  res = _d.sent();
3491
3546
  if (!this.skipCache) {
@@ -3493,15 +3548,15 @@ var MongoManagerCollection = /** @class */ (function () {
3493
3548
  }
3494
3549
  return [2 /*return*/, res];
3495
3550
  case 27:
3496
- err_31 = _d.sent();
3551
+ err_32 = _d.sent();
3497
3552
  console.log(JSON.stringify([new Date(), 'Error Replace One', this.collectionName, filter, replacement, safeOptions, {
3498
- code: err_31.code,
3499
- codeName: err_31.codeName,
3500
- message: err_31.message,
3501
- stack: err_31.stack
3553
+ code: err_32.code,
3554
+ codeName: err_32.codeName,
3555
+ message: err_32.message,
3556
+ stack: err_32.stack
3502
3557
  }], null, 2));
3503
- err_31.message = "Error in Replace One: ".concat(this.collectionName, " => ").concat(err_31.codeName || 'NoCodeName', " => ").concat(err_31.message);
3504
- throw err_31;
3558
+ err_32.message = "Error in Replace One: ".concat(this.collectionName, " => ").concat(err_32.codeName || 'NoCodeName', " => ").concat(err_32.message);
3559
+ throw err_32;
3505
3560
  case 28: return [4 /*yield*/, monitor.finish()];
3506
3561
  case 29:
3507
3562
  _d.sent();
@@ -3563,7 +3618,7 @@ var MongoManagerCollection = /** @class */ (function () {
3563
3618
  _d.label = 37;
3564
3619
  case 37:
3565
3620
  _d.trys.push([37, 39, 40, 42]);
3566
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).replaceOne(filter, replacement, options)];
3621
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).replaceOne(filter, replacement, options); }, options)];
3567
3622
  case 38:
3568
3623
  res = _d.sent();
3569
3624
  if (!this.skipCache) {
@@ -3571,15 +3626,15 @@ var MongoManagerCollection = /** @class */ (function () {
3571
3626
  }
3572
3627
  return [2 /*return*/, res];
3573
3628
  case 39:
3574
- err_32 = _d.sent();
3629
+ err_33 = _d.sent();
3575
3630
  console.log(JSON.stringify([new Date(), 'Error Replace One', this.collectionName, filter, replacement, safeOptions, {
3576
- code: err_32.code,
3577
- codeName: err_32.codeName,
3578
- message: err_32.message,
3579
- stack: err_32.stack
3631
+ code: err_33.code,
3632
+ codeName: err_33.codeName,
3633
+ message: err_33.message,
3634
+ stack: err_33.stack
3580
3635
  }], null, 2));
3581
- err_32.message = "Error in Replace One: ".concat(this.collectionName, " => ").concat(err_32.codeName || 'NoCodeName', " => ").concat(err_32.message);
3582
- throw err_32;
3636
+ err_33.message = "Error in Replace One: ".concat(this.collectionName, " => ").concat(err_33.codeName || 'NoCodeName', " => ").concat(err_33.message);
3637
+ throw err_33;
3583
3638
  case 40: return [4 /*yield*/, monitor.finish()];
3584
3639
  case 41:
3585
3640
  _d.sent();
@@ -3615,7 +3670,7 @@ var MongoManagerCollection = /** @class */ (function () {
3615
3670
  _d.label = 46;
3616
3671
  case 46:
3617
3672
  _d.trys.push([46, 56, 57, 59]);
3618
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).replaceOne(filter, replacement, options)];
3673
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).replaceOne(filter, replacement, options); }, options)];
3619
3674
  case 47:
3620
3675
  res = _d.sent();
3621
3676
  return [4 /*yield*/, this.findOne(filter, options || undefined)];
@@ -3708,15 +3763,15 @@ var MongoManagerCollection = /** @class */ (function () {
3708
3763
  }
3709
3764
  return [2 /*return*/, res];
3710
3765
  case 56:
3711
- err_33 = _d.sent();
3766
+ err_34 = _d.sent();
3712
3767
  console.log(JSON.stringify([new Date(), 'Error Replace One (Find One And Replace)', this.collectionName, filter, safeOptions_1, {
3713
- code: err_33.code,
3714
- codeName: err_33.codeName,
3715
- message: err_33.message,
3716
- stack: err_33.stack
3768
+ code: err_34.code,
3769
+ codeName: err_34.codeName,
3770
+ message: err_34.message,
3771
+ stack: err_34.stack
3717
3772
  }], null, 2));
3718
- err_33.message = "Error in Replace One (Find One And Replace): ".concat(this.collectionName, " => ").concat(err_33.codeName || 'NoCodeName', " => ").concat(err_33.message);
3719
- throw err_33;
3773
+ err_34.message = "Error in Replace One (Find One And Replace): ".concat(this.collectionName, " => ").concat(err_34.codeName || 'NoCodeName', " => ").concat(err_34.message);
3774
+ throw err_34;
3720
3775
  case 57: return [4 /*yield*/, monitor.finish()];
3721
3776
  case 58:
3722
3777
  _d.sent();
@@ -3727,7 +3782,7 @@ var MongoManagerCollection = /** @class */ (function () {
3727
3782
  _d.label = 61;
3728
3783
  case 61:
3729
3784
  _d.trys.push([61, 63, 64, 66]);
3730
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).replaceOne(filter, replacement, options)];
3785
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).replaceOne(filter, replacement, options); }, options)];
3731
3786
  case 62:
3732
3787
  res = _d.sent();
3733
3788
  if (!this.skipCache) {
@@ -3735,15 +3790,15 @@ var MongoManagerCollection = /** @class */ (function () {
3735
3790
  }
3736
3791
  return [2 /*return*/, res];
3737
3792
  case 63:
3738
- err_34 = _d.sent();
3793
+ err_35 = _d.sent();
3739
3794
  console.log(JSON.stringify([new Date(), 'Error Replace One', this.collectionName, filter, replacement, safeOptions, {
3740
- code: err_34.code,
3741
- codeName: err_34.codeName,
3742
- message: err_34.message,
3743
- stack: err_34.stack
3795
+ code: err_35.code,
3796
+ codeName: err_35.codeName,
3797
+ message: err_35.message,
3798
+ stack: err_35.stack
3744
3799
  }], null, 2));
3745
- err_34.message = "Error in Replace One: ".concat(this.collectionName, " => ").concat(err_34.codeName || 'NoCodeName', " => ").concat(err_34.message);
3746
- throw err_34;
3800
+ err_35.message = "Error in Replace One: ".concat(this.collectionName, " => ").concat(err_35.codeName || 'NoCodeName', " => ").concat(err_35.message);
3801
+ throw err_35;
3747
3802
  case 64: return [4 /*yield*/, monitor.finish()];
3748
3803
  case 65:
3749
3804
  _d.sent();
@@ -3755,7 +3810,8 @@ var MongoManagerCollection = /** @class */ (function () {
3755
3810
  };
3756
3811
  MongoManagerCollection.prototype.updateMany = function (filter_1, update_1, options_1) {
3757
3812
  return __awaiter(this, arguments, void 0, function (filter, update, options, bypassLogs, bypassCheckSchema, bypassVersions, bypassSession) {
3758
- var isEmptyUpdate, allEmpty, date, validation, isValid, mongoSession, _a, session, safeOptions, docs, i, doc, versionDoc, _b, monitor, res, err_35;
3813
+ var isEmptyUpdate, allEmpty, date, validation, isValid, mongoSession, _a, session, safeOptions, docs, i, doc, versionDoc, _b, monitor, res, err_36;
3814
+ var _this = this;
3759
3815
  if (bypassLogs === void 0) { bypassLogs = false; }
3760
3816
  if (bypassCheckSchema === void 0) { bypassCheckSchema = false; }
3761
3817
  if (bypassVersions === void 0) { bypassVersions = false; }
@@ -3905,7 +3961,7 @@ var MongoManagerCollection = /** @class */ (function () {
3905
3961
  _c.label = 16;
3906
3962
  case 16:
3907
3963
  _c.trys.push([16, 18, 19, 21]);
3908
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).updateMany(filter, update, options)];
3964
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).updateMany(filter, update, options); }, options)];
3909
3965
  case 17:
3910
3966
  res = _c.sent();
3911
3967
  if (!this.skipCache) {
@@ -3913,15 +3969,15 @@ var MongoManagerCollection = /** @class */ (function () {
3913
3969
  }
3914
3970
  return [2 /*return*/, res];
3915
3971
  case 18:
3916
- err_35 = _c.sent();
3972
+ err_36 = _c.sent();
3917
3973
  console.log(JSON.stringify([new Date(), 'Error Update Many', this.collectionName, filter, update, safeOptions, {
3918
- code: err_35.code,
3919
- codeName: err_35.codeName,
3920
- message: err_35.message,
3921
- stack: err_35.stack
3974
+ code: err_36.code,
3975
+ codeName: err_36.codeName,
3976
+ message: err_36.message,
3977
+ stack: err_36.stack
3922
3978
  }], null, 2));
3923
- err_35.message = "Error in Update Many: ".concat(this.collectionName, " => ").concat(err_35.codeName || 'NoCodeName', " => ").concat(err_35.message);
3924
- throw err_35;
3979
+ err_36.message = "Error in Update Many: ".concat(this.collectionName, " => ").concat(err_36.codeName || 'NoCodeName', " => ").concat(err_36.message);
3980
+ throw err_36;
3925
3981
  case 19: return [4 /*yield*/, monitor.finish()];
3926
3982
  case 20:
3927
3983
  _c.sent();
@@ -3933,7 +3989,8 @@ var MongoManagerCollection = /** @class */ (function () {
3933
3989
  };
3934
3990
  MongoManagerCollection.prototype.updateOne = function (filter_1, update_1, options_1) {
3935
3991
  return __awaiter(this, arguments, void 0, function (filter, update, options, bypassLogs, bypassCheckSchema, bypassSession) {
3936
- var validation, isValid, isEmptyUpdate, allEmpty, date, mongoSession, _a, session, safeOptions, doc, versionDoc, _b, monitor, res, err_36, monitor, res, err_37, monitor, res, doc, err_38, monitor, res, err_39;
3992
+ var validation, isValid, isEmptyUpdate, allEmpty, date, mongoSession, _a, session, safeOptions, doc, versionDoc, _b, monitor, res, err_37, monitor, res, err_38, monitor, res, doc, err_39, monitor, res, err_40;
3993
+ var _this = this;
3937
3994
  if (bypassLogs === void 0) { bypassLogs = false; }
3938
3995
  if (bypassCheckSchema === void 0) { bypassCheckSchema = false; }
3939
3996
  if (bypassSession === void 0) { bypassSession = false; }
@@ -4074,7 +4131,7 @@ var MongoManagerCollection = /** @class */ (function () {
4074
4131
  _c.label = 12;
4075
4132
  case 12:
4076
4133
  _c.trys.push([12, 14, 15, 17]);
4077
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).updateOne(filter, update, options || undefined)];
4134
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).updateOne(filter, update, options || undefined); }, options)];
4078
4135
  case 13:
4079
4136
  res = _c.sent();
4080
4137
  if (!this.skipCache) {
@@ -4082,15 +4139,15 @@ var MongoManagerCollection = /** @class */ (function () {
4082
4139
  }
4083
4140
  return [2 /*return*/, res];
4084
4141
  case 14:
4085
- err_36 = _c.sent();
4142
+ err_37 = _c.sent();
4086
4143
  console.log(JSON.stringify([new Date(), 'Error Update One', this.collectionName, filter, update, safeOptions, {
4087
- code: err_36.code,
4088
- codeName: err_36.codeName,
4089
- message: err_36.message,
4090
- stack: err_36.stack
4144
+ code: err_37.code,
4145
+ codeName: err_37.codeName,
4146
+ message: err_37.message,
4147
+ stack: err_37.stack
4091
4148
  }], null, 2));
4092
- err_36.message = "Error in Update One: ".concat(this.collectionName, " => ").concat(err_36.codeName || 'NoCodeName', " => ").concat(err_36.message);
4093
- throw err_36;
4149
+ err_37.message = "Error in Update One: ".concat(this.collectionName, " => ").concat(err_37.codeName || 'NoCodeName', " => ").concat(err_37.message);
4150
+ throw err_37;
4094
4151
  case 15: return [4 /*yield*/, monitor.finish()];
4095
4152
  case 16:
4096
4153
  _c.sent();
@@ -4166,7 +4223,7 @@ var MongoManagerCollection = /** @class */ (function () {
4166
4223
  _c.label = 22;
4167
4224
  case 22:
4168
4225
  _c.trys.push([22, 24, 25, 27]);
4169
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).updateOne(filter, update, options || undefined)];
4226
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).updateOne(filter, update, options || undefined); }, options)];
4170
4227
  case 23:
4171
4228
  res = _c.sent();
4172
4229
  if (!this.skipCache) {
@@ -4174,15 +4231,15 @@ var MongoManagerCollection = /** @class */ (function () {
4174
4231
  }
4175
4232
  return [2 /*return*/, res];
4176
4233
  case 24:
4177
- err_37 = _c.sent();
4234
+ err_38 = _c.sent();
4178
4235
  console.log(JSON.stringify([new Date(), 'Error Update One', this.collectionName, filter, safeOptions, {
4179
- code: err_37.code,
4180
- codeName: err_37.codeName,
4181
- message: err_37.message,
4182
- stack: err_37.stack
4236
+ code: err_38.code,
4237
+ codeName: err_38.codeName,
4238
+ message: err_38.message,
4239
+ stack: err_38.stack
4183
4240
  }], null, 2));
4184
- err_37.message = "Error in Update One: ".concat(this.collectionName, " => ").concat(err_37.codeName || 'NoCodeName', " => ").concat(err_37.message);
4185
- throw err_37;
4241
+ err_38.message = "Error in Update One: ".concat(this.collectionName, " => ").concat(err_38.codeName || 'NoCodeName', " => ").concat(err_38.message);
4242
+ throw err_38;
4186
4243
  case 25: return [4 /*yield*/, monitor.finish()];
4187
4244
  case 26:
4188
4245
  _c.sent();
@@ -4231,7 +4288,7 @@ var MongoManagerCollection = /** @class */ (function () {
4231
4288
  _c.label = 31;
4232
4289
  case 31:
4233
4290
  _c.trys.push([31, 42, 43, 45]);
4234
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).updateOne(filter, update, options || undefined)];
4291
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).updateOne(filter, update, options || undefined); }, options)];
4235
4292
  case 32:
4236
4293
  res = _c.sent();
4237
4294
  return [4 /*yield*/, this.findOne(filter, options || undefined)];
@@ -4326,15 +4383,15 @@ var MongoManagerCollection = /** @class */ (function () {
4326
4383
  _c.label = 41;
4327
4384
  case 41: return [2 /*return*/, res];
4328
4385
  case 42:
4329
- err_38 = _c.sent();
4386
+ err_39 = _c.sent();
4330
4387
  console.log(JSON.stringify([new Date(), 'Error Update One (Find One And Update)', this.collectionName, filter, safeOptions, {
4331
- code: err_38.code,
4332
- codeName: err_38.codeName,
4333
- message: err_38.message,
4334
- stack: err_38.stack
4388
+ code: err_39.code,
4389
+ codeName: err_39.codeName,
4390
+ message: err_39.message,
4391
+ stack: err_39.stack
4335
4392
  }], null, 2));
4336
- err_38.message = "Error in Update One (Find One And Update): ".concat(this.collectionName, " => ").concat(err_38.codeName || 'NoCodeName', " => ").concat(err_38.message);
4337
- throw err_38;
4393
+ err_39.message = "Error in Update One (Find One And Update): ".concat(this.collectionName, " => ").concat(err_39.codeName || 'NoCodeName', " => ").concat(err_39.message);
4394
+ throw err_39;
4338
4395
  case 43: return [4 /*yield*/, monitor.finish()];
4339
4396
  case 44:
4340
4397
  _c.sent();
@@ -4345,7 +4402,7 @@ var MongoManagerCollection = /** @class */ (function () {
4345
4402
  _c.label = 47;
4346
4403
  case 47:
4347
4404
  _c.trys.push([47, 49, 50, 52]);
4348
- return [4 /*yield*/, resolveio_server_app_1.ResolveIOServer.getMainDB().collection(this.collectionName, this.collectionOptions).updateOne(filter, update, options || undefined)];
4405
+ return [4 /*yield*/, this.retryWrite(function () { return resolveio_server_app_1.ResolveIOServer.getMainDB().collection(_this.collectionName, _this.collectionOptions).updateOne(filter, update, options || undefined); }, options)];
4349
4406
  case 48:
4350
4407
  res = _c.sent();
4351
4408
  if (!this.skipCache) {
@@ -4353,15 +4410,15 @@ var MongoManagerCollection = /** @class */ (function () {
4353
4410
  }
4354
4411
  return [2 /*return*/, res];
4355
4412
  case 49:
4356
- err_39 = _c.sent();
4413
+ err_40 = _c.sent();
4357
4414
  console.log(JSON.stringify([new Date(), 'Error Update One', this.collectionName, filter, update, safeOptions, {
4358
- code: err_39.code,
4359
- codeName: err_39.codeName,
4360
- message: err_39.message,
4361
- stack: err_39.stack
4415
+ code: err_40.code,
4416
+ codeName: err_40.codeName,
4417
+ message: err_40.message,
4418
+ stack: err_40.stack
4362
4419
  }], null, 2));
4363
- err_39.message = "Error in Update One: ".concat(this.collectionName, " => ").concat(err_39.codeName || 'NoCodeName', " => ").concat(err_39.message);
4364
- throw err_39;
4420
+ err_40.message = "Error in Update One: ".concat(this.collectionName, " => ").concat(err_40.codeName || 'NoCodeName', " => ").concat(err_40.message);
4421
+ throw err_40;
4365
4422
  case 50: return [4 /*yield*/, monitor.finish()];
4366
4423
  case 51:
4367
4424
  _c.sent();
@@ -4401,7 +4458,7 @@ var MongoManagerUserCollection = /** @class */ (function (_super) {
4401
4458
  };
4402
4459
  MongoManagerUserCollection.prototype.authenticate = function (user, password) {
4403
4460
  return __awaiter(this, void 0, void 0, function () {
4404
- var attemptsInterval, calculatedInterval, hashBuffer, err_40;
4461
+ var attemptsInterval, calculatedInterval, hashBuffer, err_41;
4405
4462
  return __generator(this, function (_a) {
4406
4463
  switch (_a.label) {
4407
4464
  case 0:
@@ -4475,9 +4532,9 @@ var MongoManagerUserCollection = /** @class */ (function (_super) {
4475
4532
  _a.label = 10;
4476
4533
  case 10: return [3 /*break*/, 12];
4477
4534
  case 11:
4478
- err_40 = _a.sent();
4479
- err_40.message = "Error in User Authenticate: ".concat(JSON.stringify(user, null, 2), " - ").concat(err_40.message);
4480
- throw err_40;
4535
+ err_41 = _a.sent();
4536
+ err_41.message = "Error in User Authenticate: ".concat(JSON.stringify(user, null, 2), " - ").concat(err_41.message);
4537
+ throw err_41;
4481
4538
  case 12: return [2 /*return*/];
4482
4539
  }
4483
4540
  });
@@ -4498,7 +4555,7 @@ var MongoManagerUserCollection = /** @class */ (function (_super) {
4498
4555
  };
4499
4556
  MongoManagerUserCollection.prototype.setPassword = function (user, password) {
4500
4557
  return __awaiter(this, void 0, void 0, function () {
4501
- var saltBuffer, salt, hashRaw, hash, err_41;
4558
+ var saltBuffer, salt, hashRaw, hash, err_42;
4502
4559
  return __generator(this, function (_a) {
4503
4560
  switch (_a.label) {
4504
4561
  case 0:
@@ -4524,9 +4581,9 @@ var MongoManagerUserCollection = /** @class */ (function (_super) {
4524
4581
  hash = Buffer.from(hashRaw, 'binary').toString('hex');
4525
4582
  return [2 /*return*/, user_collection_1.Users.updateOne({ _id: user._id }, { $set: { hash: hash, salt: salt, services: {}, attempts: 0 } })];
4526
4583
  case 6:
4527
- err_41 = _a.sent();
4528
- err_41.message = "Error in User Set Password: ".concat(JSON.stringify(user, null, 2), " - ").concat(err_41.message);
4529
- throw err_41;
4584
+ err_42 = _a.sent();
4585
+ err_42.message = "Error in User Set Password: ".concat(JSON.stringify(user, null, 2), " - ").concat(err_42.message);
4586
+ throw err_42;
4530
4587
  case 7: return [2 /*return*/];
4531
4588
  }
4532
4589
  });