Commit Graph

3468 Commits

Author SHA1 Message Date
Kostas Kyrimis
5fa4e8c33a Merge project-pineapples 2022-09-06 13:05:48 +03:00
Kostas Kyrimis
57836f7c2b Added CreateVertices request test and polished 2022-09-05 22:28:15 +03:00
Kostas Kyrimis
c8bc4c7dbc Added Request ScanVertices on RequestClientManager and polished 2022-09-05 21:13:12 +03:00
Tyler Neely
1631c20df2
In memory shard map () 2022-09-05 15:50:54 +03:00
Kostas Kyrimis
e442bf435a Add abstract interface to Middleware and rename it. Cleaned up member function implementation and tests 2022-09-05 15:46:03 +03:00
Kostas Kyrimis
ba06d29a35 Added ScanAll prototype 2022-09-05 10:02:21 +03:00
Kostas Kyrimis
1a2f138e09 middleware prototype 2022-09-02 16:50:48 +03:00
Kostas Kyrimis
c6447eb48b
Add shard requests responses () 2022-09-01 18:54:47 +03:00
Tyler Neely
445cd2d206 Rename StorageClient in the tests to ShardClient to be consistent with ShardRsm 2022-08-31 14:42:57 +00:00
Tyler Neely
0fd448b300 Rename StorageRsm to ShardRsm 2022-08-31 14:40:53 +00:00
Tyler Neely
af4f3a5cb5 Add ShardMap::GetPropertyId 2022-08-31 14:24:20 +00:00
Tyler Neely
27459a9eb0 Add AllocatePropertyIds request/response pair for Coordinator + ShardMap 2022-08-31 14:22:40 +00:00
Tyler Neely
61b1fbfbc9 A number of clean-ups related to the coordinator and its tests 2022-08-30 15:14:28 +00:00
Tyler Neely
025df32d9e Small simplifications around compound keys 2022-08-30 14:19:50 +00:00
Tyler Neely
ab6585f19e Small clean-up of some TODOs and implementation of GetShardsForRange 2022-08-30 13:50:24 +00:00
Tyler Neely
c0d03888f4
Implement basic raft version () 2022-08-30 15:07:34 +02:00
Tyler Neely
f96133e0b9 Merge branch 'project-pineapples' of github.com:memgraph/memgraph into T0912-MG-in-memory-shard-map 2022-08-30 13:00:35 +00:00
Tyler Neely
2a395a18b0 Merge branch 'T0941-MG-implement-basic-raft-version' of github.com:memgraph/memgraph into T0912-MG-in-memory-shard-map 2022-08-30 08:38:14 +00:00
Tyler Neely
910c484c76 Simplify simulator code around reasoning about blocked participants 2022-08-30 08:22:54 +00:00
Tyler Neely
13787a0b17 Do not count clients waiting on promises as blocking when calculating quiescent counts in the simulator 2022-08-30 08:19:04 +00:00
Tyler Neely
46afb25415 use static cast for micros 2022-08-30 07:53:45 +00:00
Tyler Neely
62bb9a399a Revert incorrect code suggestion 2022-08-30 07:51:36 +00:00
Tyler Neely
ec95cd31ed
Update src/io/rsm/raft.hpp
Co-authored-by: János Benjamin Antal <antaljanosbenjamin@users.noreply.github.com>
2022-08-30 09:12:54 +02:00
Tyler Neely
c0bbfc4f0e Address clang-tidy feedback 2022-08-29 15:42:19 +00:00
Tyler Neely
d50a6ab232 Properly use Follower's next_index for sending batches instead of the known committed_log_size 2022-08-29 14:13:40 +00:00
Tyler Neely
28fae9e6d0 Assert that terms in the log are monotonic 2022-08-29 14:01:30 +00:00
Tyler Neely
b7e54cbe44 Assert that terms in the log are monotonic 2022-08-29 14:00:29 +00:00
Tyler Neely
a410864855 Improve constness in several method bodies 2022-08-29 13:43:27 +00:00
Tyler Neely
325aae34d2 Optimize Cron calling order 2022-08-29 13:32:16 +00:00
Tyler Neely
8657909ef3 Simplify Handle(Leader, AppendResponse...) 2022-08-29 13:30:01 +00:00
Tyler Neely
726c42a3fc Use std::make_move_iterator for adding entries from AppendRequest into a Follower's Raft log 2022-08-29 13:24:34 +00:00
Tyler Neely
e67eefb1a3 Use a concept to lock-down certain Handle methods for Raft 2022-08-29 12:00:53 +00:00
Tyler Neely
a40403e3ce
Add local transport ()
* Create LocalTransport Io provider for sending messages to components on the same machine
* Move src/io/simulation/message_conversion.hpp to src/io/message_conversion.hpp for use in other Io providers
2022-08-29 13:49:51 +02:00
Tyler Neely
cb33a0a0c6 Merge branch 'project-pineapples' of github.com:memgraph/memgraph into T0941-MG-implement-basic-raft-version 2022-08-29 11:35:24 +00:00
Tyler Neely
f6e41bd0f5 Make Raft index tracking less bug-prone by focusing on "log size" which gracefully initializes to 0 instead of 1-indexed log index tracking which does not cleanly initialize as intuitively 2022-08-29 09:18:25 +00:00
Tyler Neely
10f8af4681
Update src/io/rsm/raft.hpp
Co-authored-by: János Benjamin Antal <antaljanosbenjamin@users.noreply.github.com>
2022-08-24 18:23:17 +02:00
Tyler Neely
87e9897c94 Use extracted constants for various timeout durations 2022-08-24 16:10:36 +00:00
Tyler Neely
34c3d94163 Fix and clarify comment 2022-08-24 16:01:19 +00:00
Tyler Neely
12c55d5d0b Remove several cases of unnecessary 'auto &&' 2022-08-24 15:58:46 +00:00
Tyler Neely
0d1616a5e0 Use Duration instead of std::chrono::microseconds which it aliases to 2022-08-24 15:55:10 +00:00
Tyler Neely
0be36a5805 Remove unnecessary aliases 2022-08-24 15:53:22 +00:00
Tyler Neely
8cea2937b8 Apply some feedback from clang-tidy 2022-08-24 15:00:52 +00:00
Tyler Neely
0b7f195f4b Remove unused include 2022-08-23 11:35:40 +00:00
Tyler Neely
409fe692d9 Check-in CoordinatorClient 2022-08-23 11:34:18 +00:00
Tyler Neely
7d1318b4d7 Clean up some rsm client and coordinator code 2022-08-19 15:17:33 +00:00
Tyler Neely
d42fa1fc87 Fix ShardMap::GetShardForKey 2022-08-18 15:14:04 +00:00
Tyler Neely
2a3a3338f0 Clean up coordinator a bit 2022-08-18 14:04:28 +00:00
Tyler Neely
2320f95dd1 Update the coordinator to include request for initializing a new shard map 2022-08-18 14:01:47 +00:00
Tyler Neely
3794693356 Make shard_rsm.hpp a bit more clear 2022-08-18 13:34:11 +00:00
Tyler Neely
d50b6c1abb Move rsm_client to src/io/rsm 2022-08-18 13:20:56 +00:00