Skip to content

Use erl format#129

Merged
martinsumner merged 2 commits intodevelop-3.4from
mas-d34-kvit.i128-reformat
Jul 21, 2025
Merged

Use erl format#129
martinsumner merged 2 commits intodevelop-3.4from
mas-d34-kvit.i128-reformat

Conversation

@martinsumner
Copy link
Copy Markdown
Owner

Switch to using WhatsApp erlfmt, and apply format

Copy link
Copy Markdown
Contributor

@ThomasArts ThomasArts left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice with a PR that only touches formatting.

Quickly browsed through code, trust that only formatting has been perfomed

@martinsumner martinsumner merged commit d2fc905 into develop-3.4 Jul 21, 2025
2 checks passed
@martinsumner martinsumner deleted the mas-d34-kvit.i128-reformat branch July 21, 2025 11:08
martinsumner added a commit to OpenRiak/kv_index_tictactree that referenced this pull request Jul 21, 2025
* Use erl format

* Add format check to GHA
martinsumner added a commit to OpenRiak/kv_index_tictactree that referenced this pull request Jul 25, 2025
* Use erl format (martinsumner#129)

* Use erl format

* Add format check to GHA

* Fix eqwalizer errors (martinsumner#130)

* Use erl format

* Fix eqwalizer errors

Specific ignores used in some cases

* Fix eqwalizer errors

Specific ignores used in some cases

* Allow for lack of dynamic() support pre OTP 26

* Mas d34 orkv.i42 cache filter (martinsumner#132)

* Add basic support for key_filter

Allow for key_filter to exclude keys from exchanges and tree caches.

the filter is applied in three places in the controller:
- when calling aae_put;
- when calling rebuild trees;
- when claling fetch_clocks (Specifically for the tree cache updates)

For th e exchange the filter is applied before compare_clocks.  It is assumed that results from folds include filtered keys, and they are then filtered before comparison.  This allows for exchanges without a filter (e.g. when doing an exchange for the specific bucket)

* Initial test using mock vnode

* Provide a pretty-printed count of buckets - before comparison

Helpful when troubleshooting

* Extend the testing of Bucket filters

* Add new option to type

* Change name of key_filter_fun() type

Should be key_include_fun() to make it explicit that the key is included if response is true.

* Update README for OpenRiak

* Refer to 3.4 not 3.2

* Update meck reference - so can eqc test in OTP 24
martinsumner added a commit to OpenRiak/kv_index_tictactree that referenced this pull request Sep 11, 2025
* Handle VCs that hash to 0 (martinsumner#123) (martinsumner#124)

* Handle VCs that hash to 0

Because of a mistake (perhaps because phash/1 hashed to a range starting at 1, and phash2/1 now starts at 0) - special meaning was attributed to a hash of 0, which would means that updating hashtrees would not be handled correctly if the actual clock had a hash collision with 0.

Special meaning now uses `none` not 0 - and 0 is handled as with any other hash value.

* Add support for CH, OH of none, none

Used in rehash in riak_kv_vnode - expected to be a neutral change i.e. CH, CH

* Update comment

* Clarify comments/types

* Update GHA and workflow

* Update erlang.yml

* aae_progress_report and other functions needed for Tictac AAE CLI treestatus subcommand (#4)

* aae_schedulenextrebuild/2

* get/setters of various state fields needed for riak admin tictacaae

* touch object_splitfun directly for purposes of get/setting storeheads

this, to avoid introducing dependency on riak_kv, where
riak_object:aae_from_object_binary/1 lives, which actually creates the
object_splitfun function.

* ct test for get/set_rebuild_schedule

* ct for get/set_storeheads

* uncomment, unbreak other tests in basic_SUITE

* remove extra, redundant steps in get_set_storeheads

* avoid exposing internal pids, do produce_aae_progress_report on site

* more expressive function names for aae progress report work

* aae_schedulenextrebuild/2 better named aae_prompt_nextrebuild

* avoid passing entire state record for funs that only need some fields

* prompt_nextrebuild done right, with a test

* callers of produce_report should assume key_store is always a good pid

* splitfun get/set ct test

---------

Co-authored-by: Andriy Zavada <andriy.zavada@tiot.jp>

* Add ties to the set of selections to use (martinsumner#127)

Will randomly select from the top MaxResults set of ID clusters, and any tied with the sparsest set within the MaxResults.

This means when there is a contiguous set of IDs (e.g. when doing root_confirm with a fully broken root), any set of IDs will be chosen, not just sets within the first MaxResults.  This ensures a better spread of selections across the tree, so that the mismatched_segments will more accurately reflect the overall state of the tree

* Use erl format (martinsumner#129)

* Use erl format

* Add format check to GHA

* Fix eqwalizer errors (martinsumner#130)

* Use erl format

* Fix eqwalizer errors

Specific ignores used in some cases

* Fix eqwalizer errors

Specific ignores used in some cases

* Allow for lack of dynamic() support pre OTP 26

* Mas d34 orkv.i42 cache filter (martinsumner#132)

* Add basic support for key_filter

Allow for key_filter to exclude keys from exchanges and tree caches.

the filter is applied in three places in the controller:
- when calling aae_put;
- when calling rebuild trees;
- when claling fetch_clocks (Specifically for the tree cache updates)

For th e exchange the filter is applied before compare_clocks.  It is assumed that results from folds include filtered keys, and they are then filtered before comparison.  This allows for exchanges without a filter (e.g. when doing an exchange for the specific bucket)

* Initial test using mock vnode

* Provide a pretty-printed count of buckets - before comparison

Helpful when troubleshooting

* Extend the testing of Bucket filters

* Add new option to type

* Change name of key_filter_fun() type

Should be key_include_fun() to make it explicit that the key is included if response is true.

* Use erl format (martinsumner#129)

* Use erl format

* Add format check to GHA

* Fix eqwalizer errors (martinsumner#130)

* Use erl format

* Fix eqwalizer errors

Specific ignores used in some cases

* Fix eqwalizer errors

Specific ignores used in some cases

* Allow for lack of dynamic() support pre OTP 26

* Mas d34 orkv.i42 cache filter (martinsumner#132)

* Add basic support for key_filter

Allow for key_filter to exclude keys from exchanges and tree caches.

the filter is applied in three places in the controller:
- when calling aae_put;
- when calling rebuild trees;
- when claling fetch_clocks (Specifically for the tree cache updates)

For th e exchange the filter is applied before compare_clocks.  It is assumed that results from folds include filtered keys, and they are then filtered before comparison.  This allows for exchanges without a filter (e.g. when doing an exchange for the specific bucket)

* Initial test using mock vnode

* Provide a pretty-printed count of buckets - before comparison

Helpful when troubleshooting

* Extend the testing of Bucket filters

* Add new option to type

* Change name of key_filter_fun() type

Should be key_include_fun() to make it explicit that the key is included if response is true.

* Update README for OpenRiak

* Refer to 3.4 not 3.2

* Update meck reference - so can eqc test in OTP 24

* Merge issue reinstated unused store_last_rebuild/1

---------

Co-authored-by: Andriy Zavada <johnhommer@gmail.com>
Co-authored-by: Andriy Zavada <andriy.zavada@tiot.jp>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants