Commit Graph

281 Commits

Author SHA1 Message Date
Matija Pintarić
97ed912ab6
Implement map key exists in mgp () 2023-10-23 15:29:41 +02:00
imilinovic
404cdf05d3
Add path pop to mgp API () 2023-09-19 12:37:55 +02:00
imilinovic
9c51dbbb01
Implement changing from and to vertices in relationships () 2023-09-08 12:52:40 +02:00
ind1xa
c0d4f5e0bc
Add traits under mgp iterator () 2023-09-08 08:57:37 +02:00
Antonio Filipovic
974a6e3027
Fix bug on mgp dispatcher guard () 2023-09-07 17:42:27 +02:00
Matija Pintarić
d9464c6ffd
Add InDegree and OutDegree in O(1) () 2023-09-07 13:16:30 +02:00
Josipmrden
02eab6ab9c
Set properties C API extension ()
Add SetProperties into the C++ query module API
2023-09-04 16:17:43 +02:00
Matija Pintarić
d516e40841
Add ToString on C++ API mgp types() 2023-08-29 17:30:23 +02:00
imilinovic
a426ef9cc3
Add Relationship::RemoveProperty to C++ query module API () 2023-08-24 12:14:00 +02:00
gvolfing
476968e2c8
Fix concurrent query module race condition ()
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
Matija Pintarić
514fed51c4
Add implementation of C++ API Node::RemoveProperty () 2023-08-01 20:11:38 +02:00
imilinovic
2877c343e8
Add implementation of << operator for mgp::Value () 2023-08-01 19:30:23 +02:00
ind1xa
50a1d1abb3
Add remove label to the query modules C API () 2023-08-01 19:24:11 +02:00
Marko Budiselić
c501f59a09
Add more info to the query module error messages () 2023-08-01 00:05:44 +02:00
Gareth Andrew Lloyd
8ebab84324
Add handling of partial results on timeout () 2023-07-30 10:48:11 +02:00
imilinovic
3fd9ce4a33
Add mgp::map erase and update () 2023-07-30 08:36:50 +02:00
Matija Pintarić
2b7707a2f1
Add non-const return value for mgp::Value subtypes () 2023-07-28 12:26:10 +02:00
Matija Pintarić
76ca019f31
Add overload of operator< for mgp::Value () 2023-07-28 11:35:14 +02:00
imilinovic
609b9a20f1
Add hash on mgp::Value () 2023-07-28 09:08:36 +02:00
Matija Pintarić
e489e4f3e7
Extend insert on Record to accept mgp::Value () 2023-07-27 10:33:32 +02:00
Matija Pintarić
ab4d1efe0b
Overload << operator for mgp::Value::Type () 2023-07-25 13:30:02 +02:00
Marko Budiselić
9d056e7649
Add experimental/v1 of ON_DISK_TRANSACTIONAL storage ()
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
5ce1526995
Fix map at operator returning null from a map ()
Fix map returning null from a map and not throwing exception if key is not present
2023-06-27 15:04:12 +02:00
Antonio Filipovic
cb843ee664
Fix multiple include error on mgp.hpp () 2023-06-27 10:07:33 +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
Josipmrden
eb22edfd35
Add any type to C++ mgp wrapper 2023-06-20 09:33:14 +02:00
Andi
029be10f1d
Add queries to show or terminate active transactions () 2023-03-27 15:46:00 +02:00
Ante Pušić
97d45ab1d8
Add Python query module API mock () 2023-03-07 15:41:19 +01:00
Ante Pušić
aad4bcb7a0
Fix C++ API memory leak on Relationships() () 2023-01-25 17:23:46 +01:00
Antonio Filipovic
1cd1da84fd
Fix bug on (vertex|edge) properties in C++ API () 2023-01-23 12:57:17 +01:00
Ante Javor
d72e7fa38d
Fix mgp.py create edge type hint and comment () 2022-12-23 10:08:52 +01:00
Ante Pušić
45451bae3b
Fix C++ query modules API bugs () 2022-12-06 16:57:50 +01:00
Boris Taševski
a0b8871b36
Fix cland tidy errors and other warning () 2022-09-15 15:51:35 +02:00
Marko Budiselic
bb6cf35441 Merge master cpp module API 2022-09-15 11:29:52 +02:00
Ante Pušić
5bc301d21d
Add C++ query modules API ()
Co-authored-by: Ante Pusic <ante.pusic@memgraph.com>
Co-authored-by: Josip Mrden <josip.mrden@memgraph.com>
2022-09-15 11:26:26 +02:00
Boris Taševski
c09b175c76
[E129-MG < T1006-MG] Expand C API with LBA checks ()
* [T1006-MG < T1017-MG] Add LBA checks to all read procedures in C API ()

* Initial Impl

* NextPermittedEdge introduced

* revert moving constructor to cpp

* edge from and edge to methods expanded with lba check

* minor fix

* added check to path expand procedure

* Added integration tests for read query procedures

* additional check

* changed iterator type to reference

* comments from pr

Co-authored-by: Josip Mrden <josip.mrden@memgraph.io>

* [T1006-MG < T1018-MG] Add LBA checks to all update procedures in C API ()

* Initial Impl

* NextPermittedEdge introduced

* revert moving constructor to cpp

* edge from and edge to methods expanded with lba check

* minor fix

* extended update methods

* added check to path expand procedure

* Added integration tests for read query procedures

* Added integration tests for update query modules

* additional check

* changed iterator type to reference

* fixed bug in Update property for node; fixed 2 e2e tests

* replaced enum

Co-authored-by: Josip Mrden <josip.mrden@memgraph.io>

* [T1006-MG < T1019-MG] Add LBA checks to all Create and Delete procedures in C API ()

* Initial Impl

* NextPermittedEdge introduced

* revert moving constructor to cpp

* edge from and edge to methods expanded with lba check

* minor fix

* extended update methods

* initial implementation

* added check to path expand procedure

* Added integration tests for read query procedures

* Added integration tests for update query modules

* Added unit tests for creation of vertex, adding and removing vertex label

* additional check

* changed iterator type to reference

* Added unit tests for create edge

* Corrected query module in create edge

* fixed bug in Update property for node; fixed 2 e2e tests

* fixed merge errors

* Expanded FineGrainedAuthChecker with HasGlobalPermissionOnVertices and HasGlobalPermissionOnEdges

* Removed two wrong checks; Added two global checks

* return null added

* introduced new mgp_error value

* fixed endless loop

* replaced enum

* intermediate

* tests updated

* PermissionDeniedError -> AuthorizationError rename

* rename in enum permission_denied error -> authorization error

* mgp_vertex_remove_label check improved

* quotes changed; order of imports fixed

* string constant introduced

* import fixed

* yaml format

Co-authored-by: Josip Mrden <josip.mrden@memgraph.io>

Co-authored-by: Josip Mrden <josip.mrden@memgraph.io>
2022-09-08 17:48:34 +02:00
antoniofilipovic
d73d153978
Add logging API () 2022-08-22 14:47:52 +03:00
János Benjamin Antal
05b00edfd4
Declare mgp_func_context outside the callback function () 2022-08-03 15:15:53 +02:00
Jure Bajic
3dd2657320
Create mgp python package () 2022-07-12 10:54:23 +02:00
Ante Javor
86b1688192
Rewrite Python API comments and snippets ()
* Update comments
2022-07-07 15:05:56 +02:00
János Benjamin Antal
8059a3e653
Improve magic functions docs ()
* Improve documentation of magic functions

* Improve wording for decorators
2022-05-17 15:33:28 +02:00
Jeremy B
10ea9c773e
Making mgp_error enum class when compiling c++. Remains enum when com… ()
* Making mgp_error enum class when compiling c++. Remains enum when compiling c.
2022-05-05 17:48:17 +02:00
Josip Matak
4abaf27765
Memgraph magic functions ()
* Extend mgp_module with include adding functions

* Add return type to the function API

* Change Cypher grammar

* Add Python support for functions

* Implement error handling

* E2e tests for functions

* Write cpp e2e functions

* Create mg.functions() procedure

* Implement case insensitivity for user-defined Magic Functions.
2022-04-21 15:45:31 +02:00
Antonio Andelic
12f4e0068a Small polishing and fixes 2021-11-16 17:23:20 +01:00
Antonio Andelic
e8976e0f1c Update mgp API for Pulsar () 2021-11-16 16:00:25 +01:00
Kostas Kyrimis
47c0c629c7
Add procedure for setting a kafka stream offset () 2021-11-11 12:07:58 +01:00
Antonio Andelic
e9a937ad6d
Update license headers and change date () 2021-10-13 10:06:07 +02:00
Jure Bajic
9e678f8cbe Add new memgraph licenses and move third party licenses () 2021-10-03 12:26:48 +02:00
antonio2368
69e4f1784b
Small polishing for Release workflow () 2021-10-03 11:09:57 +02:00
antonio2368
0a23eb11ae Define procedure API for temporal types () 2021-10-02 15:30:34 +02:00