Skip to content

Delay history reset until waveform commit - #1001

Closed
wangyinz wants to merge 5 commits into
masterfrom
codex/issue-815-history-order-narrow
Closed

wangyinz wants to merge 5 commits into
masterfrom
codex/issue-815-history-order-narrow

Conversation

@wangyinz

Copy link
Copy Markdown
Member

Fixes #815.

Depends on #955. This PR is based on the #955 branch so reviewers see only the Issue #815 changes. Retarget it to master after #955 merges.

Scope

  • Complete schema metadata preflight before creating sample data.
  • Persist the SAVED history node from a history-only copy.
  • Keep the caller history unchanged until the waveform document and both history references are durable.
  • On failure, remove only invocation-created resources whose identifiers are known: waveform, history, elog, and GridFS documents.
  • Surface cleanup failures instead of hiding them.

Intentionally out of scope

  • Distributed overwrite, which Make GridFS waveform replacement failure-safe #955 rejects explicitly.
  • Cross-resource transactions or ensemble-wide all-or-nothing commits.
  • Truncating shared data files. A failed final database write can leave unreferenced appended bytes; removing them safely requires a separate file-layout design.

Verification

  • Black, Python compilation, and whitespace checks passed.
  • All 32 focused contract tests were collected.
  • 3 connection-free contract tests passed locally.
  • 29 MongoDB-backed cases were skipped because no local MongoDB service is available; CI must execute them before this draft becomes ready.

@wangyinz

Copy link
Copy Markdown
Member Author

Review status: no maintainer behavior decision remains. This PR is Draft only because the 29 MongoDB-backed contract cases could not run locally and, while stacked on #955, GitHub currently runs only the Black check. After #955 merges, retarget this PR to master, run the full required CI set, and mark it Ready if those checks pass.

Base automatically changed from codex/issue-814-gridfs-overwrite to master August 23, 2026 04:05
@wangyinz
wangyinz deleted the branch master August 23, 2026 04:05
@wangyinz wangyinz closed this Aug 23, 2026
@wangyinz

Copy link
Copy Markdown
Member Author

Superseded by #1002. GitHub automatically closed this stacked PR when #955 merged and deleted its base branch, and GitHub does not allow it to be reopened after the required head rebase. #1002 contains the same reviewed narrow change rebased onto master.

wangyinz added a commit that referenced this pull request Aug 23, 2026
Preserve in-memory history until new-save persistence succeeds, and remove created waveform, history, elog, and GridFS resources on known failure paths. Supersedes #1001 and closes #815.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Commit waveform history only with its waveform document

1 participant