memgraph/tests/unit
Matija Santl 7b88e514b8 Add ClusterDiscovery RPC for distributed BFS
Summary:
Implemented cluster discovery in distributed memgraph.
When a worker registers, it sends a RPC request to master.
The master assigns that worker an id and sends the information about other
workers (pairs of <worker_id, endpoint>) to the new worker.
Master also sends the information about the new worker to all existing workers
in the process of worker registration.

After the last worker registers, all memgraph instances in the clusters should
know about every other.

Reviewers: mtomic, buda, florijan

Reviewed By: mtomic

Subscribers: teon.banek, dgleich, pullbot

Differential Revision: https://phabricator.memgraph.io/D1339
2018-04-09 14:28:22 +02:00
..
bolt_chunked_decoder_buffer.cpp Remove obsolete network buffers 2018-04-06 16:26:46 +02:00
bolt_chunked_encoder_buffer.cpp Refactor network layer to use streams 2018-03-27 15:05:45 +02:00
bolt_common.hpp Refactor network layer to use streams 2018-03-27 15:05:45 +02:00
bolt_decoder.cpp First version of bolt cpp client. 2017-08-24 17:44:44 +02:00
bolt_encoder.cpp Refactor network layer to use streams 2018-03-27 15:05:45 +02:00
bolt_result_stream.cpp Refactor network layer to use streams 2018-03-27 15:05:45 +02:00
bolt_session.cpp Refactor network layer to use streams 2018-03-27 15:05:45 +02:00
bolt_testdata.hpp Removed large bolt encoder test to reduce runtime. 2017-05-03 14:50:02 +02:00
CMakeLists.txt Integrate code coverage with Apollo 2018-01-15 12:20:11 +01:00
communication_buffer.cpp Remove obsolete network buffers 2018-04-06 16:26:46 +02:00
concurrent_id_mapper_distributed.cpp Use the same ClientPools in distributed 2018-03-01 17:14:59 +01:00
concurrent_id_mapper_single_node.cpp Migrate db::types to storage:: 2018-01-17 10:35:12 +01:00
concurrent_map_access.cpp Const map/set iteration. 2017-10-12 16:35:39 +02:00
concurrent_map.cpp Remove traces of custom assert 2017-10-13 09:34:13 +02:00
concurrent_set.cpp Remove traces of custom assert 2017-10-13 09:34:13 +02:00
counters.cpp Use the same ClientPools in distributed 2018-03-01 17:14:59 +01:00
cypher_main_visitor.cpp Add SINGLE function to openCypher 2018-02-13 17:30:44 +01:00
database_key_index.cpp Migrate db::types to storage:: 2018-01-17 10:35:12 +01:00
database_label_property_index.cpp Support distributed (label, property) indexes 2018-01-25 18:08:04 +01:00
database_master.cpp Add database master test 2018-01-19 14:52:05 +01:00
database_transaction_timeout.cpp Invalidate distributed plan caches 2018-03-13 14:59:51 +01:00
datastructure_union_find.cpp Add parallel customers/Otto test 2017-11-23 09:20:53 +01:00
deferred_deleter.cpp Make gc more aggressive and optimise is_not_visible function 2017-10-06 10:07:55 +02:00
demangle.cpp Add client side RPC stats 2018-02-22 12:34:48 +01:00
distributed_common.hpp Synchronize snapshooting 2018-04-06 10:10:01 +02:00
distributed_coordination.cpp Add ClusterDiscovery RPC for distributed BFS 2018-04-09 14:28:22 +02:00
distributed_data_exchange.cpp Implement sync operator 2018-02-14 13:03:18 +01:00
distributed_durability.cpp Synchronize snapshooting 2018-04-06 10:10:01 +02:00
distributed_gc.cpp Commit log gc 2018-04-04 10:25:25 +02:00
distributed_graph_db.cpp Tidyup distributed stuff naming 2018-03-23 16:32:29 +01:00
distributed_interpretation.cpp Tidyup distributed stuff naming 2018-03-23 16:32:29 +01:00
distributed_query_plan.cpp Tidyup distributed stuff naming 2018-03-23 16:32:29 +01:00
distributed_serialization.cpp Migrate db::types to storage:: 2018-01-17 10:35:12 +01:00
distributed_updates.cpp Tidyup distributed stuff naming 2018-03-23 16:32:29 +01:00
durability.cpp Synchronize snapshooting 2018-04-06 10:10:01 +02:00
dynamic_bitset.cpp Commit log gc 2018-04-04 10:25:25 +02:00
exceptions.cpp Merge utils/exceptions into single file 2017-04-20 16:53:21 +02:00
executor.cpp Remove executor not run option 2017-12-18 14:36:15 +01:00
gid.cpp Change gid bit size 2017-12-28 11:04:52 +01:00
graph_db_accessor_index_api.cpp Migrate db::types to storage:: 2018-01-17 10:35:12 +01:00
graph_db_accessor.cpp Migrate db::types to storage:: 2018-01-17 10:35:12 +01:00
graph_db.cpp Migrate db::types to storage:: 2018-01-17 10:35:12 +01:00
interpreter.cpp Invalidate distributed plan caches 2018-03-13 14:59:51 +01:00
metrics.cpp Add some metric types and basic RPC server stats 2018-02-16 08:33:15 +01:00
mvcc_find_update_common.hpp Extract tx::SingleNodeEngine from tx::MasterEngine 2018-01-11 15:44:42 +01:00
mvcc_find.cpp GC bugfixes, MVCC and transaction refactoring 2017-06-12 10:46:12 +02:00
mvcc_gc_common.hpp Extract tx::SingleNodeEngine from tx::MasterEngine 2018-01-11 15:44:42 +01:00
mvcc_gc.cpp Extract tx::SingleNodeEngine from tx::MasterEngine 2018-01-11 15:44:42 +01:00
mvcc_one_transaction.cpp Fix mvcc tests 2017-10-19 12:58:23 +02:00
mvcc_parallel_update.cpp Fix mvcc tests 2017-10-19 12:58:23 +02:00
mvcc.cpp Extract tx::SingleNodeEngine from tx::MasterEngine 2018-01-11 15:44:42 +01:00
network_endpoint.cpp Rename NetworkEndpoint 2018-01-15 15:47:37 +01:00
network_timeouts.cpp Fix network test not setting null 2018-03-28 15:16:42 +02:00
property_value_store.cpp Migrate db::types to storage:: 2018-01-17 10:35:12 +01:00
query_common.hpp Add SINGLE function to openCypher 2018-02-13 17:30:44 +01:00
query_cost_estimator.cpp Add ExpandWeightedShortestPathCursor 2018-02-14 09:32:41 +01:00
query_expression_evaluator.cpp Add SINGLE function to openCypher 2018-02-13 17:30:44 +01:00
query_plan_accumulate_aggregate.cpp Use RemoteCreateVertex in CreateNode operator 2018-02-21 12:17:43 +01:00
query_plan_bag_semantics.cpp Use RemoteCreateVertex in CreateNode operator 2018-02-21 12:17:43 +01:00
query_plan_common.hpp Add distributed execution RPC 2018-01-25 14:50:28 +01:00
query_plan_create_set_remove_delete.cpp Use RemoteCreateVertex in CreateNode operator 2018-02-21 12:17:43 +01:00
query_plan_edge_cases.cpp Invalidate distributed plan caches 2018-03-13 14:59:51 +01:00
query_plan_match_filter_return.cpp Check values can be used for range indexed ScanAll 2018-03-13 10:23:30 +01:00
query_planner.cpp Allow replacing Accumulate with Synchronize in all cases 2018-03-05 15:35:36 +01:00
query_semantic.cpp Add SINGLE function to openCypher 2018-02-13 17:30:44 +01:00
query_variable_start_planner.cpp Add wShortest expansion to openCypher 2018-02-09 11:02:41 +01:00
queue.cpp Add first version of message passing and rpc 2017-12-05 14:51:18 +01:00
raft_storage.cpp Cleanup utils::File API 2018-01-16 15:38:12 +01:00
raft.cpp RPC refactor 2018-01-24 15:27:40 +01:00
record_edge_vertex_accessor.cpp Refactor state deltas call 2018-02-26 15:44:50 +01:00
ring_buffer.cpp RingBuffer - buffer on heap instead of stack 2017-11-02 12:07:23 +01:00
rpc_worker_clients.cpp Add ClusterDiscovery RPC for distributed BFS 2018-04-09 14:28:22 +02:00
rpc.cpp Check all RPC call results 2018-03-13 15:16:50 +01:00
rwlock.cpp Remove writers preference test for RWLock 2018-03-19 15:57:32 +01:00
scheduler.cpp Add thread names 2018-02-23 16:04:49 +01:00
serialization.cpp Add tuple serialization 2018-04-05 10:58:59 +02:00
signals.cpp Split signals utils into cpp and hpp 2018-04-03 11:17:11 +02:00
skiplist_access.cpp Const map/set iteration. 2017-10-12 16:35:39 +02:00
skiplist_gc.cpp Remove executor not run option 2017-12-18 14:36:15 +01:00
skiplist_position_and_count.cpp Replace debug_assert, permanent_assert with DCHECK/CHECK 2017-10-11 14:43:32 +02:00
skiplist_reverse_iteration.cpp Logger in this test somehow breaks code coverage. Argh... 2017-04-07 09:44:12 +02:00
skiplist_suffix.cpp Refactor GraphDb 2018-01-12 16:47:24 +01:00
state_delta.cpp Rename Find[Vertex|Edge][Checked] 2018-03-21 11:15:59 +01:00
static_bitset.cpp Fix tests that expect debug_assert to fail 2017-08-07 16:38:15 +02:00
storage_address.cpp Support snapshot creation and recovery in distributed 2018-01-29 19:16:13 +01:00
stripped.cpp Fix semicolon in column name 2017-12-14 09:44:21 +01:00
thread_pool.cpp Use ThreadPool for async RPC 2018-03-21 09:55:04 +01:00
timestamp.cpp Add initial version of statsd 2018-02-02 17:02:37 +01:00
transaction_engine_distributed.cpp Add ClusterDiscovery RPC for distributed BFS 2018-04-09 14:28:22 +02:00
transaction_engine_single_node.cpp Fix recovery bug (transaction ID bumping) 2018-03-23 10:09:04 +01:00
typed_value.cpp Refactor GraphDb 2018-01-12 16:47:24 +01:00
utils_network.cpp Rename NetworkEndpoint 2018-01-15 15:47:37 +01:00
utils_on_scope_exit.cpp utils::auto_scope refactor 2017-08-11 09:43:10 +02:00
utils_string.cpp Fix durability test flakyness 2017-12-04 13:46:56 +01:00
watchdog.cpp Add Watchdog utility 2017-11-09 11:23:11 +01:00