Commit Graph

2454 Commits

Author SHA1 Message Date
Ante Pušić
e9aaf82985
Merge branch 'master' into text-search-integration-poc 2024-02-05 18:20:16 +01:00
Ante Pušić
a07d577bd5 Fix snapshot recovery 2024-02-05 12:19:53 +01:00
Ante Pušić
388eb91320 Fix SetPropertiesCursor and empty properties JSON 2024-02-05 12:02:03 +01:00
andrejtonev
7ead00f23e
Adding authentication data replication (#1666)
* Add AUTH system tx deltas
* Add auth data RPC and handlers
* Support multiple system deltas in a single transaction
* Added e2e test
* Bugfix: KVStore segfault after move

---------

Co-authored-by: Gareth Lloyd <gareth.lloyd@memgraph.io>
2024-02-05 10:37:00 +00:00
Ante Pušić
b0003ac08e Bump up snapshot & WAL file version 2024-02-05 10:01:13 +01:00
Ante Pušić
445eaaf82a Remove unused variables 2024-02-05 09:39:53 +01:00
Ante Pušić
4b46f1bb54 Add durability for text indices 2024-02-05 09:37:45 +01:00
Ante Pušić
ea64f2e906 Remove superfluous comment 2024-02-04 18:24:30 +01:00
Ante Pušić
c426f4a4a4 Add commit/rollback 2024-02-04 18:11:58 +01:00
Ante Pušić
a919429ea5 Add more error handling 2024-02-04 12:33:37 +01:00
Ante Pušić
9e0b857e25 Add error handling 2024-02-04 12:09:01 +01:00
Ante Pušić
ecbe385e58 Fix text search methods in accessors 2024-02-04 01:09:16 +01:00
Ante Pušić
2ac3d85735
Merge branch 'master' into text-search-integration-poc 2024-02-04 00:52:54 +01:00
Ante Pušić
d5d101e7dc Add text indices to storage info 2024-02-03 12:45:11 +01:00
Andi
cb7b88ad92
HA: Support restart of instances (#1672) 2024-02-01 11:55:48 +01:00
Andi
6ab4235cc9
Add NuRaft library (#1678) 2024-01-31 13:13:59 +01:00
Ante Pušić
cdf7b53aa7
Merge branch 'master' into text-search-integration-poc 2024-01-31 00:55:46 +01:00
Ante Pušić
a278ae1139 Apply interpreter code suggestion 2024-01-31 00:26:23 +01:00
Ante Pušić
be561bb5d6 Check whether text search is enabled, fix calls accordingly and set default values for the update_text_index parameter 2024-01-30 19:35:31 +01:00
Gareth Andrew Lloyd
97b1e67d80
Fix auth durability (#1644)
* Change auth durability to store hash algorithm
* Add Salt to SHA256
2024-01-30 18:17:05 +00:00
Ante Pušić
212ed5830f Remove superfluous comment 2024-01-30 16:14:26 +01:00
Ante Pušić
b04e40984d Add note for future work 2024-01-30 16:09:20 +01:00
Ante Pušić
59b83d003f Tidy up code 2024-01-30 11:18:17 +01:00
Ante Pušić
ff69a891d8 Fix syntax errors 2024-01-30 10:45:37 +01:00
Ante Pušić
857dbfb84e Add work on durability 2024-01-29 16:50:22 +01:00
Andi
78a88737f8
HA: Add automatic failover (#1646)
Co-authored-by: antoniofilipovic <filipovicantonio1998@gmail.com>
2024-01-29 15:34:00 +01:00
andrejtonev
ff44d68843
Simplify auth::Auth (#1663)
Moved various auth flags under a single config
Moved all regex logic under auth::Auth
2024-01-29 12:52:32 +00:00
Ante Pušić
3e7e0d896c Add text index information to DUMP DATABASE and make it extensible 2024-01-29 12:07:09 +01:00
Gareth Andrew Lloyd
9f7118d893
Performance tuning based on stress test (#1572)
Minor changes that speedup the large stress test.
Also now uses a stop token for a more productive shutdown. No need to wait for expensive GC runs.
2024-01-25 17:14:58 +00:00
Andi
38ade99652
HA: Add coordinator to replication cluster (#1608) 2024-01-24 13:07:51 +01:00
DavIvek
6706ebfa2b
Add support for query parameters in return limit (#1654) 2024-01-23 19:17:27 +01:00
Gareth Andrew Lloyd
e7f6a5f4f4
Fix SkipList iterators (#1635)
Fix SkipList iterators and find methods to be as expected by normal C++ iterator usage
2024-01-23 15:31:28 +00:00
Ante Pušić
55fd6dcc75 Optimize index creation 2024-01-23 12:21:29 +01:00
andrejtonev
071df2f439
Replication refactor part 7 (#1550)
* Split queries into system and data queries
* System queries are sequentially executed and generate separate transaction deltas
* System transaction try locks for 100ms
* last_commited_system_ts saved to DBMS durability
* Replicating CREATE/DROP DATABASE
* Sending a system snapshot if REPLICA behind
* Passing a copy of the gatekeeper::access as std::any to all functions that could call an async execution
* Removed delete_on_drop flag (we now always delete on drop)
* Using UUID as the directory name for databases
* DBMS durability update (added versioning and salient information)
* Automatic migration from previous version
* Interpreter can run some queries without a target database
* SHOW REPLICA returns the status of the currently active DB
* Returning UUID instead of db name in the RPC responses
* Using UUIDs for database specification in RPC (not name)
* FrequentCheck forces update on reconnect
* TimestampRpc will detect if a replica is behind, and will update client's state
* Safer SLK reads
* Split SHOW DATABASES in two SHOW DATABASES (list of current databases) and SHOW DATABASE a single string naming the current database

---------

Co-authored-by: Gareth Lloyd <gareth.lloyd@memgraph.io>
2024-01-23 12:06:10 +01:00
Gareth Andrew Lloyd
7f10636470
Bugfix don't use _Py_IsFinalizing (#1657)
This is an unstable function and would bump our dependency to python 3.7
2024-01-22 16:14:41 +00:00
Ante Pušić
2ef9d81a63 Add clarification 2024-01-22 10:28:01 +01:00
Ante Pušić
db3991db8f Support indexing a wider range of property types 2024-01-22 10:27:47 +01:00
Ante Pušić
5f2de50d28
Merge branch 'master' into text-search-integration-poc 2024-01-22 09:04:59 +01:00
Ante Pušić
c2824e3dc0 Add transaction IDs to Tantivy metadata 2024-01-22 09:04:21 +01:00
andrejtonev
9c89fce249
Bugfix: Shutdown blocks due to wrong execution order (#1649)
* Bugfix: Destorying settings before stopping license checker
* Bugfix: Python GC running while shutting down
2024-01-19 17:05:47 +00:00
Ante Pušić
7b77981796 Remove the mgcxx mock 2024-01-19 00:31:01 +01:00
Ante Pušić
e4e3044fce Remove extraneous comments and #includes 2024-01-19 00:30:15 +01:00
Ante Pušić
0571da7116 Add error handling attempt 2024-01-19 00:08:56 +01:00
Ante Pušić
64dcc2c60a Add missing calls for removing deleted nodes from text indices 2024-01-18 19:45:20 +01:00
Ante Pušić
e16c4a0208 Rename mgcxx namespace and fix Rust → C++ string handling 2024-01-18 17:38:33 +01:00
Ante Pušić
2df3b09019 Add more CRUD operations 2024-01-18 01:50:57 +01:00
Ante Pušić
88f8a0ae68 Add most of CRUD 2024-01-17 21:48:57 +01:00
Ante Pušić
605a425bb3
Merge branch 'master' into text-search-integration-poc 2024-01-16 16:26:45 +01:00
Ante Pušić
296d6eb4ff Add delete_document 2024-01-16 16:26:36 +01:00
Ante Pušić
60f8c3fc15 Add skeleton for indexed property update 2024-01-16 16:26:12 +01:00
Ante Pušić
0335030c93 Add text indices to SHOW INDEX INFO 2024-01-16 09:01:05 +01:00
Ante Pušić
dbd3835ba2 Remove comment 2024-01-16 07:58:32 +01:00
Ante Pušić
5c23e313e4 Add e2e search example 2024-01-16 00:35:46 +01:00
Ante Pušić
8f0250c265 Add index creation mappings 2024-01-15 20:29:35 +01:00
Ante Pušić
1d6fa4281d Integrate mgcxx into text search 2024-01-15 17:12:03 +01:00
Ante Pušić
0c3220839c Fix mgcxx API integration 2024-01-14 22:54:33 +01:00
Ante Pušić
6fb4eb6099 Separate text index header from implementation 2024-01-14 22:53:36 +01:00
Ivan Milinović
23dff58d22
Improve memory tracking (#1631) 2024-01-14 11:14:46 +01:00
Aidar Samerkhanov
c772cab766
ToString function now returns double values with precision 15 (#1576)
The DoubleToString function has been updated to handle higher precision doubles correctly. The unnecessary string length restriction has been removed, allowing the function to convert the full double value without prematurely truncating it. This change ensures that the string representation of doubles is more accurate, especially for very large or very small numbers. Unit tests have been added to verify the correct behavior for a range of double values.
2024-01-12 12:32:34 +04:00
Aidar Samerkhanov
2e4d27c59a
Add List Pattern Comprehension grammar. (#1588) 2024-01-11 18:20:21 +04:00
DavIvek
31f15b3651
Fix index hints (#1606) 2024-01-11 10:10:06 +01:00
DavIvek
b3d0c2ccc2
Add query parameters support for labels (#1602) 2024-01-10 15:08:21 +01:00
DavIvek
d4bcdb77ad
Fix using path identifier after CREATE (#1629) 2024-01-10 11:46:20 +01:00
Ante Pušić
9a3a9d33e3
Merge branch 'master' into text-search-integration-poc 2024-01-10 01:24:54 +01:00
Ante Pušić
ba581f58ef Extend text index operations 2024-01-10 01:23:28 +01:00
Ante Pušić
00275f5736 Implement the text search query module 2024-01-10 00:47:55 +01:00
Ante Pušić
bed5651716 Fix text search flag 2024-01-10 00:44:16 +01:00
Ante Pušić
753aebb895 Connect text search to its query module 2024-01-09 22:20:35 +01:00
Ante Pušić
6545a741b8 Add partial logic for external CRUD operations 2024-01-09 21:49:04 +01:00
Ante Pušić
b067ded578 Redo text index checking 2024-01-09 21:35:57 +01:00
Ante Pušić
3595a9c3b5 Move text index data CRUD to VertexAccessor 2024-01-09 21:09:38 +01:00
Ante Pušić
5fb9324239 Switch to text indices that are named 2024-01-09 20:46:30 +01:00
DavIvek
4bb9238679
Add support for triggers in database dump (#1610) 2024-01-09 13:05:54 +01:00
DavIvek
bd11266f82
Extend ToBoolean function (#1620) 2024-01-08 13:17:55 +01:00
Ante Pušić
ce718c4646
Merge branch 'master' into text-search-integration-poc 2024-01-08 01:58:33 +01:00
Ante Pušić
5d5981ffa1 Add proposal for text index checking and communication 2024-01-08 01:57:46 +01:00
Ante Pušić
2ec08f7da5 Add work on the search query procedure 2024-01-08 01:33:34 +01:00
Ante Pušić
584d86e774 Add text-search-enabled flag 2024-01-08 01:25:56 +01:00
Ante Pušić
5b22a7d3a4 Add text index existence checking and search 2024-01-08 00:36:13 +01:00
Ante Pušić
fe7e230e21 Add external storage checks to VertexAccessor 2024-01-08 00:35:05 +01:00
Gareth Andrew Lloyd
0fb8e4116f
Fix REPLICA timestamps (#1615)
* Fix up REPLICA GetInfo and CreateSnapshot

Subtle bug where these actions were using the incorrect transactional
access while in REPLICA role. This casued timestamp to be incorrectly
bumped, breaking REPLICA from doing replication.

* Delay DNS resolution

Rather than resolve at endpoint creation, we will instread resolve only
on Socket connect. This allows k8s deployments to change their IP during
pod restarts.

* Minor sonarsource fixes

---------
Co-authored-by: Andreja <andreja.tonev@memgraph.io>
Co-authored-by: DavIvek <david.ivekovic@memgraph.io>
2024-01-05 16:42:54 +00:00
Ante Pušić
ec35144265 Move the mock 2024-01-05 13:54:30 +01:00
Ante Pušić
102bf1df5e Fix minor errors 2024-01-05 13:32:45 +01:00
Ante Pušić
9d06d1b5db
Merge branch 'master' into text-search-integration-poc 2024-01-05 13:31:51 +01:00
Ante Pušić
6865616cae Make proof of concept for external storage 2024-01-05 02:14:14 +01:00
Ante Pušić
6c2b448fe9 Remove mock from PropertyStore 2024-01-05 00:19:40 +01:00
Ante Pušić
3737fac8f8 Add text index creation and deletion 2024-01-05 00:19:13 +01:00
Ante Pušić
a5d849b5e9 Add text index creation and deletion 2024-01-05 00:18:46 +01:00
Ante Pušić
63c9628cef Split the mock into its own file 2024-01-05 00:16:57 +01:00
Ante Pušić
e5f2ac36cc Add text index Cypher syntax 2024-01-05 00:15:47 +01:00
Ivan Milinović
7128e1cea8
Fix storage mode flag (#1609) 2024-01-04 20:48:34 +01:00
Ante Pušić
b4b5970ba6 Merge branch 'text-search-integration-poc' of https://github.com/memgraph/memgraph into text-search-integration-poc 2024-01-04 11:16:26 +01:00
Ante Pušić
56b86089a6 Add indexing draft 2024-01-04 10:32:54 +01:00
Ante Pušić
d4059a89aa Redo mock and PropertyStore 2024-01-04 10:32:08 +01:00
Ante Pušić
c3208b064b
Merge branch 'master' into text-search-integration-poc 2024-01-03 01:07:43 +01:00
Ivan Milinović
686fadf072
Fix slow python QM (Python GC changes) (#1558) 2023-12-27 11:51:10 +01:00
Ante Pušić
0baff463b1 Add docstring for Addocument 2023-12-22 15:18:28 +01:00
Ante Pušić
3d40976756 Add other API mehtods 2023-12-22 14:59:15 +01:00
Ante Pušić
510f2909ae Add functioning basic proof of concept 2023-12-22 14:42:12 +01:00
Andi
9e76021b94
Remove usage of RTLD_DEEPBIND and add PIC (#1554) 2023-12-22 09:16:06 +01:00