@harperfast/harper 5.2.4 → 5.2.6
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/bin/restart.ts +48 -23
- package/bin/restartExitWatchdog.ts +99 -0
- package/bin/run.ts +16 -10
- package/components/status/crossThread.ts +69 -44
- package/components/status/types.ts +1 -0
- package/dist/bin/restart.js +39 -21
- package/dist/bin/restart.js.map +1 -1
- package/dist/bin/restartExitWatchdog.d.ts +5 -0
- package/dist/bin/restartExitWatchdog.js +100 -0
- package/dist/bin/restartExitWatchdog.js.map +1 -0
- package/dist/bin/run.d.ts +2 -0
- package/dist/bin/run.js +17 -10
- package/dist/bin/run.js.map +1 -1
- package/dist/components/status/crossThread.d.ts +1 -0
- package/dist/components/status/crossThread.js +57 -41
- package/dist/components/status/crossThread.js.map +1 -1
- package/dist/components/status/types.d.ts +1 -0
- package/dist/resources/DatabaseTransaction.d.ts +46 -1
- package/dist/resources/DatabaseTransaction.js +173 -9
- package/dist/resources/DatabaseTransaction.js.map +1 -1
- package/dist/resources/LMDBTransaction.d.ts +2 -0
- package/dist/resources/LMDBTransaction.js +7 -1
- package/dist/resources/LMDBTransaction.js.map +1 -1
- package/dist/resources/Resource.js +5 -4
- package/dist/resources/Resource.js.map +1 -1
- package/dist/resources/ResourceInterface.d.ts +20 -0
- package/dist/resources/ResourceInterface.js.map +1 -1
- package/dist/resources/Table.js +56 -9
- package/dist/resources/Table.js.map +1 -1
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +11 -0
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +153 -51
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -1
- package/dist/resources/transaction.js +4 -2
- package/dist/resources/transaction.js.map +1 -1
- package/dist/server/itc/serverHandlers.js +2 -1
- package/dist/server/itc/serverHandlers.js.map +1 -1
- package/dist/server/threads/manageThreads.d.ts +2 -0
- package/dist/server/threads/manageThreads.js +37 -5
- package/dist/server/threads/manageThreads.js.map +1 -1
- package/dist/utility/processManagement/processManagement.js +21 -3
- package/dist/utility/processManagement/processManagement.js.map +1 -1
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
- package/resources/DESIGN.md +19 -18
- package/resources/DatabaseTransaction.ts +187 -17
- package/resources/LMDBTransaction.ts +7 -1
- package/resources/Resource.ts +6 -5
- package/resources/ResourceInterface.ts +20 -0
- package/resources/Table.ts +60 -8
- package/resources/indexes/HierarchicalNavigableSmallWorld.ts +153 -54
- package/resources/transaction.ts +5 -3
- package/schema.graphql +8 -3
- package/server/DESIGN.md +6 -0
- package/server/itc/serverHandlers.js +2 -1
- package/server/threads/manageThreads.js +34 -5
- package/studio/web/assets/{Chat-BvOlYIhe.js → Chat-BNHY84-Z.js} +1 -1
- package/studio/web/assets/{FloatingChat-fCJiJCH2.js → FloatingChat-BbztUci0.js} +3 -3
- package/studio/web/assets/{apiToken-bKwPv0uN.js → apiToken-D0x_S8Wq.js} +1 -1
- package/studio/web/assets/{applications-BZ47njJ_.js → applications-BU83fSEG.js} +1 -1
- package/studio/web/assets/{index-DF1fSnXV.js → index-BQB9R8Ug.js} +4 -4
- package/studio/web/assets/{index.lazy-DWt8ubrr.js → index.lazy-CtErm5q7.js} +3 -3
- package/studio/web/assets/{notifications-B5ZBOni1.js → notifications-B8rDagJM.js} +1 -1
- package/studio/web/assets/{notifications-gVx0lA8H.js → notifications-CPwYKDDH.js} +1 -1
- package/studio/web/assets/{profile-D7g0x28A.js → profile-D0hB1xdm.js} +1 -1
- package/studio/web/assets/{regions-DRkhlkiD.js → regions-y_jxsBpN.js} +1 -1
- package/studio/web/assets/{setComponentFile-DQkkobG5.js → setComponentFile-DSHbURTI.js} +1 -1
- package/studio/web/assets/{setup-nf-EOheW.js → setup-J5SrM1Kp.js} +1 -1
- package/studio/web/assets/{status-B2tOM3RF.js → status-IoJkDzlx.js} +1 -1
- package/studio/web/assets/{swagger-ui-react-UktCouQ0.js → swagger-ui-react-BlgSS25O.js} +1 -1
- package/studio/web/assets/{useEntityRestURL-alqAn3dT.js → useEntityRestURL-qfahJnvr.js} +1 -1
- package/studio/web/index.html +1 -1
- package/utility/processManagement/processManagement.js +19 -3
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.WATCHDOG_SCRIPT = exports.WATCHDOG_READY_TOKEN = void 0;
|
|
7
|
+
exports.armRestartExitWatchdog = armRestartExitWatchdog;
|
|
8
|
+
exports.waitForWatchdogReady = waitForWatchdogReady;
|
|
9
|
+
const node_child_process_1 = require("node:child_process");
|
|
10
|
+
const harper_logger_ts_1 = __importDefault(require("../utility/logging/harper_logger.js"));
|
|
11
|
+
// Every way the script below can give up is a silent `exit 0` — an unreadable procfs (a sandbox that
|
|
12
|
+
// does not mount /proc) or a base image without `sleep`. Reporting the watchdog armed in exactly
|
|
13
|
+
// those environments would replace the operator's one signal that teardown is unbounded with a claim
|
|
14
|
+
// that it is not, so arming waits for the script to prove both facilities before it says so.
|
|
15
|
+
exports.WATCHDOG_READY_TOKEN = 'harper-restart-exit-watchdog-ready';
|
|
16
|
+
const WATCHDOG_READY_TIMEOUT_MS = 5000;
|
|
17
|
+
exports.WATCHDOG_SCRIPT = `
|
|
18
|
+
parent_pid=$1
|
|
19
|
+
delay_seconds=$2
|
|
20
|
+
[ "$parent_pid" -gt 1 ] || exit 0
|
|
21
|
+
command -v sleep > /dev/null 2>&1 || exit 0
|
|
22
|
+
# Shell PPID variables are snapshots; procfs reflects reparenting after Harper exits.
|
|
23
|
+
read -r _ _ _ current_parent _ < "/proc/$$/stat" || exit 0
|
|
24
|
+
[ "$current_parent" = "$parent_pid" ] || exit 0
|
|
25
|
+
echo "${exports.WATCHDOG_READY_TOKEN}"
|
|
26
|
+
sleep "$delay_seconds" || exit 0
|
|
27
|
+
read -r _ _ _ current_parent _ < "/proc/$$/stat" || exit 0
|
|
28
|
+
[ "$current_parent" = "$parent_pid" ] || exit 0
|
|
29
|
+
echo "harper: restart exit watchdog force-killing pid $parent_pid after $delay_seconds seconds" >&2
|
|
30
|
+
kill -KILL "$parent_pid"
|
|
31
|
+
`;
|
|
32
|
+
async function armRestartExitWatchdog(timeoutMs) {
|
|
33
|
+
if (process.platform !== 'linux') {
|
|
34
|
+
harper_logger_ts_1.default.warn('Restart exit watchdog is only available on Linux');
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
if (process.pid <= 1) {
|
|
38
|
+
harper_logger_ts_1.default.warn('Restart exit watchdog requires Harper to run below a container init process');
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
if (!Number.isFinite(timeoutMs) || timeoutMs <= 0) {
|
|
42
|
+
harper_logger_ts_1.default.warn('Restart exit watchdog requires a positive finite timeout');
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
try {
|
|
46
|
+
const timeoutSeconds = Math.max(1, Math.ceil(timeoutMs / 1000));
|
|
47
|
+
const watchdogPath = ['/usr/bin', '/bin', process.env.PATH].filter(Boolean).join(':');
|
|
48
|
+
const watchdog = (0, node_child_process_1.spawn)('/bin/sh', ['-c', exports.WATCHDOG_SCRIPT, 'harper-restart-exit-watchdog', String(process.pid), String(timeoutSeconds)], {
|
|
49
|
+
env: { PATH: watchdogPath },
|
|
50
|
+
stdio: ['ignore', 'pipe', 'inherit'],
|
|
51
|
+
windowsHide: true,
|
|
52
|
+
});
|
|
53
|
+
// Before the pid check: a spawn failure (EMFILE on the very wedged process this bounds) emits
|
|
54
|
+
// 'error' asynchronously, and an unhandled one becomes an uncaughtException mid-teardown.
|
|
55
|
+
watchdog.once('error', (error) => harper_logger_ts_1.default.warn('Restart exit watchdog failed', error));
|
|
56
|
+
if (watchdog.pid === undefined) {
|
|
57
|
+
harper_logger_ts_1.default.warn('Restart exit watchdog failed to start');
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
watchdog.unref();
|
|
61
|
+
const ready = await waitForWatchdogReady(watchdog);
|
|
62
|
+
// The token is the last thing the script writes to stdout; the force-kill diagnostic goes to the
|
|
63
|
+
// inherited stderr so it survives a wedged Harper event loop.
|
|
64
|
+
watchdog.stdout.destroy();
|
|
65
|
+
if (!ready) {
|
|
66
|
+
watchdog.kill('SIGKILL');
|
|
67
|
+
harper_logger_ts_1.default.warn('Restart exit watchdog could not confirm it was armed');
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
harper_logger_ts_1.default.info(`Restart exit watchdog armed for ${timeoutSeconds} seconds`);
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
catch (error) {
|
|
74
|
+
harper_logger_ts_1.default.warn('Restart exit watchdog failed to start', error);
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
function waitForWatchdogReady(watchdog, timeoutMs = WATCHDOG_READY_TIMEOUT_MS) {
|
|
79
|
+
return new Promise((resolve) => {
|
|
80
|
+
let settled = false;
|
|
81
|
+
const settle = (value) => {
|
|
82
|
+
if (settled)
|
|
83
|
+
return;
|
|
84
|
+
settled = true;
|
|
85
|
+
clearTimeout(readyTimer);
|
|
86
|
+
resolve(value);
|
|
87
|
+
};
|
|
88
|
+
const readyTimer = setTimeout(() => settle(false), timeoutMs);
|
|
89
|
+
readyTimer.unref();
|
|
90
|
+
let output = '';
|
|
91
|
+
watchdog.stdout?.on('data', (chunk) => {
|
|
92
|
+
output += chunk;
|
|
93
|
+
if (output.includes(exports.WATCHDOG_READY_TOKEN))
|
|
94
|
+
settle(true);
|
|
95
|
+
});
|
|
96
|
+
watchdog.once('error', () => settle(false));
|
|
97
|
+
watchdog.once('exit', () => settle(false));
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=restartExitWatchdog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"restartExitWatchdog.js","sourceRoot":"","sources":["../../bin/restartExitWatchdog.ts"],"names":[],"mappings":"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"}
|
package/dist/bin/run.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import './restart.ts';
|
|
2
|
+
declare function addExitListeners(): void;
|
|
2
3
|
/**
|
|
3
4
|
* Starts Harper DB threads
|
|
4
5
|
* If the hdbBootProps file is not found, it is assumed an install needs to be performed.
|
|
@@ -14,6 +15,7 @@ declare function main(calledByInstall?: boolean): Promise<void>;
|
|
|
14
15
|
* @returns {Promise<void>} // ha ha, it doesn't!
|
|
15
16
|
*/
|
|
16
17
|
declare function launch(exit?: boolean): Promise<void>;
|
|
18
|
+
export { addExitListeners };
|
|
17
19
|
export { launch };
|
|
18
20
|
export { main };
|
|
19
21
|
export { startupLog };
|
package/dist/bin/run.js
CHANGED
|
@@ -36,6 +36,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
36
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.addExitListeners = addExitListeners;
|
|
39
40
|
exports.launch = launch;
|
|
40
41
|
exports.main = main;
|
|
41
42
|
exports.startupLog = startupLog;
|
|
@@ -61,6 +62,7 @@ const copyDb_ts_1 = require("./copyDb.js");
|
|
|
61
62
|
const minimist_1 = __importDefault(require("minimist"));
|
|
62
63
|
const keys = __importStar(require("../security/keys.js"));
|
|
63
64
|
const socketRouter_ts_1 = require("../server/threads/socketRouter.js");
|
|
65
|
+
const manageThreads_js_1 = require("../server/threads/manageThreads.js");
|
|
64
66
|
const hdbInfoController = __importStar(require("../dataLayer/hdbInfoController.js"));
|
|
65
67
|
const databases_ts_1 = require("../resources/databases.js");
|
|
66
68
|
const nodeName_ts_1 = require("../server/nodeName.js");
|
|
@@ -84,21 +86,26 @@ function addUnhandleRejectionListener() {
|
|
|
84
86
|
function addExitListeners() {
|
|
85
87
|
if (!skipExitListeners) {
|
|
86
88
|
const removeHdbPid = () => {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
+
try {
|
|
90
|
+
fs.removeSync(path.join(env.get(terms.CONFIG_PARAMS.ROOTPATH), terms.HDB_PID_FILE));
|
|
91
|
+
}
|
|
92
|
+
catch (error) {
|
|
93
|
+
harper_logger_ts_1.default.error('Unable to remove the Harper pid file during shutdown', error);
|
|
94
|
+
}
|
|
89
95
|
};
|
|
96
|
+
// Forward defence, not load-bearing today: nothing below can reach a worker start.
|
|
90
97
|
process.on('exit', () => {
|
|
98
|
+
(0, manageThreads_js_1.beginProcessShutdown)();
|
|
91
99
|
removeHdbPid();
|
|
92
100
|
});
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
});
|
|
96
|
-
process.on('SIGQUIT', () => {
|
|
101
|
+
const exit = () => {
|
|
102
|
+
(0, manageThreads_js_1.beginProcessShutdown)();
|
|
97
103
|
removeHdbPid();
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
104
|
+
process.exit(0);
|
|
105
|
+
};
|
|
106
|
+
process.on('SIGINT', exit);
|
|
107
|
+
process.on('SIGQUIT', exit);
|
|
108
|
+
process.on('SIGTERM', exit);
|
|
102
109
|
}
|
|
103
110
|
}
|
|
104
111
|
/**
|
package/dist/bin/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../bin/run.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../bin/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,7 @@ export declare class CrossThreadStatusCollector {
|
|
|
36
36
|
* Returns a Map with component names namespaced by worker index
|
|
37
37
|
*/
|
|
38
38
|
collect(registry: ComponentStatusRegistry): Promise<Map<string, ComponentStatusSummary>>;
|
|
39
|
+
private setThreadStatus;
|
|
39
40
|
/**
|
|
40
41
|
* Get status from local thread only (fallback when cross-thread collection fails)
|
|
41
42
|
*/
|
|
@@ -14,6 +14,19 @@ const logger_ts_1 = require("../../utility/logging/logger.js");
|
|
|
14
14
|
const types_ts_1 = require("./types.js");
|
|
15
15
|
const errors_ts_1 = require("./errors.js");
|
|
16
16
|
const logger = (0, logger_ts_1.loggerWithTag)('componentStatus.crossThread');
|
|
17
|
+
const THREAD_IDENTITY_SEPARATOR = '#thread-';
|
|
18
|
+
const STATUS_PRIORITY = [
|
|
19
|
+
types_ts_1.COMPONENT_STATUS_LEVELS.ERROR,
|
|
20
|
+
types_ts_1.COMPONENT_STATUS_LEVELS.WARNING,
|
|
21
|
+
types_ts_1.COMPONENT_STATUS_LEVELS.LOADING,
|
|
22
|
+
types_ts_1.COMPONENT_STATUS_LEVELS.UNKNOWN,
|
|
23
|
+
types_ts_1.COMPONENT_STATUS_LEVELS.HEALTHY,
|
|
24
|
+
];
|
|
25
|
+
function stripThreadIdentity(statusKey) {
|
|
26
|
+
const threadLabelStart = statusKey.lastIndexOf('@') + 1;
|
|
27
|
+
const identityIndex = statusKey.indexOf(THREAD_IDENTITY_SEPARATOR, threadLabelStart);
|
|
28
|
+
return identityIndex === -1 ? statusKey : statusKey.substring(0, identityIndex);
|
|
29
|
+
}
|
|
17
30
|
/**
|
|
18
31
|
* CrossThreadStatusCollector Class
|
|
19
32
|
* Handles collection of component status from all worker threads
|
|
@@ -41,8 +54,9 @@ class CrossThreadStatusCollector {
|
|
|
41
54
|
logger.trace?.('Received component status response from %s, with requestId: %d', workerLabel, message.requestId);
|
|
42
55
|
// Find the pending request by requestId
|
|
43
56
|
const pendingResponses = this.awaitingResponses.get(message.requestId);
|
|
44
|
-
if (pendingResponses) {
|
|
45
|
-
pendingResponses.
|
|
57
|
+
if (pendingResponses && typeof message.threadId === 'number') {
|
|
58
|
+
pendingResponses.set(message.threadId, {
|
|
59
|
+
threadId: message.threadId,
|
|
46
60
|
workerIndex: message.workerIndex,
|
|
47
61
|
isMainThread: message.isMainThread || false,
|
|
48
62
|
statuses: message.statuses || [],
|
|
@@ -94,37 +108,36 @@ class CrossThreadStatusCollector {
|
|
|
94
108
|
this.scheduleCleanup();
|
|
95
109
|
// Generate unique request ID and set up response collection
|
|
96
110
|
const requestId = this.nextRequestId++;
|
|
97
|
-
const responses =
|
|
111
|
+
const responses = new Map();
|
|
98
112
|
this.awaitingResponses.set(requestId, responses);
|
|
99
|
-
|
|
100
|
-
// Total threads = main thread (1) + worker threads (workerCount)
|
|
101
|
-
const workerCount = (0, manageThreads_js_1.getWorkerCount)() || 1;
|
|
102
|
-
const totalThreads = workerCount + 1;
|
|
103
|
-
// We expect responses from all threads except ourselves
|
|
104
|
-
const expectedResponses = totalThreads - 1;
|
|
113
|
+
const expectedThreadIds = (0, manageThreads_js_1.getEligibleBroadcastRecipientThreadIds)();
|
|
105
114
|
// Set up response collection with timeout
|
|
106
115
|
const responsePromise = new Promise((resolve, reject) => {
|
|
107
116
|
let resolved = false;
|
|
108
117
|
// Check if we've received all expected responses
|
|
109
118
|
const checkComplete = () => {
|
|
110
119
|
const collectedResponses = this.awaitingResponses.get(requestId);
|
|
111
|
-
if (collectedResponses
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
120
|
+
if (!collectedResponses || resolved)
|
|
121
|
+
return;
|
|
122
|
+
for (const threadId of expectedThreadIds) {
|
|
123
|
+
if (!collectedResponses.has(threadId))
|
|
124
|
+
return;
|
|
116
125
|
}
|
|
126
|
+
resolved = true;
|
|
127
|
+
cleanup();
|
|
128
|
+
logger.trace?.(`Collected all ${collectedResponses.size} expected responses for request ${requestId}`);
|
|
129
|
+
resolve([...collectedResponses.values()]);
|
|
117
130
|
};
|
|
118
131
|
// Set up timeout as fallback
|
|
119
132
|
const timeoutHandle = setTimeout(() => {
|
|
120
133
|
if (!resolved) {
|
|
121
134
|
resolved = true;
|
|
122
|
-
const collectedResponses = this.awaitingResponses.get(requestId) ||
|
|
135
|
+
const collectedResponses = this.awaitingResponses.get(requestId) || new Map();
|
|
123
136
|
this.awaitingResponses.delete(requestId);
|
|
124
137
|
// Log timeout with diagnostic info
|
|
125
|
-
logger.debug?.(`Collection timeout for request ${requestId}: collected ${collectedResponses.
|
|
138
|
+
logger.debug?.(`Collection timeout for request ${requestId}: collected ${collectedResponses.size}/${expectedThreadIds.size} responses`);
|
|
126
139
|
// Resolve with whatever we've collected so far
|
|
127
|
-
resolve(collectedResponses);
|
|
140
|
+
resolve([...collectedResponses.values()]);
|
|
128
141
|
}
|
|
129
142
|
}, this.timeout);
|
|
130
143
|
// Ensure cleanup happens no matter what
|
|
@@ -161,19 +174,13 @@ class CrossThreadStatusCollector {
|
|
|
161
174
|
const localWorkerIndex = (0, manageThreads_js_1.getWorkerIndex)();
|
|
162
175
|
const localThreadLabel = localWorkerIndex === undefined ? 'main' : `worker-${localWorkerIndex}`;
|
|
163
176
|
for (const [name, status] of localStatuses) {
|
|
164
|
-
|
|
165
|
-
...status,
|
|
166
|
-
workerIndex: localWorkerIndex,
|
|
167
|
-
});
|
|
177
|
+
this.setThreadStatus(aggregatedStatuses, name, localThreadLabel, status, localWorkerIndex);
|
|
168
178
|
}
|
|
169
179
|
// Add responses from other threads
|
|
170
180
|
for (const response of collectedResponses) {
|
|
181
|
+
const threadLabel = response.isMainThread ? 'main' : `worker-${response.workerIndex}`;
|
|
171
182
|
for (const [name, status] of response.statuses) {
|
|
172
|
-
|
|
173
|
-
aggregatedStatuses.set(`${name}@${threadLabel}`, {
|
|
174
|
-
...status,
|
|
175
|
-
workerIndex: response.workerIndex,
|
|
176
|
-
});
|
|
183
|
+
this.setThreadStatus(aggregatedStatuses, name, threadLabel, status, response.workerIndex, response.threadId);
|
|
177
184
|
}
|
|
178
185
|
}
|
|
179
186
|
logger.debug?.(`Collected component status from ${collectedResponses.length + 1} threads (including local)`);
|
|
@@ -192,6 +199,19 @@ class CrossThreadStatusCollector {
|
|
|
192
199
|
return this.getLocalStatusOnly(registry);
|
|
193
200
|
}
|
|
194
201
|
}
|
|
202
|
+
setThreadStatus(statuses, name, threadLabel, status, workerIndex, threadId) {
|
|
203
|
+
const baseKey = `${name}@${threadLabel}`;
|
|
204
|
+
let key = baseKey;
|
|
205
|
+
if (statuses.has(baseKey)) {
|
|
206
|
+
if (threadId === undefined)
|
|
207
|
+
throw new Error(`Physical thread identity is required for duplicate ${baseKey}`);
|
|
208
|
+
key += `${THREAD_IDENTITY_SEPARATOR}${threadId}`;
|
|
209
|
+
}
|
|
210
|
+
statuses.set(key, {
|
|
211
|
+
...status,
|
|
212
|
+
workerIndex,
|
|
213
|
+
});
|
|
214
|
+
}
|
|
195
215
|
/**
|
|
196
216
|
* Get status from local thread only (fallback when cross-thread collection fails)
|
|
197
217
|
*/
|
|
@@ -201,10 +221,7 @@ class CrossThreadStatusCollector {
|
|
|
201
221
|
const localWorkerIndex = (0, manageThreads_js_1.getWorkerIndex)();
|
|
202
222
|
const localThreadLabel = localWorkerIndex === undefined ? 'main' : `worker-${localWorkerIndex}`;
|
|
203
223
|
for (const [name, status] of localStatuses) {
|
|
204
|
-
|
|
205
|
-
...status,
|
|
206
|
-
workerIndex: localWorkerIndex,
|
|
207
|
-
});
|
|
224
|
+
this.setThreadStatus(fallbackStatuses, name, localThreadLabel, status, localWorkerIndex);
|
|
208
225
|
}
|
|
209
226
|
return fallbackStatuses;
|
|
210
227
|
}
|
|
@@ -266,7 +283,8 @@ class StatusAggregator {
|
|
|
266
283
|
// Analyze all instances of this component
|
|
267
284
|
for (const [nameWithThread, status] of statusEntries) {
|
|
268
285
|
const atIndex = nameWithThread.lastIndexOf('@');
|
|
269
|
-
const
|
|
286
|
+
const threadLabelWithIdentity = atIndex !== -1 ? nameWithThread.substring(atIndex + 1) : '';
|
|
287
|
+
const threadLabel = stripThreadIdentity(threadLabelWithIdentity);
|
|
270
288
|
// Convert lastChecked to ms since epoch
|
|
271
289
|
const checkTime = status.lastChecked instanceof Date ? status.lastChecked.getTime() : new Date(status.lastChecked).getTime();
|
|
272
290
|
// Store the last checked time based on thread label
|
|
@@ -276,7 +294,7 @@ class StatusAggregator {
|
|
|
276
294
|
else if (threadLabel && threadLabel.startsWith('worker-')) {
|
|
277
295
|
const workerIndex = parseInt(threadLabel.substring(7)); // 'worker-'.length = 7
|
|
278
296
|
if (!isNaN(workerIndex)) {
|
|
279
|
-
lastCheckedTimes.workers[workerIndex] = checkTime;
|
|
297
|
+
lastCheckedTimes.workers[workerIndex] = Math.max(lastCheckedTimes.workers[workerIndex] ?? 0, checkTime);
|
|
280
298
|
}
|
|
281
299
|
}
|
|
282
300
|
// Track status counts
|
|
@@ -301,7 +319,12 @@ class StatusAggregator {
|
|
|
301
319
|
// There are inconsistencies - populate abnormalities
|
|
302
320
|
for (const [nameWithThread, status] of statusEntries) {
|
|
303
321
|
if (status.status !== determinedStatus) {
|
|
304
|
-
|
|
322
|
+
const publicNameWithThread = stripThreadIdentity(nameWithThread);
|
|
323
|
+
const existing = abnormalities.get(publicNameWithThread);
|
|
324
|
+
if (existing && STATUS_PRIORITY.indexOf(existing.status) <= STATUS_PRIORITY.indexOf(status.status)) {
|
|
325
|
+
continue;
|
|
326
|
+
}
|
|
327
|
+
abnormalities.set(publicNameWithThread, {
|
|
305
328
|
workerIndex: status.workerIndex !== undefined ? status.workerIndex : -1,
|
|
306
329
|
status: status.status,
|
|
307
330
|
message: status.message,
|
|
@@ -328,14 +351,7 @@ class StatusAggregator {
|
|
|
328
351
|
* Determine overall status based on priority
|
|
329
352
|
*/
|
|
330
353
|
static determineOverallStatus(statusCounts) {
|
|
331
|
-
const
|
|
332
|
-
types_ts_1.COMPONENT_STATUS_LEVELS.ERROR,
|
|
333
|
-
types_ts_1.COMPONENT_STATUS_LEVELS.WARNING,
|
|
334
|
-
types_ts_1.COMPONENT_STATUS_LEVELS.LOADING,
|
|
335
|
-
types_ts_1.COMPONENT_STATUS_LEVELS.UNKNOWN,
|
|
336
|
-
types_ts_1.COMPONENT_STATUS_LEVELS.HEALTHY,
|
|
337
|
-
];
|
|
338
|
-
for (const priorityStatus of statusPriority) {
|
|
354
|
+
for (const priorityStatus of STATUS_PRIORITY) {
|
|
339
355
|
if (statusCounts.has(priorityStatus) && statusCounts.get(priorityStatus) > 0) {
|
|
340
356
|
return priorityStatus;
|
|
341
357
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crossThread.js","sourceRoot":"","sources":["../../../components/status/crossThread.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"crossThread.js","sourceRoot":"","sources":["../../../components/status/crossThread.ts"],"names":[],"mappings":"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"}
|
|
@@ -69,6 +69,7 @@ export interface AggregatedComponentStatus {
|
|
|
69
69
|
* Component status information from a worker thread
|
|
70
70
|
*/
|
|
71
71
|
export interface WorkerComponentStatuses {
|
|
72
|
+
threadId?: number;
|
|
72
73
|
workerIndex: number | undefined;
|
|
73
74
|
isMainThread: boolean;
|
|
74
75
|
statuses: Array<[string, ComponentStatusSummary]>;
|
|
@@ -68,7 +68,7 @@ export type TransactionWrite = {
|
|
|
68
68
|
before?: () => void | Promise<void>;
|
|
69
69
|
beforeIntermediate?: () => void | Promise<void>;
|
|
70
70
|
commit?: (txnTime: number, existingEntry: Partial<Entry>, retry: boolean, transaction: any) => MaybePromise<void>;
|
|
71
|
-
validate?: (txnTime: number) => void;
|
|
71
|
+
validate?: (txnTime: number, committedBy: DatabaseTransaction) => void;
|
|
72
72
|
fullUpdate?: boolean;
|
|
73
73
|
saved?: boolean;
|
|
74
74
|
deferSave?: boolean;
|
|
@@ -80,6 +80,7 @@ export type TransactionWrite = {
|
|
|
80
80
|
savedBlobs?: Blob[];
|
|
81
81
|
skipped?: boolean;
|
|
82
82
|
appendedAuditEntry?: boolean;
|
|
83
|
+
stagedIn?: DatabaseTransaction;
|
|
83
84
|
priorWrite?: TransactionWrite;
|
|
84
85
|
chainsStagedState?: boolean;
|
|
85
86
|
pendingPriorWrite?: TransactionWrite | null;
|
|
@@ -113,6 +114,9 @@ type RocksTransactionWithRetry = RocksTransaction & {
|
|
|
113
114
|
};
|
|
114
115
|
export declare class DatabaseTransaction implements Transaction {
|
|
115
116
|
#private;
|
|
117
|
+
constructor(options?: {
|
|
118
|
+
scopeOwned?: boolean;
|
|
119
|
+
});
|
|
116
120
|
writes: TransactionWrite[];
|
|
117
121
|
writesByKey?: Map<any, Map<unknown, TransactionWrite>>;
|
|
118
122
|
completions: Promise<void>[];
|
|
@@ -125,6 +129,7 @@ export declare class DatabaseTransaction implements Transaction {
|
|
|
125
129
|
writeTimeout: number;
|
|
126
130
|
timeoutBudget: number;
|
|
127
131
|
saveCommits: boolean;
|
|
132
|
+
stagesWriteOnSave: boolean;
|
|
128
133
|
validated: number;
|
|
129
134
|
timestamp: number;
|
|
130
135
|
retries: number;
|
|
@@ -146,6 +151,7 @@ export declare class DatabaseTransaction implements Transaction {
|
|
|
146
151
|
isReplay?: boolean;
|
|
147
152
|
timedOut?: boolean;
|
|
148
153
|
writesAbandoned?: boolean;
|
|
154
|
+
snapshotFree: boolean;
|
|
149
155
|
getReadTxn(disableSnapshot?: boolean): ReadTransaction;
|
|
150
156
|
private attachOwnedTransaction;
|
|
151
157
|
/**
|
|
@@ -186,6 +192,11 @@ export declare class DatabaseTransaction implements Transaction {
|
|
|
186
192
|
* (see priorStagedWrite). Called by both engines' addWrite.
|
|
187
193
|
*/
|
|
188
194
|
linkWrite(operation: TransactionWrite): void;
|
|
195
|
+
/**
|
|
196
|
+
* Drop a staged write from this transaction, and from its per-key chain, so the transaction taking it
|
|
197
|
+
* over becomes its only owner (Table.ts's #saveOperation).
|
|
198
|
+
*/
|
|
199
|
+
detachWrite(operation: TransactionWrite): void;
|
|
189
200
|
/**
|
|
190
201
|
* Discard the staged write set (committed or aborted); the per-key chain must go with it so a
|
|
191
202
|
* reused transaction never bases a write on a previous batch's staged state.
|
|
@@ -245,6 +256,30 @@ export declare class DatabaseTransaction implements Transaction {
|
|
|
245
256
|
* Resolves with information on the timestamp and success of the commit
|
|
246
257
|
*/
|
|
247
258
|
commit(options?: CommitOptions): MaybePromise<CommitResolution>;
|
|
259
|
+
/**
|
|
260
|
+
* A successful commit that is NOT the scope's final one leaves the scope still running and still
|
|
261
|
+
* responsible for a commit. Rotate to a fresh OPEN generation so the rest of the scope's writes
|
|
262
|
+
* stage into it and are committed — or rolled back — as one unit, instead of each committing itself
|
|
263
|
+
* the moment it is made. Every dispatch path keeps its plain `open === OPEN` check; CLOSED never
|
|
264
|
+
* gains a second meaning.
|
|
265
|
+
*
|
|
266
|
+
* Deliberately not rotated when: the scope is finished (`doneWriting`), nothing owns this instance,
|
|
267
|
+
* a timeout poisoned it, or a commit failed — a failed or uncertain commit must never be followed by
|
|
268
|
+
* a resumed segment that can commit on its own. Nor when read iterators still hold the native
|
|
269
|
+
* handle: that handle belongs to them until they drain, so there is nothing to rotate into and those
|
|
270
|
+
* writes keep today's immediate-commit path.
|
|
271
|
+
*/
|
|
272
|
+
/**
|
|
273
|
+
* Finish a commit: the chain goes with it, then the scope may rotate. A link left attached and CLOSED
|
|
274
|
+
* would be reused by txnForContext for the next write to that database and commit itself, surviving a
|
|
275
|
+
* rollback of the rotated head — the cross-store leftover this rotation exists to prevent. Every
|
|
276
|
+
* commit path must run this, and none may do one half without the other.
|
|
277
|
+
*/
|
|
278
|
+
/** Both scope flags leave together, so no exit can clear one and keep the other. */
|
|
279
|
+
private endScopeOwnership;
|
|
280
|
+
private completeMidScopeCommit;
|
|
281
|
+
/** See completeMidScopeCommit, which is the only caller and carries the reasoning. */
|
|
282
|
+
private rotateAfterMidScopeCommit;
|
|
248
283
|
abort(): void;
|
|
249
284
|
/**
|
|
250
285
|
* Give up on a chain of linked transactions after exhausting conflict retries: poison every link
|
|
@@ -304,6 +339,16 @@ export declare const RELEASED_TRANSACTION: DatabaseTransaction;
|
|
|
304
339
|
* on the one instance every released context shares.
|
|
305
340
|
*/
|
|
306
341
|
export declare function isReleasedTransaction(value: unknown): boolean;
|
|
342
|
+
/**
|
|
343
|
+
* Whether this transaction can be joined as the atomic scope resources/transaction.ts promises. OPEN is
|
|
344
|
+
* not sufficient: an ImmediateTransaction commits every write as it is made, so a caller that joined one
|
|
345
|
+
* would get per-write autocommit with no final commit or abort to roll back to. txnForContext installs
|
|
346
|
+
* one in a context slot that is empty or holds the released placeholder, where it reports OPEN with
|
|
347
|
+
* nothing owning a commit for it (#2292). Ownership itself is deliberately not the test — a context
|
|
348
|
+
* pre-seeded with an externally driven DatabaseTransaction (replayLogs.ts) still owns the writes it is
|
|
349
|
+
* given, and its own commit/abort still governs them.
|
|
350
|
+
*/
|
|
351
|
+
export declare function isJoinableScope(transaction: DatabaseTransaction | null | undefined): boolean;
|
|
307
352
|
/**
|
|
308
353
|
* Test seam: re-arms the once-per-process replay warning. The whole unit suite shares one process,
|
|
309
354
|
* so whichever test first drives a commit under open iterators consumes the warning for every test
|