memgraph/tests
Teon Banek 4db62b18f0 Decouple visiting of distributed operators from regular
Summary:
Visitor pattern's main issue is cyclical dependency between classes that
are visited and the visitor instance itself. We need to decouple this
dependency if we want to open source part of the code, namely
non-distributed part. This decoupling is achieved through the use of
`dynamic_cast` in distributed operators. Hopefully the solution is good
enough and doesn't cause performance issues. An alternative solution is
to build our own custom double dispatch solution, but that will
basically boil down to our implementation of runtime type information
and casts.

Note, this only decouples the distributed operators. If and when we
decide that other operators shouldn't be open sourced, the same
`dynamic_cast` pattern should be applied in them also.

Depends on D1563

Reviewers: mtomic, msantl, buda

Reviewed By: mtomic

Subscribers: pullbot

Differential Revision: https://phabricator.memgraph.io/D1566
2018-08-28 14:53:02 +02:00
..
benchmark Extract distributed interpretation out of Interpreter 2018-08-27 09:31:39 +02:00
concurrent Remove couple of linking redundancies in CMakeLists 2018-07-30 13:55:30 +02:00
distributed Remove raft from the codebase 2018-07-30 14:14:10 +02:00
drivers Integrate driver tests with Apollo 2018-08-22 18:31:37 +02:00
integration Integrate auth checks into query execution 2018-08-22 11:44:09 +02:00
macro_benchmark Extract stats to static lib 2018-08-23 10:33:50 +02:00
manual Extract distributed interpretation out of Interpreter 2018-08-27 09:31:39 +02:00
property_based Separate distributed implementation of GraphDbAccessor 2018-07-26 09:16:39 +02:00
public_benchmark Update LDBC query implementation 2018-07-10 10:08:21 +02:00
qa Add support for distributed tck tests 2018-08-01 10:51:49 +02:00
stress Rename bolt::DecodedValue to bolt::Value 2018-07-24 15:59:20 +02:00
unit Decouple visiting of distributed operators from regular 2018-08-28 14:53:02 +02:00
apollo_runs.py Optimize Apollo build process 2018-05-16 14:52:27 +02:00
client-stress.sh Migrate command line args to gflgs in tests 2017-07-06 13:54:12 +02:00
CMakeLists.txt Remove raft from the codebase 2018-07-30 14:14:10 +02:00