Open-source graph database, built for real-time streaming data, compatible with Neo4j.
Go to file
florijan 9edc472eaf Resolving TODOs in the operator implementations
Summary:
Three TODOs resolved.

1. around line 897 - we currently don't support expansion into existing variable length edges (there is a TODO in symbol_generator.cpp:213), so this should not be done at the moment.

2. around line 1025 - This TODO was on review and nobody commented, so I'm removing it. Should have done that when the diff landed.

3. around line 1560 - This does not seem possible. Edge-uniqueness checks happen within a single `[OPTIONAL ] MATCH`. If it is OPTIONAL (the case interesting here), then the uniqueness check also gets planned under the optional branch. So, if an optional fails, the uniqueness check will get skipped, as opposed to getting executed over a Null. I added an edge-case test to verify this (and checked with the planner test).

Reviewers: buda, teon.banek

Reviewed By: teon.banek

Subscribers: pullbot

Differential Revision: https://phabricator.memgraph.io/D807
2017-09-19 09:48:28 +02:00
cmake Make GNU Readline dependency optional 2017-03-24 12:42:45 +01:00
config Start work on parallel benchmark 2017-09-12 16:58:21 +02:00
docs Named path support 2017-09-19 09:45:50 +02:00
experimental Implement create vertex and count vertices query 2017-09-18 07:26:03 +02:00
libs Moved json.hpp to deps server 2017-09-18 15:06:07 +02:00
poc utils::auto_scope refactor 2017-08-11 09:43:10 +02:00
release Remove LOG_NO_STDOUT flag 2017-08-24 10:45:35 +02:00
src Resolving TODOs in the operator implementations 2017-09-19 09:48:28 +02:00
tests Resolving TODOs in the operator implementations 2017-09-19 09:48:28 +02:00
tools Replaced Python long running test with C++ version 2017-09-18 15:06:22 +02:00
.arcconfig Set arc.land.onto.default to dev 2017-03-03 13:33:45 +01:00
.clang-format Query - LogicalOp - visitable bug fix 2017-03-22 14:14:01 +01:00
.gdbinit Add pretty printer to gdb for TypedValue 2017-08-16 11:32:25 +02:00
.gitignore Removed Double Locking, Simplified Ownership or LocalEventStream, .... 2017-08-04 17:58:22 +02:00
.ycm_extra_conf.py Start work on parallel benchmark 2017-09-12 16:58:21 +02:00
CHANGELOG.md Named path support 2017-09-19 09:45:50 +02:00
CMakeLists.txt Inline filter inside ExpandVariable 2017-08-30 16:23:16 +02:00
coverage Silence ctest when running for coverage 2017-06-13 11:54:43 +02:00
Doxyfile Enable AUTOBRIEF for doxygen 2017-06-02 08:59:49 +02:00
Doxylogo.png Doxygen setup 2016-12-20 15:49:52 +01:00
format Migrate command line args to gflgs in tests 2017-07-06 13:54:12 +02:00
init Remove unnecessary requirements 2017-08-28 10:19:14 +02:00
install_neo NeoRunner + Harness bugfix 2017-07-29 17:46:24 +02:00
llvm-gcov memgraph coverage (lcov setup in progress...) 2017-03-07 18:27:03 +01:00
README.md Migrate command line args to gflgs in tests 2017-07-06 13:54:12 +02:00

memgraph

Memgraph is an ACID compliant high performance transactional distributed in-memory graph database featuring runtime native query compiling, lock free data structures, multi-version concurrency control and asynchronous IO.

dependencies

Memgraph can be compiled using any modern c++ compiler. It mostly relies on the standard template library, however, some things do require external libraries.

Some code contains linux-specific libraries and the build is only supported on a 64 bit linux kernel.

  • linux
  • clang 3.8 (good c++11 support, especially lock free atomics)
  • antlr (compiler frontend)
  • cppitertools
  • fmt format
  • google benchmark
  • google test
  • glog
  • gflags