Josipmrden
07dea328d8
[master < T1110] Add merge optimization to expand dynamically during runtime ( #1110 )
2023-09-08 17:12:25 +02:00
Gareth Andrew Lloyd
bd1852f407
Reduce flake SnapshotFallback test ( #1237 )
...
Fixed the wait period, this should ensure at least one snapshot was
made. Also cleaned up the checking around this. And also better
corruption.
2023-09-08 14:21:35 +01:00
imilinovic
9c51dbbb01
Implement changing from and to vertices in relationships ( #1221 )
2023-09-08 12:52:40 +02:00
Matija Pintarić
d9464c6ffd
Add InDegree and OutDegree in O(1) ( #1217 )
2023-09-07 13:16:30 +02:00
Antonio Filipovic
b6b32bec03
Improve performance of delta creation ( #1129 )
2023-09-06 11:30:21 +02:00
Andi
b5413c6f82
Add edge import mode into the on-disk storage ( #1157 )
2023-09-05 19:00:53 +02:00
Josipmrden
09fd5939da
Remove double scan with expand from the planner ( #1085 )
2023-09-05 11:02:52 +02:00
Josipmrden
02eab6ab9c
Set properties C API extension ( #1131 )
...
Add SetProperties into the C++ query module API
2023-09-04 16:17:43 +02:00
Gareth Andrew Lloyd
e928eed028
Replication refactor (part 4) ( #1211 )
...
More refactoring to isolate generic replication behavior. Making the
InMemory* types even more decoupled from replication logic.
2023-08-31 16:06:44 +01:00
Josipmrden
eb5167dfef
Add high write set property workload ( #1172 )
2023-08-31 14:46:35 +02:00
Josipmrden
b952139973
Add supernode performance workload ( #1171 )
2023-08-30 15:19:52 +02:00
andrejtonev
28dbcd1545
Add disk storage to e2e tests ( #1202 )
...
* Add disk storage to e2e tests
---------
Co-authored-by: Andi Skrgat <andi8647@gmail.com>
2023-08-30 13:42:11 +02:00
Matija Pintarić
d516e40841
Add ToString on C++ API mgp types( #1140 )
2023-08-29 17:30:23 +02:00
Andi
a6ec81b179
Add deterministic disk vertex_count and edge_count ( #1146 )
...
* Add exact vertex_count and edge_count to disk storage
2023-08-29 13:07:23 +02:00
andrejtonev
c526ff2a8f
[master < ] Remove DbAccessor from non-transactional queries ( #1201 )
...
* Decouple non-transactional queries from DbAccessor
* Invalidate auth cache after AuthQuery
Co-authored-by: Gareth Lloyd <gareth.lloyd@memgraph.io>
2023-08-29 11:13:42 +02:00
Gareth Andrew Lloyd
4bc5d749b2
Refactor replication, part 3 ( #1177 )
...
Changes to make replication code agnostic of the storage kind being used.
Co-authored-by: Andreja Tonev <andreja.tonev@memgraph.io>
2023-08-25 10:52:07 +01:00
imilinovic
a426ef9cc3
Add Relationship::RemoveProperty to C++ query module API ( #1156 )
2023-08-24 12:14:00 +02:00
Ante Pušić
3f8befde79
Bump PyYAML version ( #1174 )
2023-08-23 12:48:17 +02:00
andrejtonev
9355e58e73
Decoupling replication logic from InMemoryStorage ( #1169 )
2023-08-22 13:29:25 +02:00
gvolfing
476968e2c8
Fix concurrent query module race condition ( #1158 )
...
Concurrent access to the same query module had a race condition on the
pointer that was used to handle the custom memory management. With this
commit, a mapping has been added to keep information about what
thread used the pointer to handle the memory resources. This should be
fine since the respected query executions are running on a dedicated
thread. Access to the mapping itself is threadsafe. A simple RAII
wrapper for the mapping container has also been added for simpler
client-side use.
2023-08-21 16:45:36 +02:00
Gareth Andrew Lloyd
97183fb9da
Fix FLAGS_delta_chain_cache_threshold typo ( #1181 )
2023-08-21 13:16:02 +02:00
Aidar Samerkhanov
3bf2cf65ab
Optimize splitting keys inside the on-disk storage ( #1155 )
2023-08-17 18:09:21 +02:00
Gareth Andrew Lloyd
2e51e703c3
Add supernode vertex cache ( #1124 )
...
Add supernode vertex cache to account for long delta chains and modifications in the same module being independent of scanning of the nodes in the next iteration of the pulling mechanism.
2023-08-11 10:18:28 +02:00
Antonio Filipovic
509183e985
Improve performance on set properties ( #1115 )
2023-08-10 09:06:44 +02:00
Aidar Samerkhanov
1fe2190747
Filter deleted edges during edge prefetch ( #1145 )
2023-08-09 13:56:34 +02:00
Andi
762fe6a65d
Improve disk indices ( #1139 )
2023-08-09 10:16:49 +02:00
Aidar Samerkhanov
271b1a5ddb
Fix bug with on-disk triggers ( #1134 )
...
* Fix TriggerContext adaptation for accessors.
* Fix edge deserialization in case of the deleted vertex.
2023-08-08 10:37:14 +02:00
Matija Pintarić
514fed51c4
Add implementation of C++ API Node::RemoveProperty ( #1128 )
2023-08-01 20:11:38 +02:00
imilinovic
2877c343e8
Add implementation of << operator for mgp::Value ( #1127 )
2023-08-01 19:30:23 +02:00
andrejtonev
e8850549d2
Add multi-tenancy v1 ( #952 )
...
* Decouple BoltSession and communication::bolt::Session
* Add CREATE/USE/DROP DATABASE
* Add SHOW DATABASES
* Cover WebSocket session
* Simple session safety implemented via RWLock
* Storage symlinks for backward. compatibility
* Extend the audit log with the DB info
* Add auth part
* Add tenant recovery
2023-08-01 18:49:11 +02:00
andrejtonev
fd819cd099
Add custom e2e test activation to include the toolchain libs ( #1130 )
2023-08-01 17:13:47 +02:00
Andi
60f4ffc6a1
Improve logging if replica cannot recover using curr WAL file ( #1086 )
2023-08-01 10:33:46 +02:00
Andi
bd2ec6374a
Remove node argument from start-stop Jepsen functions ( #1091 )
2023-08-01 00:06:57 +02:00
gvolfing
210bea83d4
Add GraphQL transpilation compatibility ( #1018 )
...
* Add callable mappings feature
* Implement mgps.validate (void procedure)
* Make '_' a valid variable name
2023-07-31 14:48:12 +02:00
Josh Soref
57fe3463f2
Fix a bunch of spelling mistakes (1/n) ( #1112 )
2023-07-30 14:05:05 +02:00
Tyler Neely
53fcd8ac4d
Add manual .py test verifying isolation levels ( #407 )
2023-07-30 14:04:26 +02:00
Tyler Neely
259cba5d43
Add manual .py test asserting forward progress across reconnects ( #408 )
2023-07-30 14:02:59 +02:00
Antonio Filipovic
285b409927
Improve all shortest paths memory usage ( #981 )
...
* Change allocator to PoolResource
2023-07-30 12:58:07 +02:00
Gareth Andrew Lloyd
8ebab84324
Add handling of partial results on timeout ( #1046 )
2023-07-30 10:48:11 +02:00
imilinovic
3fd9ce4a33
Add mgp::map erase and update ( #1103 )
2023-07-30 08:36:50 +02:00
Andi
be4eb95a98
Fix Jepsen replication pause ( #1082 )
2023-07-30 02:36:11 +02:00
Andi
903a9f4636
Set explicit node config for jepsen tests ( #1088 )
2023-07-30 00:49:48 +02:00
Andi
18bd02423a
Fix PropertyStore buffer serialization ( #1111 )
2023-07-29 19:14:27 +02:00
andrejtonev
58c0c4cebb
Add missing-field-initialization warning flag ( #1113 )
2023-07-29 17:59:11 +02:00
andrejtonev
110ca3968c
Fix path generation ignores edge's element_id ( #1108 )
2023-07-29 15:51:51 +02:00
Andi
9072fb7703
Fix flaky transactional queue e2e test ( #1102 )
2023-07-29 11:11:27 +02:00
Matija Pintarić
76ca019f31
Add overload of operator< for mgp::Value ( #1090 )
2023-07-28 11:35:14 +02:00
imilinovic
609b9a20f1
Add hash on mgp::Value ( #1093 )
2023-07-28 09:08:36 +02:00
Matija Pintarić
ab4d1efe0b
Overload << operator for mgp::Value::Type ( #1080 )
2023-07-25 13:30:02 +02:00
Marko Budiselić
992e718a97
Fix v2.9 release build issues ( #1087 )
...
* Fix include order inside `tests/unit/query_variable_start_planner.cpp` fails on an Rhel7 based OS
2023-07-20 16:15:27 +02:00
Andi
05eca46267
Fix flaky transaction_queue_multiple unit test ( #1077 )
2023-07-19 22:58:02 +02:00
Marko Budiselić
3b9133fd5a
Improve e2e and replication testing setup ( #1061 )
...
* Add `--replication-restore-state-on-startup` with `false` as default
Co-authored-by: Aidar Samerkhanov <aidar.samerkhanov@memgraph.io>
Co-authored-by: Andi Skrgat <andi8647@gmail.com>
2023-07-19 21:18:43 +02:00
Marko Budiselić
9d056e7649
Add experimental/v1 of ON_DISK_TRANSACTIONAL storage ( #850 )
...
Co-authored-by: Andi Skrgat <andi8647@gmail.com>
Co-authored-by: Aidar Samerkhanov <aidar.samerkhanov@memgraph.io>
2023-06-29 11:44:55 +02:00
Josipmrden
84721f7e0a
Add vertex degree to index statistics ( #1026 )
...
Add graph analysis of vertex degrees when doing ANALYZE GRAPH.
2023-06-27 18:06:20 +02:00
Andi
0f1ca745e5
Improve connection handling in tests/e2e
( #1012 )
2023-06-26 22:43:34 +02:00
Gareth Andrew Lloyd
3b781bf525
Add HTTP+GZIP support to LOAD CSV ( #1027 )
2023-06-26 19:10:48 +02:00
Antonio Filipovic
d573eda8bb
Add python & cpp batching option in procedures
...
* Add API for batching from the procedure
* Use PoolResource for batched procedures
2023-06-26 15:46:13 +02:00
Gareth Andrew Lloyd
5b1ba10183
Fix IN_MEMORY_ANALYTICAL storage GC ( #1025 )
2023-06-23 12:50:03 +02:00
Josipmrden
b875649270
Add restoring of replication roles upon database startup ( #791 )
...
Fix replica node restoration on startup so it is restored as replica and not as main.
2023-06-21 19:08:58 +02:00
Josipmrden
05cc35bf93
Add command NULLIF for identifying nulls in LOAD CSV ( #914 )
...
Add NULLIF command which turns all row values corresponding to the string to the nullif character sequence.
2023-06-21 14:50:46 +02:00
Josipmrden
63f8298033
Fix MATCH + LOAD CSV to load CSV only once ( #916 )
...
* update profile query to use poolresource
* Optimize update of indexes
* Add ignore empty strings to load csv
* Add operator changes to support handling of nulls
* Store chunks in memory pools ordered
* Use same max block per chunks number
* Remove redundant return statement
* add hacky cached solution
* change map to set
* remove memory
* Add match load csv invalid behaviour commit
* Accept input on LOAD CSV
* Ommit changes not tied to the PR
* Add tests for match + load csv
* Add gqlalchemy installation for e2e tests
* Modify setup script to update packages
* Revert gqlalchemy to 1.3.3
* Revert gqlalchemy to 1.3.3
* Address PR review comments
* Ommit semicolon
---------
Co-authored-by: antoniofilipovic <filipovicantonio1998@gmail.com>
Co-authored-by: János Benjamin Antal <benjamin.antal@memgraph.io>
2023-06-21 11:13:40 +02:00
Josipmrden
df95775222
Fix init file startup in community edition ( #974 )
...
* Fix init file startup in community edition
* Add possibility to build binary without MG_ENTERPRISE
* Added trace spdlog for when init file is not present
* Add gqlalchemy and unit tests
* Add init data files which correspond to the right directory by the github actions
2023-06-20 17:54:50 +02:00
Marko Budiselić
cf1a86ed13
Refactor tests/integration/run.sh ( #1016 )
2023-06-15 23:10:52 +02:00
andrejtonev
30ec570bb9
Add Bolt v5 support ( #938 )
2023-06-12 18:55:15 +02:00
Antonio Filipovic
d917c3f0fd
Fix slow IN LIST evaluation ( #901 )
2023-05-29 17:52:20 +02:00
andrejtonev
d842adbed3
Handle user-defined metadata and expose it with SHOW TRANSACTIONS( #945 )
2023-05-29 11:40:14 +02:00
Josipmrden
651b6f3a5a
Expose system metrics over HTTP Endpoint ( #940 )
2023-05-18 05:10:57 +00:00
Ante Pušić
0d9bd74a8a
Add support for map projection ( #892 )
2023-05-16 20:05:35 +02:00
andrejtonev
802f8aceda
Add data directory status and (un)lock query ( #933 )
2023-05-16 18:36:04 +02:00
gvolfing
c3e4f81026
Include additional info inside storage mode info query ( #883 )
2023-05-16 14:25:41 +02:00
Ante Javor
69634a5354
Fix typo in mgbench
2023-05-10 14:02:46 +02:00
Aidar Samerkhanov
b8f282468d
Update pulsar client for e2e tests
2023-05-09 12:23:28 +02:00
Ante Javor
ab38161cd2
FIix methodology links ( #903 )
...
Co-authored-by: Josip Mrden <josip.mrden@memgraph.io>
2023-05-03 16:37:36 +02:00
gvolfing
00f8d54249
Parallelize index creation ( #882 )
2023-04-26 16:28:02 +02:00
János Benjamin Antal
6c947947eb
Parallelize recovery ( #868 )
...
* Parallelize edge recovery
* Load vertex labels and properties parallel
* Add parallel connectivity loading
* Add batches information to snapshot
* Introduce `items_per_batch` and `recovery_thread_count` flags
* Make possible to load snapshots with old version
* Add vertex batches to `RecoveryInfo`
* Extend durability integration tests with v15 test cases
* Add `std::vector` based `InitProperties`
* Use `InitProperties` in snapshot loading
2023-04-25 16:25:25 +02:00
Ante Javor
64fd281b2e
Update benchgraph methodology ( #899 )
2023-04-25 09:45:25 +02:00
Marko Budiselić
b02b201129
Improve Jepsen setup ( #893 )
2023-04-23 16:16:49 +02:00
Ante Javor
940bf6722c
Add mgbench tutorial ( #836 )
...
* Add Docker runner
* Add Docker client
* Add benchgraph.sh script
* Add package script
2023-04-19 08:21:55 +02:00
Antonio Filipovic
64e837b355
Introduce analytics mode ( #772 )
2023-04-04 18:46:26 +02:00
Josipmrden
128771a6ec
Add SHA-256 password encryption ( #839 )
2023-04-03 16:29:21 +02:00
Josipmrden
f5a49ed29f
Add Cypher subqueries ( #794 ) ( #851 )
...
Co-authored-by: Bruno Sačarić <bruno.sacaric@gmail.com>
2023-03-31 13:49:10 +00:00
Josipmrden
398503da7a
Add index statistics for better query planning ( #812 )
2023-03-30 15:34:34 +02:00
Bruno Sačarić
0819b40202
Fix bug on AllShortest with multiple edges between nodes ( #832 )
2023-03-29 16:39:41 +02:00
Andi
029be10f1d
Add queries to show or terminate active transactions ( #790 )
2023-03-27 15:46:00 +02:00
Ante Javor
cb813c3070
Add bigger LDBC dataset to mgbench ( #747 )
2023-03-21 21:44:11 +01:00
Ante Javor
6349fc9501
Add time-depended execution to the mgbench client ( #805 )
2023-03-18 20:18:58 +01:00
Jure Bajic
c4167bafdd
Add support for Amazon Linux 2 and stop generating C++ using Lisp/LCP ( #814 )
2023-03-14 19:24:55 +01:00
Ante Pušić
97d45ab1d8
Add Python query module API mock ( #757 )
2023-03-07 15:41:19 +01:00
Josipmrden
6abd356d01
[master < E214] WHERE Exists feature ( #818 )
...
Add WHERE exists() to filter based on neighbouring pattern expressions
2023-03-07 00:28:41 +01:00
Ante Pušić
173f5430aa
Remove noexcept from functions that may throw ( #819 )
2023-03-06 17:34:34 +01:00
Antonio Filipovic
d79dd69607
Improve performance with props init on node|edge creation ( #788 )
2023-02-24 15:40:35 +01:00
Ante Javor
5e2ee6c817
Improve mgbench C++ client ( #760 )
2023-02-17 17:54:05 +01:00
Antonio Filipovic
862a1afdf1
Improve Visit performance ( #774 )
2023-02-17 13:09:25 +01:00
Josipmrden
8f70c5f2a5
Fix label-based auth using OLD view instead of NEW when merging nodes ( #755 )
2023-02-01 13:20:26 +01:00
Bruno Sačarić
34dd47ef07
Fix nested FOREACH shadowing bug ( #725 )
2023-01-25 20:06:05 +01:00
Ante Pušić
aad4bcb7a0
Fix C++ API memory leak on Relationships() ( #743 )
2023-01-25 17:23:46 +01:00
Bruno Sačarić
034b54cb72
Fix bug on all shortest paths with an upper bound ( #737 )
2023-01-25 15:32:00 +01:00
Josipmrden
8cf51d9f68
Fix bug in query plan to use indexes on optional match and foreach ( #736 )
...
* Add fix in query plan to use indexes on optional match and foreach
2023-01-25 12:53:33 +01:00
Antonio Filipovic
1cd1da84fd
Fix bug on (vertex|edge) properties in C++ API ( #732 )
2023-01-23 12:57:17 +01:00
niko4299
d9eeedb9ee
Adding qid in bolt ( #721 )
2023-01-18 16:33:03 +01:00