Skip to content

TOOLS-4263 Convert mongorestore oplog-replay edge-case tests to Go - #1048

Closed
autarch wants to merge 1 commit into
graphite-base/1048from
07-17-tools-4263_convert_mongorestore_oplog-replay_edge-case_tests_to_go
Closed

TOOLS-4263 Convert mongorestore oplog-replay edge-case tests to Go#1048
autarch wants to merge 1 commit into
graphite-base/1048from
07-17-tools-4263_convert_mongorestore_oplog-replay_edge-case_tests_to_go

Conversation

@autarch

@autarch autarch commented Jul 17, 2026

Copy link
Copy Markdown
Collaborator

The JS -> Go mapping (all under test/qa-tests/jstests/restore):

  • oplog_replay_conflict.js -> TestOplogReplayConflict
    (an embedded oplog plus --oplogFile must fail and apply no data)
  • oplog_replay_priority_oplog.js -> TestOplogReplayPriorityOplog
    (only the higher-priority --oplogFile entries are applied)
  • oplog_replay_noop.js -> TestOplogReplayNoop
    (noop entries are skipped, inserts applied)
  • preserve_oplog_structure_order.js -> TestOplogReplayPreservesComplexIDOrder
    (an update op with a multi-field subdocument _id preserves field
    order; the doc is pre-inserted on 8.1+ per SERVER-88158)
  • oplog_replay_size_safety.js -> TestOplogReplaySizeSafety
    (reduced matrix: 50k small ops + 8 ~1MB ops; the JS swept up to a
    million ops)

This also moves some fixtures under mongorestore/testdata. Move fixtures dump_oplog_conflict, dump_local_oplog, dump_with_noop_in_oplog, dump_with_complex_id_oplog, and extra_oplog.bson into mongorestore/testdata/.

The oplog_replay_local_rs.js and dumprestore7.js tests are not included in this conversion; they require a replica-set topology and will be converted separately.

autarch commented Jul 17, 2026

Copy link
Copy Markdown
Collaborator Author

Warning

This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

This stack of pull requests is managed by Graphite. Learn more about stacking.

@autarch
autarch force-pushed the 07-16-tools-4263_convert_mongorestore_invalid-input_tests_to_go branch from ef8ebd0 to 0cea3b8 Compare July 23, 2026 13:44
@autarch
autarch force-pushed the 07-17-tools-4263_convert_mongorestore_oplog-replay_edge-case_tests_to_go branch from ad5b9e5 to 6e72aea Compare July 23, 2026 13:44
@autarch
autarch force-pushed the 07-17-tools-4263_convert_mongorestore_oplog-replay_edge-case_tests_to_go branch from 6e72aea to 60200d1 Compare July 23, 2026 18:19
The JS -> Go mapping (all under `test/qa-tests/jstests/restore`):

- oplog_replay_conflict.js         -> TestOplogReplayConflict
    (an embedded oplog plus --oplogFile must fail and apply no data)
- oplog_replay_priority_oplog.js   -> TestOplogReplayPriorityOplog
    (only the higher-priority --oplogFile entries are applied)
- oplog_replay_noop.js             -> TestOplogReplayNoop
    (noop entries are skipped, inserts applied)
- preserve_oplog_structure_order.js -> TestOplogReplayPreservesComplexIDOrder
    (an update op with a multi-field subdocument _id preserves field
    order; the doc is pre-inserted on 8.1+ per SERVER-88158)
- oplog_replay_size_safety.js      -> TestOplogReplaySizeSafety
    (reduced matrix: 50k small ops + 8 ~1MB ops; the JS swept up to a
    million ops)

This also moves some fixtures under `mongorestore/testdata`. Move fixtures dump_oplog_conflict, dump_local_oplog, dump_with_noop_in_oplog, dump_with_complex_id_oplog, and extra_oplog.bson into mongorestore/testdata/.

The `oplog_replay_local_rs.js` and `dumprestore7.js` tests are not included in this conversion; they require a replica-set topology and will be converted separately.
@autarch
autarch force-pushed the 07-17-tools-4263_convert_mongorestore_oplog-replay_edge-case_tests_to_go branch from 60200d1 to 04c98db Compare July 24, 2026 16:40
@autarch
autarch force-pushed the 07-16-tools-4263_convert_mongorestore_invalid-input_tests_to_go branch from 0cea3b8 to 4cd1461 Compare July 24, 2026 16:40
@autarch
autarch changed the base branch from 07-16-tools-4263_convert_mongorestore_invalid-input_tests_to_go to graphite-base/1048 July 24, 2026 18:47
@autarch
autarch deleted the branch graphite-base/1048 July 27, 2026 20:55
@autarch autarch closed this Jul 27, 2026
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.

1 participant