@resolveio/server-lib 22.2.17 → 22.2.19
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/managers/error-auto-fix.manager.d.ts +1 -0
- package/managers/error-auto-fix.manager.js +70 -15
- package/managers/error-auto-fix.manager.js.map +1 -1
- package/managers/method.manager.js +2 -0
- package/managers/method.manager.js.map +1 -1
- package/managers/mongo.manager.d.ts +3 -0
- package/managers/mongo.manager.js +184 -65
- package/managers/mongo.manager.js.map +1 -1
- package/managers/slow-query-verifier.manager.d.ts +22 -0
- package/managers/slow-query-verifier.manager.js +435 -53
- package/managers/slow-query-verifier.manager.js.map +1 -1
- package/managers/subscription.manager.d.ts +1 -0
- package/managers/subscription.manager.js +57 -21
- package/managers/subscription.manager.js.map +1 -1
- package/methods/ai-terminal.d.ts +21 -0
- package/methods/ai-terminal.js +175 -31
- package/methods/ai-terminal.js.map +1 -1
- package/methods/diagnostics.d.ts +2 -0
- package/methods/diagnostics.js +514 -0
- package/methods/diagnostics.js.map +1 -0
- package/methods.ts +15 -0
- package/package.json +1 -1
- package/resolveio-server-app.d.ts +17 -1
- package/resolveio-server-app.js +293 -25
- package/resolveio-server-app.js.map +1 -1
- package/util/error-reporter.js +26 -126
- package/util/error-reporter.js.map +1 -1
- package/util/slow-query-reporter.d.ts +0 -3
- package/util/slow-query-reporter.js +13 -120
- package/util/slow-query-reporter.js.map +1 -1
|
@@ -124,6 +124,7 @@ export declare class SubscriptionManager {
|
|
|
124
124
|
private isResumeTokenInvalid;
|
|
125
125
|
private enableLocalOplogFallback;
|
|
126
126
|
getUseLocalOplog(): boolean;
|
|
127
|
+
handleMongoReconnect(reason: string): Promise<void>;
|
|
127
128
|
notifyLocalOplog(collection: string, type?: string): void;
|
|
128
129
|
private getResumeTokenDocId;
|
|
129
130
|
private loadResumeToken;
|
|
@@ -1578,6 +1578,42 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
1578
1578
|
SubscriptionManager.prototype.getUseLocalOplog = function () {
|
|
1579
1579
|
return this._useLocalOplog;
|
|
1580
1580
|
};
|
|
1581
|
+
SubscriptionManager.prototype.handleMongoReconnect = function (reason) {
|
|
1582
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
1583
|
+
var resumeToken, _a, error_3;
|
|
1584
|
+
return __generator(this, function (_b) {
|
|
1585
|
+
switch (_b.label) {
|
|
1586
|
+
case 0:
|
|
1587
|
+
if (this._useLocalOplog) {
|
|
1588
|
+
this.queueFullResync("mongo-reconnect:".concat(reason));
|
|
1589
|
+
return [2 /*return*/];
|
|
1590
|
+
}
|
|
1591
|
+
_b.label = 1;
|
|
1592
|
+
case 1:
|
|
1593
|
+
_b.trys.push([1, 5, , 6]);
|
|
1594
|
+
_a = this._lastResumeToken;
|
|
1595
|
+
if (_a) return [3 /*break*/, 3];
|
|
1596
|
+
return [4 /*yield*/, this.loadResumeToken()];
|
|
1597
|
+
case 2:
|
|
1598
|
+
_a = (_b.sent());
|
|
1599
|
+
_b.label = 3;
|
|
1600
|
+
case 3:
|
|
1601
|
+
resumeToken = _a;
|
|
1602
|
+
return [4 /*yield*/, this.tailOpLog(resumeToken || undefined)];
|
|
1603
|
+
case 4:
|
|
1604
|
+
_b.sent();
|
|
1605
|
+
return [3 /*break*/, 6];
|
|
1606
|
+
case 5:
|
|
1607
|
+
error_3 = _b.sent();
|
|
1608
|
+
console.log(new Date(), 'Sub Manager', 'Mongo reconnect: tailOpLog restart failed', reason, error_3);
|
|
1609
|
+
return [3 /*break*/, 6];
|
|
1610
|
+
case 6:
|
|
1611
|
+
this.queueFullResync("mongo-reconnect:".concat(reason));
|
|
1612
|
+
return [2 /*return*/];
|
|
1613
|
+
}
|
|
1614
|
+
});
|
|
1615
|
+
});
|
|
1616
|
+
};
|
|
1581
1617
|
SubscriptionManager.prototype.notifyLocalOplog = function (collection, type) {
|
|
1582
1618
|
var _this = this;
|
|
1583
1619
|
if (type === void 0) { type = 'update'; }
|
|
@@ -1611,7 +1647,7 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
1611
1647
|
};
|
|
1612
1648
|
SubscriptionManager.prototype.loadResumeToken = function () {
|
|
1613
1649
|
return __awaiter(this, void 0, void 0, function () {
|
|
1614
|
-
var db_1, loadToken, mongoManager, _a,
|
|
1650
|
+
var db_1, loadToken, mongoManager, _a, error_4;
|
|
1615
1651
|
var _this = this;
|
|
1616
1652
|
return __generator(this, function (_b) {
|
|
1617
1653
|
switch (_b.label) {
|
|
@@ -1659,8 +1695,8 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
1659
1695
|
_b.label = 4;
|
|
1660
1696
|
case 4: return [2 /*return*/, _a];
|
|
1661
1697
|
case 5:
|
|
1662
|
-
|
|
1663
|
-
console.log(new Date(), 'Sub Manager', 'Failed to load oplog resume token',
|
|
1698
|
+
error_4 = _b.sent();
|
|
1699
|
+
console.log(new Date(), 'Sub Manager', 'Failed to load oplog resume token', error_4);
|
|
1664
1700
|
return [2 /*return*/, null];
|
|
1665
1701
|
case 6: return [2 /*return*/];
|
|
1666
1702
|
}
|
|
@@ -1669,7 +1705,7 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
1669
1705
|
};
|
|
1670
1706
|
SubscriptionManager.prototype.saveResumeToken = function (token) {
|
|
1671
1707
|
return __awaiter(this, void 0, void 0, function () {
|
|
1672
|
-
var db_2, saveToken, mongoManager,
|
|
1708
|
+
var db_2, saveToken, mongoManager, error_5;
|
|
1673
1709
|
var _this = this;
|
|
1674
1710
|
return __generator(this, function (_a) {
|
|
1675
1711
|
switch (_a.label) {
|
|
@@ -1706,8 +1742,8 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
1706
1742
|
_a.label = 5;
|
|
1707
1743
|
case 5: return [3 /*break*/, 7];
|
|
1708
1744
|
case 6:
|
|
1709
|
-
|
|
1710
|
-
console.log(new Date(), 'Sub Manager', 'Failed to persist oplog resume token',
|
|
1745
|
+
error_5 = _a.sent();
|
|
1746
|
+
console.log(new Date(), 'Sub Manager', 'Failed to persist oplog resume token', error_5);
|
|
1711
1747
|
return [3 /*break*/, 7];
|
|
1712
1748
|
case 7: return [2 /*return*/];
|
|
1713
1749
|
}
|
|
@@ -1716,7 +1752,7 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
1716
1752
|
};
|
|
1717
1753
|
SubscriptionManager.prototype.clearResumeToken = function () {
|
|
1718
1754
|
return __awaiter(this, void 0, void 0, function () {
|
|
1719
|
-
var db_3, clearToken, mongoManager,
|
|
1755
|
+
var db_3, clearToken, mongoManager, error_6;
|
|
1720
1756
|
var _this = this;
|
|
1721
1757
|
return __generator(this, function (_a) {
|
|
1722
1758
|
switch (_a.label) {
|
|
@@ -1749,8 +1785,8 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
1749
1785
|
_a.label = 4;
|
|
1750
1786
|
case 4: return [3 /*break*/, 6];
|
|
1751
1787
|
case 5:
|
|
1752
|
-
|
|
1753
|
-
console.log(new Date(), 'Sub Manager', 'Failed to clear oplog resume token',
|
|
1788
|
+
error_6 = _a.sent();
|
|
1789
|
+
console.log(new Date(), 'Sub Manager', 'Failed to clear oplog resume token', error_6);
|
|
1754
1790
|
return [3 /*break*/, 6];
|
|
1755
1791
|
case 6: return [2 /*return*/];
|
|
1756
1792
|
}
|
|
@@ -1821,7 +1857,7 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
1821
1857
|
};
|
|
1822
1858
|
SubscriptionManager.prototype.fullResyncSubscriptions = function (reason) {
|
|
1823
1859
|
return __awaiter(this, void 0, void 0, function () {
|
|
1824
|
-
var subs, subs_1, subs_1_1, sub, pub, _a, _b, client, ws, _c, e_4_1, e_5_1,
|
|
1860
|
+
var subs, subs_1, subs_1_1, sub, pub, _a, _b, client, ws, _c, e_4_1, e_5_1, error_7;
|
|
1825
1861
|
var e_5, _d, e_4, _e;
|
|
1826
1862
|
var _f, _g, _h, _j, _k;
|
|
1827
1863
|
return __generator(this, function (_l) {
|
|
@@ -1919,8 +1955,8 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
1919
1955
|
return [7 /*endfinally*/];
|
|
1920
1956
|
case 19: return [3 /*break*/, 21];
|
|
1921
1957
|
case 20:
|
|
1922
|
-
|
|
1923
|
-
console.log(new Date(), 'Sub Manager', 'Full resync failed', reason,
|
|
1958
|
+
error_7 = _l.sent();
|
|
1959
|
+
console.log(new Date(), 'Sub Manager', 'Full resync failed', reason, error_7);
|
|
1924
1960
|
return [3 /*break*/, 21];
|
|
1925
1961
|
case 21: return [2 /*return*/];
|
|
1926
1962
|
}
|
|
@@ -1930,7 +1966,7 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
1930
1966
|
// Watch (tail) Mongo's operation log on the entire database (all insert/modify/delete will trigger this function)
|
|
1931
1967
|
SubscriptionManager.prototype.tailOpLog = function (resumeToken) {
|
|
1932
1968
|
return __awaiter(this, void 0, void 0, function () {
|
|
1933
|
-
var watchDatabases, pipeline, lastResumeToken_1, startedWithResumeToken,
|
|
1969
|
+
var watchDatabases, pipeline, lastResumeToken_1, startedWithResumeToken, error_8, innerError_1, error_9;
|
|
1934
1970
|
var _this = this;
|
|
1935
1971
|
return __generator(this, function (_a) {
|
|
1936
1972
|
switch (_a.label) {
|
|
@@ -1991,9 +2027,9 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
1991
2027
|
startedWithResumeToken = true;
|
|
1992
2028
|
return [3 /*break*/, 16];
|
|
1993
2029
|
case 5:
|
|
1994
|
-
|
|
1995
|
-
if (!this.isChangeStreamUnsupported(
|
|
1996
|
-
return [4 /*yield*/, this.enableLocalOplogFallback('change-stream-unsupported',
|
|
2030
|
+
error_8 = _a.sent();
|
|
2031
|
+
if (!this.isChangeStreamUnsupported(error_8)) return [3 /*break*/, 7];
|
|
2032
|
+
return [4 /*yield*/, this.enableLocalOplogFallback('change-stream-unsupported', error_8)];
|
|
1997
2033
|
case 6:
|
|
1998
2034
|
_a.sent();
|
|
1999
2035
|
return [2 /*return*/];
|
|
@@ -2009,7 +2045,7 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
2009
2045
|
case 10:
|
|
2010
2046
|
_a.sent();
|
|
2011
2047
|
lastResumeToken_1 = null;
|
|
2012
|
-
console.log(new Date(), 'oplog resumeAfter failed, starting fresh',
|
|
2048
|
+
console.log(new Date(), 'oplog resumeAfter failed, starting fresh', error_8);
|
|
2013
2049
|
_a.label = 11;
|
|
2014
2050
|
case 11:
|
|
2015
2051
|
_a.trys.push([11, 12, , 15]);
|
|
@@ -2033,13 +2069,13 @@ var SubscriptionManager = /** @class */ (function () {
|
|
|
2033
2069
|
this._oplog$ = resolveio_server_app_1.ResolveIOServer.getMongoConnection().watch(pipeline, { fullDocument: 'updateLookup' });
|
|
2034
2070
|
return [3 /*break*/, 21];
|
|
2035
2071
|
case 18:
|
|
2036
|
-
|
|
2037
|
-
if (!this.isChangeStreamUnsupported(
|
|
2038
|
-
return [4 /*yield*/, this.enableLocalOplogFallback('change-stream-unsupported',
|
|
2072
|
+
error_9 = _a.sent();
|
|
2073
|
+
if (!this.isChangeStreamUnsupported(error_9)) return [3 /*break*/, 20];
|
|
2074
|
+
return [4 /*yield*/, this.enableLocalOplogFallback('change-stream-unsupported', error_9)];
|
|
2039
2075
|
case 19:
|
|
2040
2076
|
_a.sent();
|
|
2041
2077
|
return [2 /*return*/];
|
|
2042
|
-
case 20: throw
|
|
2078
|
+
case 20: throw error_9;
|
|
2043
2079
|
case 21:
|
|
2044
2080
|
console.log(new Date(), 'oplog started', startedWithResumeToken ? '(resumeAfter)' : '');
|
|
2045
2081
|
this._oplog$.on('change', function (doc) { return __awaiter(_this, void 0, void 0, function () {
|