leveled_bookie:status/1#17
Conversation
* avg/best_compaction_score * level_files_count * penciller_inmem_cache_size
|
Marking as WIP pending work on the last item ("Mean level for recent fetches"). |
|
Can we add a test to the It would be good to verify that the results returned are as expected. Some may just need to be range checked, but you can get the PIDs of the Inker/Penciller via Obviously fails the coverage check at the moment as There are tests in basic_SUITE that prompt journal compaction, so you cna follow the pattern to check results are expected after a compaction. |
|
The PUT will call I do think it should try a number of operations, so that we can check all the values change to the right order of magnitude. There are a lot of load functions, or you can add a fetch and validation of the book status into one of the other tests. Also, what happened to reporting the journal compaction scores and results? |
|
One other thing to note, which came up in a thread about stats - is the I think it would be worth looking at the formatting of the output of this CLI command as part of this. There's an open issue from the basho days: basho/riak_kv#343 As we have the OTP json module available, perhaps we could fix this by just pretty-printing json, so that we don't end up coupling some presentation logic in the CLI to the format of the status output. |
|
I think you still need to increment on open_reader. I expected you needed an additional increment on cdb_roll, not to remove the open_reader counts. Otherwise, when a store is restarted, it will simply not count all the old cdb files it starts as read-only. Also, it will not count new files created by compaction. |
dd7eeff to
0bf6905
Compare
|
Some comments on some of the stats:
|
9aed1a6 to
b2915f5
Compare
|
I have
|
Gather journal last compaction stats and update in one call. Allows for scoring of all files (not just a sample). Ensure coverage of a status check on a snapshot bookie. Resolve eqwalizer issue with merge of a map with undefined (the level_files_count defaults to an empty map and so will be present and cannot be undefined)
| cast, cdb_roll, State = #state{last_position = LP} | ||
| ) when | ||
| ?IS_DEF(LP) | ||
| -> |
There was a problem hiding this comment.
When a CDB file is rolled - it should also +1 to the n_active_journal_files_update
Return a map of status information about the bookie (when the bookie is not a snapshot). The content of the status may change in future releases. --------- Co-authored-by: Andriy Zavada <andriy.zavada@tiot.jp> Co-authored-by: Martin Sumner <martin.sumner@adaptip.co.uk>
This implements martinsumner#478.
When called here, it returns a map containing reportable items described in the issue above.
Not all items can be available at the time of calling, in which case the backend_status will not include the corresponding keys.
In riak_control, the results will show as follows:

