Commit Graph

53 Commits

Author SHA1 Message Date
mpostma
7d6ec7f3d3 resolve merge 2021-03-25 14:21:05 +01:00
mpostma
f3dc853be3 Merge remote-tracking branch 'origin/main' into snapshots 2021-03-25 13:45:07 +01:00
mpostma
48507460b2 add snapshot tests 2021-03-25 12:02:10 +01:00
mpostma
d029464de8 fix snapshot path 2021-03-25 10:23:31 +01:00
mpostma
79d09705d8 perform snapshot on startup 2021-03-25 09:35:15 +01:00
bors[bot]
868658f3d8 Merge #109
109: Make updates atomic r=curquiza a=MarinPostma

Until now, the index_uid->uuid mapping was done before the update was written to disk in the case of automatic index creation. This was an issue when the update failed, and the index would still exists in the uuid resolver.

This is fixed by this pr, by first creating the update with an uuid if the index does not exist, and then register this uuid to the uuid resolver.

This is preliminary work to the implementation of snapshots (#19).

This pr also changes the `resolve` method on the `UuidResolver` to `get` to make it clearer.


The `create_uuid` method may be bound to disappear when the index name resolution is handled by a remote machine.

Co-authored-by: mpostma <postma.marin@protonmail.com>
2021-03-24 12:24:32 +00:00
mpostma
d892a2643e fix clippy 2021-03-24 12:38:59 +01:00
mpostma
83ffdc888a remove bad file name test 2021-03-24 12:38:59 +01:00
mpostma
4041d9dc48 format code 2021-03-24 12:38:59 +01:00
mpostma
1f16c8d224 integration test snapshot 2021-03-24 12:38:59 +01:00
mpostma
06f9dae0f3 remove prints 2021-03-24 12:38:59 +01:00
mpostma
48d5f88c1a fix snapshot dir already exists 2021-03-24 12:38:59 +01:00
mpostma
eb53ed4cc1 load snapshot 2021-03-24 12:38:59 +01:00
mpostma
46293546f3 add tests and mocks 2021-03-24 12:38:59 +01:00
mpostma
3cc3637e2d refactor for tests 2021-03-24 12:38:56 +01:00
mpostma
1f51fc8baf create indexes snapshots concurrently 2021-03-24 12:38:12 +01:00
mpostma
e9da191b7d fix snapshot bugs 2021-03-24 12:38:12 +01:00
mpostma
d73fbdef2e remove from snapshot 2021-03-24 12:38:12 +01:00
mpostma
44dcfe29aa clean snapshot creation 2021-03-24 12:38:12 +01:00
mpostma
a85e7abb0c fix snapshot creation 2021-03-24 12:38:12 +01:00
mpostma
4847884165 restore snapshots 2021-03-24 12:38:12 +01:00
mpostma
7f6a54cb12 add lock to prevent snapshot during update 2021-03-24 12:38:12 +01:00
mpostma
520f7c09ba sequential index snapshot 2021-03-24 12:38:12 +01:00
mpostma
35a7b800eb snapshot indexes 2021-03-24 12:38:12 +01:00
mpostma
c966b1dd94 use options to schedule snapshot 2021-03-24 12:38:11 +01:00
mpostma
ee838be41b implement snapshot scheduler 2021-03-24 12:38:11 +01:00
mpostma
5f33672f0e change payload send to use stream methods 2021-03-22 19:49:21 +01:00
mpostma
b690f1103a fix typos 2021-03-22 19:25:56 +01:00
mpostma
147756750b create uuid on successful update addition
also change resolve to get in uuid resolver
2021-03-18 09:09:26 +01:00
mpostma
8b99860e85 use write sender for updates 2021-03-18 08:32:05 +01:00
bors[bot]
ca3b343b1f Merge #96
96: Check json payload on document addition r=curquiza a=MarinPostma

Check if the json payload in updates is valid. It uses a json validator to avoid allocation, and only serializes the json in case of error, to return a pretty message.

Co-authored-by: mpostma <postma.marin@protonmail.com>
2021-03-16 17:20:44 +00:00
mpostma
204c743bcc add json payload check on document addition 2021-03-16 14:28:13 +01:00
mpostma
94bd14ede3 add name to index_metadata 2021-03-15 18:35:16 +01:00
mpostma
dd324807f9 last review edits + fmt 2021-03-15 18:11:10 +01:00
mpostma
abbea59732 fix clippy warnings 2021-03-15 16:52:05 +01:00
mpostma
01479dcf99 rename name to uid in code 2021-03-15 14:43:47 +01:00
mpostma
99c89cf2ba use options max db sizes 2021-03-13 10:09:10 +01:00
mpostma
49b74b587a enable jemalloc only on linux 2021-03-12 17:47:40 +01:00
mpostma
2ee2e6a9b2 clean project 2021-03-12 14:57:24 +01:00
mpostma
c4846dafca implement update index 2021-03-12 14:48:43 +01:00
mpostma
77d5dd452f remove open_or_create 2021-03-12 14:16:54 +01:00
mpostma
e4d45b0500 fix various bugs 2021-03-12 00:37:43 +01:00
mpostma
7d9637861f fix add primary key on index creation 2021-03-11 22:55:29 +01:00
mpostma
271c8ba991 change index name to uid 2021-03-11 22:47:29 +01:00
mpostma
66b64c1f80 correct error on settings delete unexisting index 2021-03-11 22:33:31 +01:00
mpostma
30dd790884 handle badly formatted index uid 2021-03-11 22:23:48 +01:00
mpostma
40b3451a4e fix unexisting update store + race conditions 2021-03-11 22:11:58 +01:00
mpostma
3f68460d6c fix update dedup 2021-03-11 20:58:51 +01:00
mpostma
79a4bc8129 use meta from milli 2021-03-11 19:40:18 +01:00
mpostma
1fad72e019 fix test bug with tempdir 2021-03-11 17:59:47 +01:00