Skip to content

Commit 8de5d15

Browse files
committed
Fix native startup, graph effect closure and heartbeat liveness
Register physical request placement for ONE startup; preserve bounded resource inventory and ordered graph endpoint bindings. Repair complete replay expectations and add native held-admission/cold-replay whole-operation regressions. Retire independently reviewed orphan vector/report code. Validation: R751 strict Unit, Integration and Recovery dependency graph passed with zero warnings/errors and no source drift. Current runtime, full solution, Linux and original acceptance gates remain open; README and status retain the original failed runtime evidence.
1 parent 3710210 commit 8de5d15

38 files changed

Lines changed: 646 additions & 664 deletions

File tree

‎README.md‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,9 +96,11 @@ flowchart LR
9696

9797
The earlier resource-lifetime and analytics-root repair checkpoint passed its strict solution build, all **45 selected native whole-operation tests**, all **three selected process/native recovery tests**, and the actual SDK/MCP RF3 authorization scenario through all-three-node same-root cold restart. These are local development proofs. Earlier scenarios and failures retain their original source scope; whole-product and Linux qualification remain open.
9898

99-
Поточний foundation-пакет пройшов strict Release збірку Recovery та його залежностей (**R720: 0 warnings / 0 errors за 83,76 с**) і весь пов’язаний набір **R722: 21/21 process-recovery тестів за 56,53 с**, native parallelism 50, без coverage collector. Код і DLL цього прогону незмінні; сторонні benchmark-зміни зафіксовані окремо. Попередній Unit-прогін R700 на `ad39b50` дав **103/124 PASS, 21 FAIL**; виправлення потребують актуального Unit та public ONE/RF3/cold виконання. Повна solution-збірка й Linux qualification залишаються OPEN. Raw coverage 27,30% належить старому невдалому focused-прогону лише 7 production modules і не є повним поточним покриттям.
99+
Поточний foundation-пакет виправляє ONE placement DI, межі resource inventory, графові effect bindings, повні replay-очікування та heartbeat під час довгого command preparation. **R751: Unit, Integration і Recovery з реальними залежностями зібралися з 0 warnings / 0 errors за 166,51 с, source drift 0.** Це focused compiler proof; повна solution-збірка та exact-source Linux qualification залишаються OPEN.
100100

101-
Linux CI на `c7c5ed489` зупинився перед тестами на CA2000 у тестовому файловому logger. Поточний пакет передає його lifetime штатному DI та переносить routing creation до наявної factory. **R738: Unit, Integration і Recovery разом із реальними залежностями зібралися з 0 warnings / 0 errors за 169,70 с, source drift 0.** Поточні Unit70, Recovery21 та розширені public ONE/RF3/cold/file сценарії ще потребують виконання; попередній Recovery PASS зберігає свій початковий source scope. Повна solution-збірка та повторна Linux qualification залишаються OPEN. Окремий benchmark-пакет переходить до 22 shared sessions (11 баз × 1/3 вузли), починаючи із семи document-сценаріїв та вимірюваного початкового завантаження 1 млн записів без warmup/reseed. Це source-реалізація: повна model/client matrix та Linux benchmark qualification залишаються OPEN.
101+
Останній виконаний попередній Unit-прогін **R739: 154/216 PASS, 62 FAIL, 0 SKIP**; ONE зупинився на відсутній DI-реєстрації до входу в workload. Реєстрацію виправлено, але актуальний functional PASS ще потрібен. **R740: 21/21 process-recovery PASS за 55,53 с** належить попередньому source. Поточні Unit72, Recovery21 та розширені public ONE/RF3/cold/file сценарії ще потребують виконання; причина окремої native connection bootstrap-відмови залишається невстановленою. Raw coverage 27,30% належить старому невдалому focused-прогону лише 7 production modules і не є повним поточним покриттям.
102+
103+
Окремий benchmark-пакет переходить до 22 shared sessions (11 баз × 1/3 вузли), починаючи із семи document-сценаріїв та вимірюваного початкового завантаження 1 млн записів без warmup/reseed. Видалено 13 orphan vector/report файлів і оновлено 3 пов’язані файли. Повна model/client matrix та Linux benchmark qualification залишаються OPEN.
102104

103105
The separate [all-model cold-reopen pair](docs/Features/DatabaseComposition/FunctionalDatabaseColdReopen.md) also passed on `57cea624`: **one node in 104.61 seconds, then RF3 in 118.73 seconds**. After all original nodes restarted through Aspire, both clients replayed the original SQL, mixed-model and blob-stage commands with complete receipt/value checks, then verified persisted grant revocation, repair and a healthy write. These tests keep the same physical roots and credentials. They use three cold-only identities and do not claim the normal gate's eight-user concurrency.
104106

‎benchmarks/KeyLoad.Comparisons/Features/BenchmarkComparisons/Contracts/Contracts.cs‎

Lines changed: 0 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -230,66 +230,6 @@ public VectorMetrics? VectorMetrics
230230
}
231231
}
232232

233-
/// <summary>Contains the configuration, environment, targets, and cases for one comparison run.</summary>
234-
/// <param name="SchemaVersion">The serialized report schema version.</param>
235-
/// <param name="RunId">The unique identifier for the comparison run.</param>
236-
/// <param name="StartedAt">The run start time.</param>
237-
/// <param name="Options">The validated workload configuration.</param>
238-
/// <param name="DatasetSha256">The SHA-256 hash of the generated dataset.</param>
239-
/// <param name="LoadModel">The harness load model description.</param>
240-
/// <param name="HostOs">The operating system running the harness.</param>
241-
/// <param name="Architecture">The processor architecture running the harness.</param>
242-
/// <param name="LogicalProcessors">The number of logical processors reported by the host.</param>
243-
/// <param name="Runtime">The runtime description reported for the run.</param>
244-
/// <param name="Storage">The storage description reported for the run.</param>
245-
/// <param name="SourceRevision">The source revision associated with the run, when known.</param>
246-
/// <param name="Targets">The target profiles included in the run.</param>
247-
/// <param name="Cases">The target/scenario repetition results.</param>
248-
public sealed record ComparisonReport(int SchemaVersion, Guid RunId, DateTimeOffset StartedAt,
249-
[property: SerializedOptionsSnapshot] ComparisonOptions? Options, string DatasetSha256, string LoadModel, string HostOs, string Architecture,
250-
int LogicalProcessors, string Runtime, string Storage, string? SourceRevision,
251-
[property: JsonRequired] ImmutableArray<TargetProfile> Targets,
252-
[property: JsonRequired] ImmutableArray<ComparisonCase> Cases)
253-
{
254-
/// <summary>Gets or initializes GitHub Actions provenance for the comparison run.</summary>
255-
public GitHubProvenance? Provenance
256-
{
257-
get; init;
258-
}
259-
/// <summary>Gets or initializes the load-generator container image reference, when used.</summary>
260-
public string? LoadGeneratorImage
261-
{
262-
get; init;
263-
}
264-
private const int AbsentConfigurationCount = 0;
265-
private const int PresentConfigurationCount = 1;
266-
private const string ExclusiveConfigurationRequired = "A comparison report must carry exactly one configuration.";
267-
268-
/// <summary>Validates that exactly one control, scaled or vector configuration is present.</summary>
269-
public void ValidateConfiguration()
270-
{
271-
if ((Options is null ? AbsentConfigurationCount : PresentConfigurationCount)
272-
+ (ScaledProfile is null ? AbsentConfigurationCount : PresentConfigurationCount)
273-
+ (VectorProfile is null ? AbsentConfigurationCount : PresentConfigurationCount) != PresentConfigurationCount)
274-
{
275-
throw new InvalidOperationException(ExclusiveConfigurationRequired);
276-
}
277-
}
278-
/// <summary>Gets the exact scaled profile when this report is not a materialized control run.</summary>
279-
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
280-
public ScaledComparisonProfile? ScaledProfile
281-
{
282-
get; init;
283-
}
284-
285-
/// <summary>Gets the exact vector qualification profile when this is a vector run.</summary>
286-
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
287-
public VectorComparisonProfile? VectorProfile
288-
{
289-
get; init;
290-
}
291-
}
292-
293233
/// <summary>Identifies the GitHub Actions workflow run and selected comparison profile.</summary>
294234
/// <param name="RunId">The GitHub Actions run identifier.</param>
295235
/// <param name="Attempt">The run attempt number.</param>

‎benchmarks/KeyLoad.Comparisons/Features/BenchmarkComparisons/Contracts/StreamedComparisonCase.cs‎

Lines changed: 0 additions & 30 deletions
This file was deleted.

‎benchmarks/KeyLoad.Comparisons/Features/BenchmarkComparisons/Serialization/ComparisonContractJson.cs‎

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,5 @@ internal static void Configure(JsonSerializerOptions options)
1212
options.Converters.Add(JsonDefaults.Options.GetConverter(typeof(ImmutableArray<FoundDocument>)));
1313
options.Converters.Add(JsonDefaults.Options.GetConverter(typeof(ImmutableArray<string>)));
1414
options.Converters.Add(JsonDefaults.Options.GetConverter(typeof(ImmutableArray<OperationSample>)));
15-
options.Converters.Add(JsonDefaults.Options.GetConverter(typeof(ImmutableArray<TargetProfile>)));
16-
options.Converters.Add(JsonDefaults.Options.GetConverter(typeof(ImmutableArray<ComparisonCase>)));
1715
}
1816
}

‎benchmarks/KeyLoad.Comparisons/Features/BenchmarkComparisons/Streaming/ImmutableArrayAsyncView.cs‎

Lines changed: 0 additions & 59 deletions
This file was deleted.

‎benchmarks/KeyLoad.Comparisons/Features/BenchmarkComparisons/Vector/Contracts/VectorResultValidatorValues.cs‎

Lines changed: 0 additions & 11 deletions
This file was deleted.

‎benchmarks/KeyLoad.Comparisons/Features/BenchmarkComparisons/Vector/Contracts/VectorUpdateExecutorValues.cs‎

Lines changed: 0 additions & 7 deletions
This file was deleted.

‎benchmarks/KeyLoad.Comparisons/Features/BenchmarkComparisons/Vector/Contracts/VectorWorkloadExecutorValues.cs‎

Lines changed: 0 additions & 10 deletions
This file was deleted.

‎benchmarks/KeyLoad.Comparisons/Features/BenchmarkComparisons/Vector/Contracts/VectorWorkloadObservationsValues.cs‎

Lines changed: 0 additions & 7 deletions
This file was deleted.

‎benchmarks/KeyLoad.Comparisons/Features/BenchmarkComparisons/Vector/Execution/VectorOperationDeadline.cs‎

Lines changed: 0 additions & 11 deletions
This file was deleted.

0 commit comments

Comments
 (0)