Commit Graph

54 Commits

Author SHA1 Message Date
Ulf Wiger 302aa1252b Merge pull request #26 from aeternity/uw-fix-db-migration
Migration chunk handling was broken. Add progress reporting support
2.0.1
2022-07-13 12:50:38 +02:00
Ulf Wiger fde2e1194e Fix type to satisfy Dialyzer 2022-07-13 11:35:40 +02:00
Ulf Wiger c4f7b7ac02 Migration chunk handling was broken. Add progress reporting support 2022-07-13 11:19:47 +02:00
Ulf Wiger 226a3b8e91 Merge pull request #25 from shahryarjb/patch-1
Add Erlang flag for README block code
2022-07-11 16:15:13 +02:00
Shahryar Tavakkoli 73784fe765 Add Erlang flag for README block code 2022-07-11 18:35:45 +04:30
Ulf Wiger 7fa3c2a58d Merge pull request #24 from aeternity/uw-fix-appsrc
Make app.src vsn tag automatic
2.0.0
2022-07-11 14:45:19 +02:00
Ulf Wiger b236fe8b4b Make app.src vsn tag automatic 2022-07-11 14:10:08 +02:00
Ulf Wiger b0bf4b6b9c Merge pull request #22 from aeternity/gh3553-refactor-plugin-final
Refactor to support column families, direct rocksdb access
2022-07-11 13:53:49 +02:00
Ulf Wiger 93a296f6b9 Debugging direct access API 2022-07-08 11:23:12 +02:00
Ulf Wiger 0da3169a01 Fix typo in mrdb.erl 2022-06-29 12:44:55 +02:00
Ulf Wiger e351a02175 Fix batch- and tx-handling refs, formatting annot 2022-06-29 12:19:29 +02:00
Ulf Wiger b70654d0a2 Default to accessing data via the table owner process 2022-04-13 14:24:53 +02:00
Ulf Wiger 0830cecbf9 Add test/mrdb_bench.erl, remove some debug logging 2022-04-07 18:48:24 +02:00
Ulf Wiger 2339232f59 Fix table load bug, fail properly on mnesia-ordered updates 2022-04-06 14:52:58 +02:00
Ulf Wiger d5dafb5b7e Refactor to support column families, direct rocksdb access
Expose low-level helpers, fix dialyzer warnings

WIP column families and mrdb API

Basic functionality in place

started adding documentation

remove doc/ from .gitignore

add doc/* files

recognize pre-existing tabs at startup

wip: most of the functionality in place (not yet merge ops)

wip: adding transaction support

wip: add transaction test case (currently dumps core)

First draft, mnesia plugin user guide

Fix note formatting

WIP working on indexing

Index iterators, dialyzer, xref fixes

open db with optimistic transactions

Use rocksdb-1.7.0

Use seanhinde rocksdb patch, enable rollback

Call the right transaction_get() function

WIP add 'snap_tx' activity type

tx restart using mrdb_mutex

Fix test suite sync bugs

WIP instrumented for debugging

WIP working on migration test case

Add migration test suite

Migration works, subscribe to schema changes

WIP fix batch handling

Manage separate batches per db_ref

Add mrdb:fold/3

Add some docs, erlang_ls config

Use seanhinde's rocksdb vsn
2022-03-25 15:48:19 +01:00
seanhinde c0ce3afe39 Merge pull request #20 from aeternity/new-rocksdb-m1-compatible
Update to rocksdb-1.7.0 which has arm m1 support
2021-11-26 10:15:22 +01:00
Ulf Wiger c1d949b47e Merge pull request #6 from arpunk/include-sext
Include sext as dependency
2021-11-17 15:05:59 +01:00
Sean Hinde e835a611d1 Update to rocksdb-1.7.0 which has arm m1 support 2021-11-16 14:57:03 +01:00
Ulf Wiger 66e5a51634 Merge pull request #17 from aeternity/gh3407-expose-helpers
Expose low-level helpers, fix dialyzer warnings
2020-12-22 14:57:02 +01:00
Ulf Wiger 79d6467d26 Expose low-level helpers, fix dialyzer warnings 2020-12-22 10:36:24 +01:00
Ulf Wiger 32b3cd11e1 Merge pull request #16 from aeternity/uw-use-rocksdb-1.6.0
WIP update deps, fix try-catch warning, for rocksdb 1.6.0
2020-10-23 16:01:46 +02:00
Dincho Todorov 47435acc00 Fix wrong rocksdb buildopts 2020-10-23 15:47:29 +03:00
Dincho Todorov dfd20b622b Set cmake paralelism 2020-10-23 15:45:31 +03:00
Dincho Todorov d33d26277e Use medium+ CI executor 2020-10-23 12:42:07 +03:00
Ulf Wiger 2b96f189fd Ensure compression (lz4) support when building from src 2020-10-19 11:26:49 +02:00
Ulf Wiger 35c79aaa32 WIP update deps, fix try-catch warning, for rocksdb 1.6.0 2020-10-19 10:46:02 +02:00
Tino Breddin 8d3079ff25 Merge pull request #15 from aeternity/tb-add-error-store
Add caller error store to error handling
2019-11-21 14:37:32 +01:00
Tino Breddin 15b9965f46 Fix documentation typos
Co-Authored-By: Ulf Wiger <ulf@wiger.net>
2019-11-21 14:29:43 +01:00
Tino Breddin 3054232233 Fix typo
Co-Authored-By: Hans Svensson <hanssv@gmail.com>
2019-11-21 09:00:43 +01:00
Tino Breddin 1cb3d8ddc0 Add documentation 2019-11-18 16:55:13 +01:00
Tino Breddin 984d12479d Add test for error store support 2019-11-18 16:43:08 +01:00
Tino Breddin 0fab952f5d Upgrade rebar3 to v3.12.0 2019-11-18 16:42:40 +01:00
Tino Breddin a2f863804d Formatting improvements 2019-11-15 16:31:09 +01:00
Tino Breddin 63bae181e3 Add caller error store to error handling
During initialization of the backend the caller may provide a new
configuration to define a target ETS table for storing errors which the
backend encountered at runtime. These errors are written during handling
of write errors.
2019-11-15 16:28:39 +01:00
Ulf Wiger 49ff8bcca0 Merge pull request #13 from aeternity/GH12-check-return-values
Check return values on update operations.
2019-11-04 13:54:11 +01:00
Ivaylo Papazov 7c461b7e34 Add CI configuration (#14) 2019-10-07 09:42:30 +03:00
Ulf Wiger 6f41733461 Add tests for error handling
Document reason for breaking out update functions
2019-09-30 14:02:35 +02:00
Ulf Wiger f93c1aba93 fix on_write_error options 2019-09-24 16:10:13 +02:00
Ulf Wiger c8da9ce31b Check return values on update operations.
- put(), write() and delete() wrapped, checking for non-ok returns
- Option {on_write_error, verbose | warning | error | fatal}
  added to the rocksdb_opts user property. The corresponding function
  mnesia_lib:Op(Fmt, Args) will be called if an error return is spotted.
2019-09-24 15:45:07 +02:00
Thomas Arts ad8e7b63ca Merge pull request #11 from aeternity/hs-bump-rocksdb
Bump RocksDB version
2018-11-13 16:42:17 +01:00
Thomas Arts ea6f5f48f6 Upgrade to version 0.24.0 2018-11-12 13:23:36 +01:00
Hans Svensson a6925ffdc1 Bump rocksdb to 0.18.0 2018-05-24 15:05:40 +02:00
arpunk 8662ba331a include sext as dependency 2018-04-02 09:50:49 -05:00
Luca Favatella 618870f484 Merge pull request #5 from aeternity/uw-no_keys_only_iterator
use only normal iterator function
2018-03-07 17:33:31 +00:00
Ulf Wiger dd23a80e27 use only normal iterator function 2018-03-06 22:11:41 +01:00
Ulf Wiger 43b861215a Merge pull request #4 from aeternity/uw-shortest-prefix-on-select
On select, mnesia_rocksdb would only calculate a key prefix for the
2018-02-16 19:52:52 +01:00
Ulf Wiger 0345e3558b On select, mnesia_rocksdb would only calculate a key prefix for the
first select clause in a multi-clause select pattern. This could give
erroneous results if the first pattern was more specific (on the key)
than following patterns. This change calculates a prefix for all clauses
and keeps the shortest common prefix.
2018-02-16 18:43:59 +01:00
Ulf Wiger ff823c4ee1 Merge pull request #3 from aeternity/uw-more-renaming
More renaming, ldb -> rdb
2018-02-06 20:05:42 +01:00
Ulf Wiger af4c6e8fd2 More renaming, ldb -> rdb 2018-02-06 20:03:01 +01:00
Ulf Wiger d326daf251 Merge pull request #2 from aeternity/uw-use-official-sext
Use official sext instead of copy
2018-02-06 14:32:52 +01:00