@overkill-dev/run 0.0.58 → 0.0.60
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/engine/case-execution.d.ts +2 -2
- package/engine/case-execution.d.ts.map +1 -1
- package/engine/case-execution.js +3 -3
- package/engine/case-execution.js.map +1 -1
- package/engine/engine.d.ts +2 -2
- package/engine/engine.d.ts.map +1 -1
- package/engine/execution-supervision.d.ts +3 -3
- package/engine/execution-supervision.d.ts.map +1 -1
- package/engine/execution-supervision.js +4 -4
- package/engine/execution-supervision.js.map +1 -1
- package/engine/execution-test-plan-cases.js +4 -4
- package/engine/execution-test-plan-cases.js.map +1 -1
- package/engine/execution.d.ts +2 -2
- package/engine/execution.d.ts.map +1 -1
- package/engine/execution.js +2 -2
- package/engine/execution.js.map +1 -1
- package/engine/reporter-dispatcher.d.ts +2 -2
- package/engine/reporter-dispatcher.d.ts.map +1 -1
- package/engine/run-timings.d.ts +7 -0
- package/engine/run-timings.d.ts.map +1 -1
- package/engine/run-timings.js +1 -0
- package/engine/run-timings.js.map +1 -1
- package/engine/test-body-resource-attachment.d.ts +1 -0
- package/engine/test-body-resource-attachment.d.ts.map +1 -1
- package/engine/test-body-resource-attachment.js +1 -0
- package/engine/test-body-resource-attachment.js.map +1 -1
- package/package.json +5 -1
- package/packages/engine/engine.entry-point.d.ts +1 -1
- package/packages/engine/engine.entry-point.d.ts.map +1 -1
- package/packages/engine/engine.entry-point.js +2 -2
- package/packages/engine/engine.entry-point.js.map +1 -1
- package/packages/reporter-line/reporter-line.entry-point.js +5 -0
- package/packages/reporter-line/reporter-line.entry-point.js.map +1 -1
- package/packages/run/run.entry-point.d.ts +4 -3
- package/packages/run/run.entry-point.d.ts.map +1 -1
- package/packages/run/run.entry-point.js +3 -3
- package/packages/run/run.entry-point.js.map +1 -1
- package/readme.md +15 -1
- package/reporters/progress-reporter.js +6 -0
- package/reporters/progress-reporter.js.map +1 -0
- package/reporters/tree-reporter.js +111 -0
- package/reporters/tree-reporter.js.map +1 -0
- package/resources/resource-graph.d.ts +1 -0
- package/resources/resource-graph.d.ts.map +1 -1
- package/resources/resource-graph.js +2 -2
- package/resources/resource-graph.js.map +1 -1
- package/run/default-run-engine.js +2 -2
- package/run/default-run-engine.js.map +1 -1
- package/run/execution-plan-resolution.js +356 -0
- package/run/execution-plan-resolution.js.map +1 -0
- package/run/permission-denial-runtime-policy.js +12 -2
- package/run/permission-denial-runtime-policy.js.map +1 -1
- package/run/placement-trace.d.ts +83 -40
- package/run/placement-trace.d.ts.map +1 -1
- package/run/placement-trace.js +80 -0
- package/run/placement-trace.js.map +1 -1
- package/run/resource-lifecycle-boundaries.js +8 -4
- package/run/resource-lifecycle-boundaries.js.map +1 -1
- package/run/resource-lifecycle-state.d.ts +9 -1
- package/run/resource-lifecycle-state.d.ts.map +1 -1
- package/run/resource-lifecycle-state.js.map +1 -1
- package/run/resource-lifecycle-timing.js +3 -1
- package/run/resource-lifecycle-timing.js.map +1 -1
- package/run/resource-lifecycle.js +37 -5
- package/run/resource-lifecycle.js.map +1 -1
- package/run/resource-ownership-plan.d.ts +30 -0
- package/run/resource-ownership-plan.d.ts.map +1 -0
- package/run/resource-usage.d.ts +3 -3
- package/run/resource-usage.d.ts.map +1 -1
- package/run/resource-usage.js +1 -1
- package/run/resource-usage.js.map +1 -1
- package/run/run-collected-planning.js +9 -1
- package/run/run-collected-planning.js.map +1 -1
- package/run/run-empty-shard.js +3 -3
- package/run/run-empty-shard.js.map +1 -1
- package/run/run-errors.d.ts +54 -0
- package/run/run-errors.d.ts.map +1 -1
- package/run/run-errors.js +61 -0
- package/run/run-errors.js.map +1 -1
- package/run/run-if-main.d.ts +3 -3
- package/run/run-if-main.d.ts.map +1 -1
- package/run/run-if-main.js +2 -2
- package/run/run-if-main.js.map +1 -1
- package/run/run-isolated-process.js +4 -4
- package/run/run-isolated-process.js.map +1 -1
- package/run/run-local-execution.js +1 -1
- package/run/run-local-execution.js.map +1 -1
- package/run/run-local-resolution.js +2 -2
- package/run/run-local-resolution.js.map +1 -1
- package/run/run-orchestrator-dependencies.d.ts +2 -2
- package/run/run-orchestrator-dependencies.d.ts.map +1 -1
- package/run/run-orchestrator.js +2 -2
- package/run/run-orchestrator.js.map +1 -1
- package/run/run-support.js +1 -1
- package/run/run-support.js.map +1 -1
- package/run/run-timing-collection.d.ts +2 -2
- package/run/run-timing-collection.d.ts.map +1 -1
- package/run/run-timing-collection.js +28 -22
- package/run/run-timing-collection.js.map +1 -1
- package/run/run-types.d.ts +3 -2
- package/run/run-types.d.ts.map +1 -1
- package/run/run-types.js +3 -4
- package/run/run-types.js.map +1 -1
- package/run/supervised-child-process.d.ts +2 -2
- package/run/supervised-child-process.d.ts.map +1 -1
- package/run/supervised-child-process.js +1 -1
- package/run/supervised-child-process.js.map +1 -1
- package/run/supervised-child.entry-point.js +2 -2
- package/run/supervised-child.entry-point.js.map +1 -1
- package/run/supervised-child.js +4 -4
- package/run/supervised-child.js.map +1 -1
- package/run/supervised-protocol.js.map +1 -1
- package/run/supervised-run-collection.js +3 -3
- package/run/supervised-run-collection.js.map +1 -1
- package/run/supervised-run-runtime.js +5 -5
- package/run/supervised-run-runtime.js.map +1 -1
- package/run/supervised-run.js +8 -8
- package/run/supervised-run.js.map +1 -1
- package/run/work-unit-planning.js +16 -3
- package/run/work-unit-planning.js.map +1 -1
- package/run/worker-pool-collection.js +2 -2
- package/run/worker-pool-collection.js.map +1 -1
- package/run/worker-pool-compatible-batching.js +0 -10
- package/run/worker-pool-compatible-batching.js.map +1 -1
- package/run/worker-pool-dispatch-state.js.map +1 -1
- package/run/worker-pool-execution.js +52 -55
- package/run/worker-pool-execution.js.map +1 -1
- package/run/worker-pool-hedge-dispatch.js +1 -1
- package/run/worker-pool-hedge-dispatch.js.map +1 -1
- package/run/worker-pool-hedged-arbitration.js +53 -26
- package/run/worker-pool-hedged-arbitration.js.map +1 -1
- package/run/worker-pool-host-protocol.js.map +1 -1
- package/run/worker-pool-host-task.js +9 -0
- package/run/worker-pool-host-task.js.map +1 -1
- package/run/worker-pool-host.entry-point.js +15 -15
- package/run/worker-pool-host.entry-point.js.map +1 -1
- package/run/worker-pool-lanes.js +16 -9
- package/run/worker-pool-lanes.js.map +1 -1
- package/run/worker-pool-lease-selection.js.map +1 -1
- package/run/worker-pool-output.js +1 -1
- package/run/worker-pool-output.js.map +1 -1
- package/run/worker-pool-pending-splitting.js +4 -2
- package/run/worker-pool-pending-splitting.js.map +1 -1
- package/run/worker-pool-placement-planning.js +24 -3
- package/run/worker-pool-placement-planning.js.map +1 -1
- package/run/worker-pool-protocol.js +19 -0
- package/run/worker-pool-protocol.js.map +1 -1
- package/run/worker-pool-resource-lifecycle-execution.js +143 -12
- package/run/worker-pool-resource-lifecycle-execution.js.map +1 -1
- package/run/worker-pool-resource-tracking.js +1 -1
- package/run/worker-pool-resource-tracking.js.map +1 -1
- package/run/worker-pool-results.js +9 -6
- package/run/worker-pool-results.js.map +1 -1
- package/run/worker-pool-routing.js +13 -1
- package/run/worker-pool-routing.js.map +1 -1
- package/run/worker-pool-run.js +11 -7
- package/run/worker-pool-run.js.map +1 -1
- package/run/worker-pool-runtime.js +26 -22
- package/run/worker-pool-runtime.js.map +1 -1
- package/run/worker-pool-static-dispatcher.js +18 -8
- package/run/worker-pool-static-dispatcher.js.map +1 -1
- package/run/worker-pool-task-events.js +89 -26
- package/run/worker-pool-task-events.js.map +1 -1
- package/run/worker-pool-task-validation.js +1 -0
- package/run/worker-pool-task-validation.js.map +1 -1
- package/run/worker-pool-work-dispatcher.js +21 -13
- package/run/worker-pool-work-dispatcher.js.map +1 -1
- package/run/worker-pool-worker-resources.js +11 -4
- package/run/worker-pool-worker-resources.js.map +1 -1
- package/run/worker-pool-worker-timing.js +14 -7
- package/run/worker-pool-worker-timing.js.map +1 -1
- package/run/worker-pool-worker.js +29 -13
- package/run/worker-pool-worker.js.map +1 -1
- package/sbom.cdx.json +38 -4
- package/clock/overkill-clock.d.ts +0 -30
- package/clock/overkill-clock.d.ts.map +0 -1
- package/clock/overkill-clock.js +0 -53
- package/clock/overkill-clock.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-host.entry-point.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-host.entry-point.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker-pool-host.entry-point.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-host.entry-point.ts"],"names":[],"mappings":"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"}
|
package/run/worker-pool-lanes.js
CHANGED
|
@@ -33,20 +33,20 @@ function requiredLifecycleLaneCount(units) {
|
|
|
33
33
|
function hardConstraintWorkerMaximum(units) {
|
|
34
34
|
return workUnitsShareHardConstraint(units) ? 1 : Number.POSITIVE_INFINITY;
|
|
35
35
|
}
|
|
36
|
-
export function
|
|
36
|
+
export function resolveWorkerCountCapacity(input) {
|
|
37
37
|
assertPositiveSafeInteger(input.availableParallelism, 'Available parallelism');
|
|
38
|
-
const
|
|
39
|
-
const requiredLanes = requiredLifecycleLaneCount(input.units);
|
|
40
|
-
if (resolved < requiredLanes) {
|
|
41
|
-
invalidRequest(`Worker-pool execution requires at least ${requiredLanes} workers for its worker lifecycles.`);
|
|
42
|
-
}
|
|
43
|
-
return {
|
|
38
|
+
const workerCount = {
|
|
44
39
|
hostMaximum: input.availableParallelism,
|
|
45
40
|
profileMaximum: input.profileMaximum,
|
|
46
41
|
requested: input.requestedWorkers,
|
|
47
|
-
resolved
|
|
42
|
+
resolved: Math.min(requestedWorkerCount(input), input.availableParallelism, configuredWorkerMaximum(input.profileMaximum), hardConstraintWorkerMaximum(input.units), input.units.length)
|
|
43
|
+
};
|
|
44
|
+
return {
|
|
45
|
+
requiredLanes: requiredLifecycleLaneCount(input.units),
|
|
46
|
+
workerCount
|
|
48
47
|
};
|
|
49
48
|
}
|
|
49
|
+
|
|
50
50
|
function placementLane(index) {
|
|
51
51
|
const id = `worker-${index + 1}`;
|
|
52
52
|
return {
|
|
@@ -95,7 +95,14 @@ function firstFixedLane(unit, lanes, fixedLaneByKey) {
|
|
|
95
95
|
.find(function hasLaneId(laneId) {
|
|
96
96
|
return laneId !== null;
|
|
97
97
|
});
|
|
98
|
-
|
|
98
|
+
if (fixedLane === undefined) {
|
|
99
|
+
return null;
|
|
100
|
+
}
|
|
101
|
+
const lane = laneById(lanes, fixedLane);
|
|
102
|
+
if (lane === null) {
|
|
103
|
+
throw new Error('Resolved hard constraint referenced an incompatible worker lifecycle lane.');
|
|
104
|
+
}
|
|
105
|
+
return lane;
|
|
99
106
|
}
|
|
100
107
|
function affinityScore(unit, lane, preferredLaneByAffinity) {
|
|
101
108
|
return unit
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-lanes.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-lanes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EACH,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EACnB,MAAM,kCAAkC,CAAC;AAS1C,OAAO,EACH,kBAAkB,EAClB,4BAA4B,EAC/B,MAAM,qCAAqC,CAAC;AAE7C,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAgC7B,SAAS,yBAAyB,CAAC,KAAa,EAAE,KAAa;IAC3D,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC7C,cAAc,CAAC,GAAG,KAAK,mCAAmC,CAAC,CAAC;IAChE,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,oBAA4B;IACpD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAsB;IACnD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,MAAM,CAAC,iBAAiB,CAAC;IACpC,CAAC;IAED,yBAAyB,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;IAE7D,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAA0B;IACpD,IAAI,KAAK,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;QAClC,OAAO,kBAAkB,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAC1D,CAAC;IAED,yBAAyB,CAAC,KAAK,CAAC,gBAAgB,EAAE,wBAAwB,CAAC,CAAC;IAE5E,OAAO,KAAK,CAAC,gBAAgB,CAAC;AAClC,CAAC;AAED,SAAS,0BAA0B,CAAC,KAA0B;IAC1D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,iBAAiB,CAAC,IAAI;QAChE,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC,CAAC,CAAC,CAAC;IAEJ,OAAO,UAAU,CAAC,IAAI,CAAC;AAC3B,CAAC;AAED,SAAS,2BAA2B,CAAC,KAA0B;IAC3D,OAAO,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;AAC9E,CAAC;
|
|
1
|
+
{"version":3,"file":"worker-pool-lanes.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-lanes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-lease-selection.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-lease-selection.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"worker-pool-lease-selection.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-lease-selection.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,7 +25,7 @@ function invokeWriteCallbacks(encodingOrCallback, callback) {
|
|
|
25
25
|
function captureStream(streamName, task, wallClock) {
|
|
26
26
|
function writeCapturedOutput(chunk, encodingOrCallback, callback) {
|
|
27
27
|
const output = {
|
|
28
|
-
capturedAtMicroseconds: wallClock.currentMonotonicMicroseconds,
|
|
28
|
+
capturedAtMicroseconds: Number(wallClock.currentMonotonicMicroseconds),
|
|
29
29
|
chunk: outputBuffer(chunk),
|
|
30
30
|
kind: 'output',
|
|
31
31
|
stream: streamName
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-output.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-output.ts"],"names":[],"mappings":"AACA,OAAO,EACH,cAAc,EAEjB,MAAM,0CAA0C,CAAC;AAiBlD,SAAS,WAAW;IAChB,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAS,YAAY,CAAC,KAAiB;IACnC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,cAAc,CAAC,UAAgC;IACpD,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;AACrE,CAAC;AAED,SAAS,kBAAkB,CAAC,UAAgC,EAAE,KAAkB;IAC5E,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IAC1C,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;IAErB,OAAO,SAAS,aAAa;QACzB,MAAM,CAAC,KAAK,GAAG,aAAa,CAAC;IACjC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,oBAAoB,CACzB,kBAAuD,EACvD,QAAmC;IAEnC,IAAI,OAAO,kBAAkB,KAAK,UAAU,EAAE,CAAC;QAC3C,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED,SAAS,aAAa,CAClB,UAAgC,EAChC,IAAoB,EACpB,
|
|
1
|
+
{"version":3,"file":"worker-pool-output.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-output.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,14 +7,16 @@ function queuePriority(parentOrder, childOrder) {
|
|
|
7
7
|
export function originalQueueItem(unit, parentOrder) {
|
|
8
8
|
return {
|
|
9
9
|
priority: queuePriority(parentOrder, 0),
|
|
10
|
+
reason: { kind: 'initial' },
|
|
10
11
|
split: 'eligible-original',
|
|
11
12
|
traceUnit: unit.id,
|
|
12
13
|
unit
|
|
13
14
|
};
|
|
14
15
|
}
|
|
15
|
-
export function fixedQueueItem(unit, traceUnit, priority) {
|
|
16
|
+
export function fixedQueueItem(unit, traceUnit, priority, reason) {
|
|
16
17
|
return {
|
|
17
18
|
priority,
|
|
19
|
+
reason,
|
|
18
20
|
split: 'fixed',
|
|
19
21
|
traceUnit,
|
|
20
22
|
unit
|
|
@@ -42,7 +44,7 @@ function splitChildUnits(runtime, item) {
|
|
|
42
44
|
...item.unit,
|
|
43
45
|
resourceConstraints: workResourceConstraints([work], runtime.collectedPlan),
|
|
44
46
|
work: [work]
|
|
45
|
-
}, traceUnit, priority),
|
|
47
|
+
}, traceUnit, priority, item.reason),
|
|
46
48
|
traceUnit
|
|
47
49
|
};
|
|
48
50
|
return child;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-pending-splitting.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-pending-splitting.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"worker-pool-pending-splitting.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-pending-splitting.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,15 @@ import { workIdentityKey } from "../engine/identity.js";
|
|
|
2
2
|
import { collectedRunCaseEntries } from "./collected-run-plan.js";
|
|
3
3
|
import { selectDurationHistoryPlacement } from "./duration-history.js";
|
|
4
4
|
import { workUnitsFromCollectedPlan } from "./work-unit-planning.js";
|
|
5
|
-
import {
|
|
5
|
+
import { resolveWorkerCountCapacity, workerPoolLanesForCount, workerPoolPlacementAssignments } from "./worker-pool-lanes.js";
|
|
6
|
+
import { createResourceOwnershipPlan, executionPlanCompatibilityConflicts } from "./execution-plan-resolution.js";
|
|
7
|
+
import { RunExecutionPlanError } from "./run-errors.js";
|
|
6
8
|
|
|
9
|
+
function assertCompatibleExecutionPlan(conflicts) {
|
|
10
|
+
if (conflicts.length > 0) {
|
|
11
|
+
throw new RunExecutionPlanError(conflicts, undefined);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
7
14
|
function collectedEntriesByWorkKey(collectedPlan) {
|
|
8
15
|
return new Map(collectedRunCaseEntries(collectedPlan).map(function toEntry(entry) {
|
|
9
16
|
return [workIdentityKey(entry.workId), entry];
|
|
@@ -33,13 +40,27 @@ export function createWorkerPoolPlacementResolution(input) {
|
|
|
33
40
|
requestedWorkers: input.requestedWorkers,
|
|
34
41
|
units
|
|
35
42
|
};
|
|
36
|
-
const
|
|
43
|
+
const workerCapacity = resolveWorkerCountCapacity(laneInput);
|
|
44
|
+
const { workerCount } = workerCapacity;
|
|
45
|
+
const conflicts = executionPlanCompatibilityConflicts({
|
|
46
|
+
requiredLifecycleLanes: workerCapacity.requiredLanes,
|
|
47
|
+
selectedPlan: input.selectedPlan,
|
|
48
|
+
units,
|
|
49
|
+
workerCount
|
|
50
|
+
});
|
|
51
|
+
assertCompatibleExecutionPlan(conflicts);
|
|
37
52
|
const lanes = workerPoolLanesForCount(workerCount.resolved);
|
|
53
|
+
const assignments = workerPoolPlacementAssignments(units, lanes, input.assignmentPolicy, durationHistory.unitDuration);
|
|
38
54
|
return {
|
|
39
55
|
durationHistory: durationHistory.facts,
|
|
40
56
|
placementPlan: {
|
|
41
|
-
assignments
|
|
57
|
+
assignments,
|
|
42
58
|
lanes,
|
|
59
|
+
resourceOwnership: createResourceOwnershipPlan({
|
|
60
|
+
lanes,
|
|
61
|
+
selectedPlan: input.selectedPlan,
|
|
62
|
+
units
|
|
63
|
+
}),
|
|
43
64
|
units
|
|
44
65
|
},
|
|
45
66
|
workerCount
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-placement-planning.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-placement-planning.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACH,uBAAuB,EAC1B,MAAM,yBAAyB,CAAC;AAajC,OAAO,EACH,8BAA8B,EAGjC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACH,0BAA0B,EAC7B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACH,
|
|
1
|
+
{"version":3,"file":"worker-pool-placement-planning.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-placement-planning.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,21 @@
|
|
|
1
|
+
import { MessageChannel as NodeMessageChannel } from 'node:worker_threads';
|
|
1
2
|
export const workerPoolRunResourceOwnerLane = 'run-resource-owner';
|
|
3
|
+
export function createWorkerPoolMessageChannel(receiveMessage) {
|
|
4
|
+
const { port1, port2 } = new NodeMessageChannel();
|
|
5
|
+
const messagesCompleted = Promise.withResolvers();
|
|
6
|
+
port2.on('message', function receiveWorkerMessage(message) {
|
|
7
|
+
receiveMessage(message);
|
|
8
|
+
if (message.kind === 'task-messages-completed') {
|
|
9
|
+
messagesCompleted.resolve(undefined);
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
return {
|
|
13
|
+
close() {
|
|
14
|
+
port1.close();
|
|
15
|
+
port2.close();
|
|
16
|
+
},
|
|
17
|
+
messagesCompleted: messagesCompleted.promise,
|
|
18
|
+
port: port1
|
|
19
|
+
};
|
|
20
|
+
}
|
|
2
21
|
//# sourceMappingURL=worker-pool-protocol.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-protocol.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-protocol.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"worker-pool-protocol.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,IAAI,kBAAkB,EAEvC,MAAM,qBAAqB,CAAC;AAyC7B,MAAM,CAAC,MAAM,8BAA8B,GAAG,oBAAoB,CAAC;AA8HnE,MAAM,UAAU,8BAA8B,CAC1C,cAAoD;IAEpD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAClD,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa,EAAa,CAAC;IAE7D,KAAK,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,oBAAoB,CAAC,OAA0B;QACxE,cAAc,CAAC,OAAO,CAAC,CAAC;QAExB,IAAI,OAAO,CAAC,IAAI,KAAK,yBAAyB,EAAE,CAAC;YAC7C,iBAAiB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO;QACH,KAAK;YACD,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,KAAK,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC;QACD,iBAAiB,EAAE,iBAAiB,CAAC,OAAO;QAC5C,IAAI,EAAE,KAAK;KACd,CAAC;AACN,CAAC"}
|
|
@@ -2,7 +2,56 @@ import { MessageChannel as NodeMessageChannel } from 'node:worker_threads';
|
|
|
2
2
|
import { workIdentityKey } from "../engine/identity.js";
|
|
3
3
|
import { createBatchRunCommand, createRunCommand, firstPlanUnit, placementRunWork } from "./worker-pool-command.js";
|
|
4
4
|
import { workerPoolRunResourceOwnerLane } from "./worker-pool-protocol.js";
|
|
5
|
-
|
|
5
|
+
function externallyOwnedResources(plan) {
|
|
6
|
+
return plan.resourceOwnership.owners.filter(function hasExternalOwner(owner) {
|
|
7
|
+
return owner.scope === 'per-run' || owner.placement.kind === 'infrastructure-worker';
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
function resourceOwnerLane(plan) {
|
|
11
|
+
const owners = externallyOwnedResources(plan);
|
|
12
|
+
if (owners.length === 0) {
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
if (owners.some(function usesInfrastructureWorker(owner) {
|
|
16
|
+
return owner.placement.kind === 'infrastructure-worker';
|
|
17
|
+
})) {
|
|
18
|
+
return workerPoolRunResourceOwnerLane;
|
|
19
|
+
}
|
|
20
|
+
const placement = owners[0]?.placement;
|
|
21
|
+
return placement?.kind === 'executor-lane' ? placement.lane : null;
|
|
22
|
+
}
|
|
23
|
+
function ownerWork(plan) {
|
|
24
|
+
const workByKey = new Map(externallyOwnedResources(plan).flatMap(function ownerWorkEntries(owner) {
|
|
25
|
+
return owner.work.map(function ownerWorkEntry(work) {
|
|
26
|
+
return [workIdentityKey(work), work];
|
|
27
|
+
});
|
|
28
|
+
}));
|
|
29
|
+
return Array.from(workByKey.values());
|
|
30
|
+
}
|
|
31
|
+
function boundaryKeysByWork(plan, includePerRun) {
|
|
32
|
+
const keys = new Map();
|
|
33
|
+
for (const owner of externallyOwnedResources(plan)) {
|
|
34
|
+
if (includePerRun || owner.scope !== 'per-run') {
|
|
35
|
+
for (const work of owner.work) {
|
|
36
|
+
const workKey = workIdentityKey(work);
|
|
37
|
+
const workKeys = keys.get(workKey) ?? [];
|
|
38
|
+
workKeys.push(owner.boundaryKey);
|
|
39
|
+
keys.set(workKey, workKeys);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return keys;
|
|
44
|
+
}
|
|
45
|
+
function ownerCommand(runtime, plan, work) {
|
|
46
|
+
const command = createRunCommand(runtime, firstPlanUnit(plan));
|
|
47
|
+
return {
|
|
48
|
+
...command,
|
|
49
|
+
paths: Array.from(new Set(work.flatMap(function ownerWorkPath(item) {
|
|
50
|
+
return item.case.file === null ? [] : [item.case.file];
|
|
51
|
+
}))),
|
|
52
|
+
workerLifecycle: 'reuse'
|
|
53
|
+
};
|
|
54
|
+
}
|
|
6
55
|
function portTransferList(port) {
|
|
7
56
|
return [port];
|
|
8
57
|
}
|
|
@@ -59,13 +108,20 @@ export function workerPoolWorkHasStarted(startedCases, work) {
|
|
|
59
108
|
}
|
|
60
109
|
async function acquireRunResourceOutput(runtime, plan, work) {
|
|
61
110
|
const channel = resourceTaskChannel();
|
|
111
|
+
const lane = resourceOwnerLane(plan);
|
|
112
|
+
if (lane === null) {
|
|
113
|
+
throw new Error('Worker-pool resource owner requires a planned lane.');
|
|
114
|
+
}
|
|
62
115
|
try {
|
|
63
116
|
return await runtime.pool.run({
|
|
64
117
|
assignedWork: work,
|
|
118
|
+
boundaryKeys: externallyOwnedResources(plan).map(function ownerBoundaryKey(owner) {
|
|
119
|
+
return owner.boundaryKey;
|
|
120
|
+
}),
|
|
65
121
|
boundaryUseCounts: [],
|
|
66
|
-
command:
|
|
122
|
+
command: ownerCommand(runtime, plan, work),
|
|
67
123
|
kind: 'acquire-run-resources',
|
|
68
|
-
lane
|
|
124
|
+
lane,
|
|
69
125
|
lifecycle: runtime.lifecycle,
|
|
70
126
|
port: channel.port
|
|
71
127
|
}, {
|
|
@@ -79,13 +135,21 @@ async function acquireRunResourceOutput(runtime, plan, work) {
|
|
|
79
135
|
}
|
|
80
136
|
}
|
|
81
137
|
async function acquireRunResources(runtime, plan) {
|
|
82
|
-
const work =
|
|
138
|
+
const work = ownerWork(plan);
|
|
83
139
|
const output = await acquireRunResourceOutput(runtime, plan, work);
|
|
84
140
|
if (!isWorkerPoolRunResourceOutput(output)) {
|
|
85
141
|
throw new Error('Worker-pool run resource task returned an invalid result.');
|
|
86
142
|
}
|
|
87
143
|
recordResourceRunnerErrors(runtime, output.runnerErrors);
|
|
88
|
-
return {
|
|
144
|
+
return {
|
|
145
|
+
completedWork: new Set(),
|
|
146
|
+
ownerBoundaryKeysByWork: boundaryKeysByWork(plan, false),
|
|
147
|
+
ownerLane: resourceOwnerLane(plan),
|
|
148
|
+
projectionBoundaryKeysByWork: boundaryKeysByWork(plan, true),
|
|
149
|
+
projectedResources: output.projectedResources,
|
|
150
|
+
resourceOwner: true,
|
|
151
|
+
runWork: placementRunWork(plan)
|
|
152
|
+
};
|
|
89
153
|
}
|
|
90
154
|
async function runDisposalTaskOutput(runtime, lane, kind) {
|
|
91
155
|
const channel = resourceTaskChannel();
|
|
@@ -112,9 +176,9 @@ async function runDisposalTask(runtime, lane, kind) {
|
|
|
112
176
|
}
|
|
113
177
|
recordResourceRunnerErrors(runtime, output.runnerErrors);
|
|
114
178
|
}
|
|
115
|
-
async function disposeRunResources(runtime) {
|
|
179
|
+
async function disposeRunResources(runtime, lane) {
|
|
116
180
|
try {
|
|
117
|
-
await runDisposalTask(runtime,
|
|
181
|
+
await runDisposalTask(runtime, lane, 'dispose-run-resources');
|
|
118
182
|
}
|
|
119
183
|
catch (error) {
|
|
120
184
|
recordResourceLifecycleFailure(runtime, 'Worker-pool run resource disposal failed.', error);
|
|
@@ -140,16 +204,83 @@ export function collectedPlanNeedsLaneResourceLifecycle(runtime) {
|
|
|
140
204
|
});
|
|
141
205
|
}
|
|
142
206
|
export async function acquireWorkerPoolResourceLifecycle(runtime, placementPlan) {
|
|
143
|
-
return
|
|
144
|
-
?
|
|
145
|
-
|
|
207
|
+
return resourceOwnerLane(placementPlan) === null
|
|
208
|
+
? {
|
|
209
|
+
completedWork: new Set(),
|
|
210
|
+
ownerBoundaryKeysByWork: new Map(),
|
|
211
|
+
ownerLane: null,
|
|
212
|
+
projectionBoundaryKeysByWork: new Map(),
|
|
213
|
+
projectedResources: { resources: [] },
|
|
214
|
+
resourceOwner: false,
|
|
215
|
+
runWork: placementRunWork(placementPlan)
|
|
216
|
+
}
|
|
217
|
+
: await acquireRunResources(runtime, placementPlan);
|
|
218
|
+
}
|
|
219
|
+
export function workerPoolProjectedResourcesForWork(resourceLifecycle, work) {
|
|
220
|
+
const boundaryKeys = new Set(work.flatMap(function projectionKeys(item) {
|
|
221
|
+
return resourceLifecycle.projectionBoundaryKeysByWork.get(workIdentityKey(item)) ?? [];
|
|
222
|
+
}));
|
|
223
|
+
return {
|
|
224
|
+
resources: resourceLifecycle.projectedResources.resources.filter(function selectedProjection(resource) {
|
|
225
|
+
return boundaryKeys.has(resource.boundaryKey);
|
|
226
|
+
})
|
|
227
|
+
};
|
|
228
|
+
}
|
|
229
|
+
async function completeOwnerBoundaries(runtime, resourceLifecycle, boundaryKeys) {
|
|
230
|
+
if (resourceLifecycle.ownerLane === null || boundaryKeys.length === 0) {
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
async function runCompletionTask(channel) {
|
|
234
|
+
const output = await runtime.pool.run({
|
|
235
|
+
boundaryKeys,
|
|
236
|
+
kind: 'complete-resource-owner-work',
|
|
237
|
+
lane: resourceLifecycle.ownerLane,
|
|
238
|
+
lifecycle: runtime.lifecycle,
|
|
239
|
+
port: channel.port
|
|
240
|
+
}, {
|
|
241
|
+
name: 'runTask',
|
|
242
|
+
signal: freshSignal(),
|
|
243
|
+
transferList: portTransferList(channel.port)
|
|
244
|
+
});
|
|
245
|
+
if (!isWorkerPoolDisposeResourceOutput(output)) {
|
|
246
|
+
throw new Error('Worker-pool resource owner completion returned an invalid result.');
|
|
247
|
+
}
|
|
248
|
+
recordResourceRunnerErrors(runtime, output.runnerErrors);
|
|
249
|
+
}
|
|
250
|
+
const channel = resourceTaskChannel();
|
|
251
|
+
try {
|
|
252
|
+
await runCompletionTask(channel);
|
|
253
|
+
}
|
|
254
|
+
catch (error) {
|
|
255
|
+
recordResourceLifecycleFailure(runtime, 'Worker-pool resource owner completion failed.', error);
|
|
256
|
+
runtime.terminalFailure.write(true);
|
|
257
|
+
}
|
|
258
|
+
finally {
|
|
259
|
+
channel.close();
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
async function completeWorkerPoolResourceWork(runtime, resourceLifecycle, work) {
|
|
263
|
+
const boundaryKeys = [];
|
|
264
|
+
for (const item of work) {
|
|
265
|
+
const key = workIdentityKey(item);
|
|
266
|
+
if (!resourceLifecycle.completedWork.has(key)) {
|
|
267
|
+
resourceLifecycle.completedWork.add(key);
|
|
268
|
+
boundaryKeys.push(...resourceLifecycle.ownerBoundaryKeysByWork.get(key) ?? []);
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
await completeOwnerBoundaries(runtime, resourceLifecycle, boundaryKeys);
|
|
272
|
+
}
|
|
273
|
+
export async function completeWorkerPoolResourceMembers(runtime, resourceLifecycle, members) {
|
|
274
|
+
await completeWorkerPoolResourceWork(runtime, resourceLifecycle, members.flatMap(function completedMemberWork(member) {
|
|
275
|
+
return member.unit.work;
|
|
276
|
+
}));
|
|
146
277
|
}
|
|
147
278
|
export async function disposeWorkerPoolResourceLifecycles(runtime, placementPlan, resourceLifecycle) {
|
|
148
279
|
if (!runtime.terminalFailure.read() && collectedPlanNeedsLaneResourceLifecycle(runtime)) {
|
|
149
280
|
await disposeLaneLifecycles(runtime, placementPlan);
|
|
150
281
|
}
|
|
151
|
-
if (resourceLifecycle.
|
|
152
|
-
await disposeRunResources(runtime);
|
|
282
|
+
if (resourceLifecycle.resourceOwner && resourceLifecycle.ownerLane !== null) {
|
|
283
|
+
await disposeRunResources(runtime, resourceLifecycle.ownerLane);
|
|
153
284
|
}
|
|
154
285
|
}
|
|
155
286
|
//# sourceMappingURL=worker-pool-resource-lifecycle-execution.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-resource-lifecycle-execution.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-resource-lifecycle-execution.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,IAAI,kBAAkB,EAEvC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAe,MAAM,uBAAuB,CAAC;AAGrE,OAAO,EACH,qBAAqB,EACrB,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EACnB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACH,8BAA8B,EAIjC,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"worker-pool-resource-lifecycle-execution.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-resource-lifecycle-execution.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,7 +35,7 @@ function createActiveCaseState(runtime) {
|
|
|
35
35
|
function stopTaskForResourceExhaustion(taskRun, runtime) {
|
|
36
36
|
taskRun.endedByParent.write(true);
|
|
37
37
|
taskRun.requeuePendingCases.write(false);
|
|
38
|
-
taskRun.state.recordTerminalActiveCases('resource-exhausted', runtime.dependencies.wallClock.currentMonotonicMicroseconds);
|
|
38
|
+
taskRun.state.recordTerminalActiveCases('resource-exhausted', Number(runtime.dependencies.wallClock.currentMonotonicMicroseconds));
|
|
39
39
|
clearTaskTimeout(taskRun, runtime);
|
|
40
40
|
taskRun.controller.abort();
|
|
41
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-pool-resource-tracking.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-resource-tracking.ts"],"names":[],"mappings":"AACA,OAAO,EACH,4BAA4B,EAG/B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACH,wBAAwB,EACxB,uBAAuB,EAC1B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACH,wBAAwB,EAE3B,MAAM,2BAA2B,CAAC;AAKnC,KAAK,UAAU,yBAAyB,CACpC,KAA2B,EAC3B,OAA6B;IAE7B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAEjE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,OAA0B,EAAE,OAA6B;IAC/E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAEvC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACrD,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,OAA6B;IACtD,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,mBAAmB,CAAC;IAE5E,OAAO;QACH,mBAAmB,EAAE,IAAI;QACzB,yBAAyB,EAAE,IAAI;QAC/B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;QAC1C,+BAA+B,EAAE,OAAO,CAAC,+BAA+B;KAC3E,CAAC;AACN,CAAC;AAED,SAAS,qBAAqB,CAAC,OAA6B;IACxD,MAAM,WAAW,GAAG,wBAAwB,EAAE,CAAC;IAE/C,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxC,KAAK,MAAM,CAAE,GAAG,EAAE,UAAU,CAAE,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YAC1D,WAAW,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,EAAE,UAAU,CAAC,qBAAqB,CAAC,CAAC;QACjF,CAAC;IACL,CAAC;IAED,OAAO,WAAW,CAAC;AACvB,CAAC;AAED,SAAS,6BAA6B,CAAC,OAA0B,EAAE,OAA6B;IAC5F,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzC,OAAO,CAAC,KAAK,CAAC,yBAAyB,CACnC,oBAAoB,EACpB,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,4BAA4B,
|
|
1
|
+
{"version":3,"file":"worker-pool-resource-tracking.js","sourceRoot":"","sources":["../../../../source/run/worker-pool-resource-tracking.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { appendRunnerErrors } from "../engine/execution-result.js";
|
|
|
3
3
|
import { collectedRunCaseEntries, createRunResultFromCollectedPlan } from "./collected-run-plan.js";
|
|
4
4
|
import { resultWithResolvedTimingCollection } from "./run-timing-collection.js";
|
|
5
5
|
import { createReporterDelivery } from "./supervised-run-runtime.js";
|
|
6
|
-
import { workerPoolCollectedPlan } from "./worker-pool-runtime.js";
|
|
6
|
+
import { workerPoolCollectedPlan, workerPoolPlacementTrace } from "./worker-pool-runtime.js";
|
|
7
7
|
function taskArtifacts(runtime) {
|
|
8
8
|
return Array.from(runtime.activeTasks).flatMap(function toArtifacts(taskRun) {
|
|
9
9
|
return taskRun.state.artifacts();
|
|
@@ -101,7 +101,7 @@ export async function finishWorkerPoolRun(runtime, completedTaskRuns, startedAtM
|
|
|
101
101
|
})
|
|
102
102
|
]);
|
|
103
103
|
const result = resultWithArtifacts(createRunResultFromCollectedPlan(runtime.collectedPlan, perTest, allTaskErrors(runtime, completedTaskRuns), {
|
|
104
|
-
completedAtMicroseconds: runtime.dependencies.wallClock.currentMonotonicMicroseconds,
|
|
104
|
+
completedAtMicroseconds: Number(runtime.dependencies.wallClock.currentMonotonicMicroseconds),
|
|
105
105
|
planStatus: 'planned',
|
|
106
106
|
resourceUsage: finishPoolResourceUsage(runtime),
|
|
107
107
|
startedAtMicroseconds,
|
|
@@ -109,16 +109,19 @@ export async function finishWorkerPoolRun(runtime, completedTaskRuns, startedAtM
|
|
|
109
109
|
return taskRun.state.testExecutionWallTimeMicroseconds();
|
|
110
110
|
}))
|
|
111
111
|
}), [...runtime.runState.artifacts(), ...allTaskArtifacts(completedTaskRuns), ...taskArtifacts(runtime)]);
|
|
112
|
-
return await reportFinalResult(await runtime.finalizeResult(
|
|
112
|
+
return await reportFinalResult(await runtime.finalizeResult({
|
|
113
|
+
placementTrace: workerPoolPlacementTrace(runtime).finish(),
|
|
114
|
+
result
|
|
115
|
+
}), runtime);
|
|
113
116
|
}
|
|
114
117
|
export async function createEmptyWorkerPoolResult(resolvedRun, dependencies, collectionRunState) {
|
|
115
118
|
const reporterDelivery = await createReporterDelivery(resolvedRun, dependencies);
|
|
116
|
-
const startedAtMilliseconds = dependencies.wallClock.
|
|
117
|
-
const startedAtMicroseconds = dependencies.wallClock.currentMonotonicMicroseconds;
|
|
119
|
+
const startedAtMilliseconds = dependencies.wallClock.currentUnixEpochMilliseconds;
|
|
120
|
+
const startedAtMicroseconds = Number(dependencies.wallClock.currentMonotonicMicroseconds);
|
|
118
121
|
const collectedPlan = workerPoolCollectedPlan(resolvedRun);
|
|
119
122
|
const runStartErrors = await reportEmptyShardRunStart(reporterDelivery, resolvedRun, collectedPlan, startedAtMilliseconds);
|
|
120
123
|
const result = resultWithArtifacts(createRunResultFromCollectedPlan(collectedPlan, [], [...resolvedRun.collectionRunnerErrors, ...collectionRunState.runnerErrors(), ...runStartErrors], {
|
|
121
|
-
completedAtMicroseconds: dependencies.wallClock.currentMonotonicMicroseconds,
|
|
124
|
+
completedAtMicroseconds: Number(dependencies.wallClock.currentMonotonicMicroseconds),
|
|
122
125
|
planStatus: emptyWorkerPoolPlanStatus(resolvedRun),
|
|
123
126
|
resourceUsage: null,
|
|
124
127
|
startedAtMicroseconds,
|