Make special structure for old_disk_key. std::optional<std::string> was
40B, which is the largest member of out action union. Replaced with 8B,
structure.
This makes largest member now vertex_edge at 24B, this means Delta is
now only 56B.
🥳🎉 Now less than a cacheline 🎊✨
- Only IN_MEMORY_ANALYTICAL requires unique lock during snapshot
- GC in some cases will be provide with unique lock
- This fact can be used for optimisations
- In all other cases, optimisations should be done with alternative
check. Not via getting a unique lock
Also:
- Faster property lookup
- Faster index iteration (better conditional branching)
* Increase ARM build timeout to 120 minutes
* Remove PushToS3 job and make each Package job push to S3 individually
* Expand ARM timeout to 150 minutes for added safety; revert this after release
- Remove the e2e that did concurrent mgp_* calls on the same transaction
(ATM this is unsupported)
- Fix up the concurrent mgp_global_alloc test to be testing it more precisely
- Reduce the memory limit on detach delete test due to recent memory
optimizations around deltas.
- No longer throw from hook, through jemalloc C, to our C++ on other
side. This cause mutex unlocks to not happen.
- No longer allocate error messages while inside the hook. This caused
recursive entry back inside jamalloc which would try to relock a
non-recursive mutex.
* 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>
* upgrade actions/checkout from v3 to v4
* upgrade actions/upload-artifact from v3 to v4
* upgrade actions/download-artifact from v2 and v3 to v4
* Fix duplicate artifact names in diff.yaml
* Fix duplicate artifact names in release_debian10.yaml and release_ubuntu2004.yaml
* Move stress test large to a separate workflow
* Combine Debian10 and Ubuntu20.04 stress tests into one workflow
* Remove BigMemory tag from release_debian10
* Move e2e tests to a separate job
* Move debug interation tests to a separate job
* Move release durability and stress tests to a separate job
* Move release benchamarks to separate job
* Add 90 min timeout restriction to all jobs
* Move env variables to workflow level
* Move BUILD_TYPE env var to workflow level
---------
Co-authored-by: Aidar Samerkhanov <aidar.samerkhanov@memgraph.io>