antonio2368
8cd9f696cf
Multiple isolation levels ( #171 )
...
This PR introduces READ COMMITTED and READ UNCOMMITTED isolation levels.
The isolation level can be set with a config or with a query for different scopes.
2021-06-14 15:47:57 +02:00
antonio2368
90a093bd95
Send py::Object as a reference to callback call ( #169 )
...
Sending the py::Object by value caused UB because multiple threads could copy the same object at the same time without the GIL.
By sending the object by reference we eliminate UB and avoid UB.
2021-06-10 10:40:18 +02:00
Josip Seljan
cd03e13443
Upgrade Antlr to v4.9.2 ( #161 )
2021-06-09 12:50:27 +02:00
Kostas Kyrimis
524acb17a1
Add global version allocators for C in query modules ( #162 )
2021-06-07 14:45:05 +02:00
antonio2368
560eb04f67
Small trigger fixes ( #158 )
...
* Fix warning message
* Update version
* Run query callbacks only on pull
* Use warn level for failure of loading a trigger
2021-05-26 19:57:08 +02:00
János Benjamin Antal
a3ecc52429
Use all available predefined variables ( #157 )
2021-05-26 14:37:11 +02:00
János Benjamin Antal
e8a1d15a55
Add filtering based on registered event types ( #155 )
...
* Add filtering to TriggerContextCollector
* Add all predefined variable to ANY triggers
* Make variable names consistent with event types
2021-05-26 14:37:11 +02:00
János Benjamin Antal
1abee1ed3a
Use single thread for after triggers ( #154 )
2021-05-26 14:36:41 +02:00
János Benjamin Antal
5af3d0ff68
Add e2e tests for triggers ( #152 )
2021-05-26 14:36:41 +02:00
antonio2368
62a628c51f
Add trigger queries and trigger store ( #145 )
...
Co-authored-by: Benjamin Antal <benjamin.antal@memgraph.io>
2021-05-26 14:36:41 +02:00
antonio2368
883f9c7ed3
Trigger event types ( #144 )
...
Co-authored-by: Benjamin Antal <benjamin.antal@memgraph.io>
2021-05-26 14:13:14 +02:00
antonio2368
b459639968
Other predefined variables ( #143 )
2021-05-26 14:13:14 +02:00
antonio2368
11c0dde11c
Support removed vertices in the triggers ( #140 )
2021-05-26 14:13:14 +02:00
antonio2368
2f3fa656d9
Predefined variables ( #138 )
...
* Add support for injecting predefined variables in any scope
2021-05-26 14:13:14 +02:00
antonio2368
7bf40eb5d2
Add support for after commit triggers ( #136 )
2021-05-26 14:13:14 +02:00
antonio2368
7e44434cdf
Initial trigger definition ( #133 )
...
* Pull out cypher query parsing logic
* Define trigger structure
* Run triggers before commit
* Use skip list for saving triggers
2021-05-26 14:13:14 +02:00
antonio2368
13ea35af2d
Fix permission for newer queries ( #156 )
2021-05-26 10:02:25 +02:00
antonio2368
999b3ef79f
Fix memory tracking issues ( #150 )
2021-05-18 18:42:19 +02:00
antonio2368
30413a7b4f
Ignore carriage return at the end of line for a CSV file ( #151 )
2021-05-18 13:44:29 +02:00
antonio2368
8de31092ad
Add back the query memory limit logic ( #134 )
2021-04-13 10:41:50 +02:00
János Benjamin Antal
6d4fe5cdd5
Explore and implement the usage of clang-tidy and sanitizers ( #125 )
...
* Run clang-tidy on the full code base
* Run clang-tidy on diffs
* Enable ASAN in coverage build
* Add UBSAN to code analysis
2021-04-01 17:08:40 +02:00
antonio2368
27f09e1c0a
Make LOAD CSV query part separator ( #130 )
2021-03-29 16:40:55 +02:00
Josip Seljan
6dd9d32721
Fix scoped profile operator names for ScanAll operators ( #129 )
2021-03-28 09:27:02 +02:00
antonio2368
276e09d7d3
Fix reading rows with empty columns at the end ( #127 )
...
* Fix reading rows with empty columns at the end
* Update CHANGELOG for the recovery logs
2021-03-27 09:47:41 +01:00
János Benjamin Antal
06f761bdf9
Add logs for loading snapshot and WAL files ( #121 )
...
* Add logs for loading snapshot and WAL files
2021-03-26 15:02:35 +01:00
antonio2368
50ddd59450
Fix Centos8 build ( #126 )
...
* Increase server wait
* Use standard shebang for python scripts
2021-03-26 12:05:58 +01:00
antonio2368
ad4c80af13
Add memory limit clause for cypher queries ( #106 )
...
* Add memory limit clause for cypher queries
* Add PROCEDURE and QUERY keywords
* Improve memory limit logs
* Update CHANGELOG
2021-03-24 15:21:11 +01:00
antonio2368
9c6bf4b1b8
Updated storage info ( #102 )
...
* Refactor readable size function
* Log set memory limit
* Add memory allocation info to storage
* Updated changelog
2021-03-24 15:10:28 +01:00
antonio2368
cc56ac3dd8
Expose query for cleaning memory and add memory limit flag ( #100 )
...
* Add memory flag, add additional meminfo utilities
* Add free memory query
2021-03-24 15:10:28 +01:00
antonio2368
dee885d69c
Add exception enablers and blockers ( #99 )
...
* Throw OOMException while creating vertices and edges
* Throw on indices creation
* Throw on setting a property
* Throw oom exception while recovering
* Throw exception when query engine asks for extra memory
* Block out of memor exception during skip list GC
2021-03-24 14:53:15 +01:00
antonio2368
bbed7a2397
Add memory tracker definition ( #93 )
...
* Allow size 0 in MemoryTracker
* Block only exception throwing
* Subtract unsuccessfully allocated size in memory tracker
* Add oom exception enablers and blockers
2021-03-24 14:53:15 +01:00
antonio2368
e8810a4152
Add and use jemalloc lib ( #90 )
...
* Add and use jemalloc lib
* Add autoconf
* Silence macro redefinition warning
2021-03-24 14:53:15 +01:00
Josip Seljan
25eb2c147a
LOAD CSV implementation fixes ( #120 )
...
* Change how csv::Reader handles memory resources
* Add multiline quoted string test
2021-03-24 12:21:07 +01:00
antonio2368
d913a67e16
Add parsing improvements ( #108 )
...
* Add parsing improvements
2021-03-24 12:21:07 +01:00
Josip Seljan
f950a91732
Add LOAD CSV clause infrastructure ( #101 )
...
* Add LOAD CSV clause infrastructure
* Add LoadCsv operator
* Update csv::Reader class
* Support csv files with and without header
Co-authored-by: jseljan <josip.seljan@memgraph.io>
2021-03-24 12:21:07 +01:00
Josip Seljan
f6d5f576d5
CSV reader class ( #98 )
...
* CSV parsing class
* Basic CSV parsing tests
2021-03-24 12:21:07 +01:00
antonio2368
dc5eb4befd
Fix module reload ( #114 )
...
* Fix module reload
2021-03-22 09:37:35 +01:00
antonio2368
593f7a3499
Add query module counters to telemetry ( #112 )
2021-03-18 11:03:42 +01:00
antonio2368
35d789c56b
Allow multiple folders for query modules ( #105 )
...
* Allow multiple query modules directories as arg
2021-03-10 12:18:09 +01:00
antonio2368
16715d5005
Enable replication in community ( #104 )
...
* Enable replication in community
2021-03-10 10:36:38 +01:00
antonio2368
a9f5f45b3d
Improve telemetry data ( #89 )
...
* Add query type count to telemetry
* Extract telemetry data in different structure
* Add global event counter
2021-03-09 19:55:58 +01:00
antonio2368
2e0dd19bac
Add machine-id to telemetry if not docker ( #103 )
...
* Add machine-id to telemetry if not docker
* Improve telemetry integration test
2021-03-08 15:15:58 +01:00
antonio2368
f807b495ab
Update commit log after recovery ( #96 )
...
* Define additional commit log constructor which takes an oldest active id
* Delay commit log construction until the recovery process is finished
* Add test for commit log with initial id
* Silence the macro redefinition warning
2021-02-19 11:00:10 +01:00
antonio2368
3f3c55a4aa
Format all the memgraph and test source files ( #97 )
2021-02-18 15:32:43 +01:00
Marko Budiselić
fae407d3fe
Add implementation of average number of equals estimate in SkipList ( #9 )
...
* Implement average number of equals estimate in SkipList
2021-02-10 14:38:54 +01:00
Marko Budiselić
90d4ebdb1e
Polish CI scripts ( #83 )
...
* Add Jepsen to the release workflow
* Increase the long-running stress timeout to 16 minutes
* Remove ha_client code
2021-01-26 18:57:23 +01:00
Josip Seljan
46b1783618
Forbid write queries on a replica ( #80 )
...
Co-authored-by: jseljan <josip.seljan@memgraph.io>
2021-01-25 09:13:32 +01:00
antonio2368
e866526c7a
Fix Centos build ( #79 )
...
* Don't run DocsHowToQuery.java on CentOS
Co-authored-by: Antonio Andelic <antonio.andelic@memgraph.com>
2021-01-24 08:17:21 +01:00
antonio2368
28413fd626
Change log library to spdlog, expose log levels to user ( #72 )
...
* Change from glog to spdlog
* Remove HA tests
* Remove logrotate log configuration
* Define custom main for unit gtests
2021-01-21 16:30:55 +01:00
antonio2368
c0bd59bb09
Fix recovery process ( #78 )
...
* Use correct last loaded timestamp for WAL
2021-01-21 15:56:21 +01:00