Skip to content

feat: add partial and dropped-engines fields to run doc mapping - #204

Open
k-rister wants to merge 1 commit into
masterfrom
feat-run-partial-status
Open

feat: add partial and dropped-engines fields to run doc mapping#204
k-rister wants to merge 1 commit into
masterfrom
feat-run-partial-status

Conversation

@k-rister

@k-rister k-rister commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds partial (boolean) and dropped-engines (keyword) fields to the run doctype mapping (v9dev, inherited by v10dev)
  • Supports an upcoming rickshaw change (PERFNFV-464) that records when a benchmark run loses engines mid-run (roadblock timeout/crash) so results can be flagged and queried as partial

Context

Architecture review (PERFNFV-464) found that a crashed/dropped engine mid-run currently has no visibility beyond an in-memory log line — the run "succeeds" with fewer engines and nothing records that fact. Rickshaw will start emitting these fields on the run document; this PR adds the mapping first since the run index uses dynamic: "strict" — emitting the fields before the mapping exists would cause OpenSearch to reject the documents (same class of issue found in PERFNFV-455).

This should merge before the rickshaw PR that emits these fields, to avoid indexing rejections on the run document.

Test plan

  • node -c queries/cdmq/cdm.js — syntax check passes
  • Verified via require() that both v9dev and v10dev run mappings include the new partial/dropped-engines properties
  • End-to-end: ran a live benchmark against this OpenSearch instance and confirmed the run doctype document indexes successfully with partial: false, dropped-engines: [] on the happy path, and partial: true, dropped-engines: ["client-1"] when an engine was killed mid-run

🤖 Generated with Claude Code

Enables recording, at the run level, whether a benchmark run lost
engines mid-run (roadblock timeout/crash) and which ones — supports
rickshaw's upcoming participation-summary work (PERFNFV-464).

Added to v9dev (inherited by v10dev) for forward compatibility with
the default-aggregation precedent, so rickshaw can start emitting
these fields ahead of every deployment being on v10dev.
@k-rister k-rister self-assigned this Aug 6, 2026
@k-rister
k-rister requested a review from a team August 6, 2026 14:02
@project-crucible-tracking project-crucible-tracking Bot moved this to In Progress in Crucible Tracking Aug 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

1 participant