leveled/rebar.config
Martin Sumner 3d3d284805
Mas p401 coverage (#404)
* refactor leveled_sst from gen_fsm to gen_statem

* format_status/2 takes State and State Data
but this function is deprecated... put in for backward compatibility

* refactor leveled_cdb from gen_fsm to gen_statem

* disable irrelevant warning ignorer

* Remove unnecessary code paths

Only support messages, especially info messages, where they are possible.

* Mas i1820 offlinedeserialisation cbo (#403)

* Log report GC Info by manifest level

* Hibernate on range query

If Block Index Cache is not full, and we're not yielding

* Spawn to deserialise blocks offline

Hypothesis is that the growth in the heap necessary due to continual term_to_binary calls to deserialise blocks is wasting memory - so do this memory-intensive task in a short-lived process.

* Start with hibernate_after option

* Always build BIC

Testing indicates that the BIC itself is not a primary memory issue - the primary issue is due to a lack of garbage collection and a growing heap.

This change enhances the patch to offline serialisation so that:
- get_sqn & get_kv are standardised to build the BIC, and hibernate when it is built.
- the offline PId is linked to crash this process on failure (as would happen now).

* Standardise spawning for check_block/3

Now deserialise in both parts of the code.

* Only spawn for check_block if cache not full

* Update following review

* Standardise formatting

Make test more reliable.  Show no new compaction after third compaction.

* Update comments

---------

Co-authored-by: Thomas Arts <thomas.arts@quviq.com>
2023-03-13 11:46:08 +00:00

31 lines
788 B
Erlang

{minimum_otp_vsn, "22.0"}.
{erl_opts,
[warnings_as_errors,
{platform_define, "^2[2-5]{1}", if_check}]}.
{xref_checks, [undefined_function_calls,undefined_functions]}.
{cover_excl_mods,
[testutil,
appdefined_SUITE, basic_SUITE, iterator_SUITE,
perf_SUITE, recovery_SUITE, riak_SUITE, tictac_SUITE]}.
{eunit_opts, [verbose]}.
{profiles,
[{eqc, [{deps, [meck, fqc]},
{erl_opts, [debug_info, {d, 'EQC'}]},
{extra_src_dirs, ["test/property", "test/end_to_end"]},
{shell, [{apps, [lz4]}]},
{plugins, [rebar_eqc]}
]},
{test, [{extra_src_dirs, ["test/end_to_end", "test/property"]}
]}
]}.
{deps, [
{lz4, ".*", {git, "https://github.com/martinsumner/erlang-lz4", {tag, "0.2.5"}}}
]}.
{ct_opts, [{dir, ["test/end_to_end"]}]}.