[go: up one dir, main page]

Skip to content

storage: Refactor some storage components to prepare for Raft integration

This MR contains some independent commits which are a part of Integrate etcd/raft life cycle to Gitaly's WAL ... (!7553 - merged). I cherry-picked them out as an independent MR to reduce the number of file changes of the original MR.

Those commits prepare the storage package to be ready for etcd/raft integration, including:

  • Move manifest CRUD methods from TransactionManager to wal package
  • Remove fsync system call after writing the manifest
  • Create snapshot locks remote lazily instead of pre-creating them before a log entry is appended.
  • Add LSN to certain test hooks of Transaction Manager
  • Centralize errSimulateCrash emitter in Transaction Manager's tests.

They are quite self-contained, safe, and don't change any functionality of WAL.

Edited by Quang-Minh Nguyen

Merge request reports

Loading