Go to file
bors[bot] 89e05fc6c5
Merge #113
113: snapshots r=MarinPostma a=MarinPostma

 This pr adds support for snapshoting.

The snapshoting process for an index requires that no other update is processing at the same time. A mutex lock has been added to prevent a snapshot from occuring at the same time as an update, while still premitting updates to be pushed.

The list of the indexes to snapshot is first retrieved from the `UuidResolver` which also performs its snapshot.

This list is passed to the update store, which attempts to acquire a lock on the update store while it snaphots itself and it's associated index store.

 This means that a snapshot can only be completed once all indexes have finished their ongoing update.

This pr also adds refactoring of the code to allow unit testing and mocking, and unit test the snapshot creation.

Co-authored-by: mpostma <postma.marin@protonmail.com>
Co-authored-by: tamo <irevoire@protonmail.ch>
Co-authored-by: marin <postma.marin@protonmail.com>
Co-authored-by: Marin Postma <postma.marin@protonmail.com>
2021-04-01 13:16:00 +00:00
.github fix(ci, http): commit_sha and commit_date in docker builds 2021-03-31 13:56:28 +03:00
meilisearch-error last review edits + fmt 2021-03-15 18:11:10 +01:00
meilisearch-http Merge remote-tracking branch 'origin/main' into snapshots 2021-04-01 15:10:33 +02:00
.dockerignore update relevant changes from master 2021-03-10 14:43:10 +01:00
.gitignore restructure project 2021-03-10 13:46:49 +01:00
bors.toml Add bors configuration 2021-03-16 13:08:26 +01:00
Cargo.lock add tests and mocks 2021-03-24 12:38:59 +01:00
Cargo.toml restructure project 2021-03-10 13:46:49 +01:00
Dockerfile fix(ci, http): commit_sha and commit_date in docker builds 2021-03-31 13:56:28 +03:00
LICENSE update relevant changes from master 2021-03-10 14:43:10 +01:00
README.md initial commit 2020-12-12 13:32:06 +01:00

transplant of meilisearch http on the new engine