-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIP Tiot/openriak 3.4/tictacaae and nextgenrepl cli commands #55
base: openriak-3.4
Are you sure you want to change the base?
WIP Tiot/openriak 3.4/tictacaae and nextgenrepl cli commands #55
Conversation
For meck issue - OpenRiak/riak#22 |
As an aside on this, there is a dependency in Riak on Is there anything left within Riak that is active/working and uses There are some clique things registered within riak_core - https://github.com/OpenRiak/riak_core/blob/openriak-3.2/src/riak_core_cluster_cli.erl and https://github.com/OpenRiak/riak_core/blob/openriak-3.2/src/riak_core_handoff_cli.erl. I think these have now been replaced with commands run via the Should we be removing |
I misunderstood what was happening with clique in riak_core. Some of the riak_core CLI is using clique using the e.g. I've added a comment to the riak_core issue on long-term plans. |
One of the features of clique is:
Rather than have specific functions for setting certain config parameters - might there be a better general solution? There have been issues with confusion when setting run-time configuration using |
These are simple On the matter of whither to go with clique, I have no strong opinions. Apparently, the push behind clique while it was developed at Basho was to migrate all riak admin callbacks to it -- only to be abandoned midway. To me, still, clique is overengineering. As others have pointed out, argparse and getopt facilities already provide adequate set of functions authors of clique originally intended to implement. I would vote to continue to use it where it is already being used (and not here in riak_kv_console). |
@@ -31,7 +31,7 @@ | |||
]}. | |||
|
|||
{profiles, [ | |||
{test, [{deps, [meck]}]}, | |||
{test, [{deps, [{meck, {git, "https://github.com/OpenRiak/meck.git", {branch, "openriak-3.2"}}}]}]}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cloning your own version of meck seems to me the wrong way to go
* Tictac runtime management and reporting: riak admin tictacaae rebuild_schedule [-n NODE] [-p PARTITION] [RW RD] riak admin tictacaae storeheads [-n NODE] [-p PARTITION] [VALUE] riak admin tictacaae tokenbucket [-n NODE] [-p PARTITION] [VALUE] riak admin tictacaae rebuildtick|exchangetick|maxresults|rangeboost [-n NODE] [VAL] riak admin tictacaae rebuild-soon [-n NODE] [-p PARTITION] DELAY riak admin tictacaae rebuild-now [-n NODE] [-p PARTITION] DELAY riak admin tictacaae treestatus [--format table|json] [--show STATES] * AAE fold operations, dumping results in JSON format: riak tictacaae fold list-buckets NVAL riak tictacaae fold find-keys BUCKET KEY_RANGE MODIFIED_RANGE sibling_count=COUNT|object_size=BYTES riak tictacaae fold find-keys BUCKET KEY_RANGE MODIFIED_RANGE sibling_count=COUNT|object_size=BYTES riak tictacaae fold find|count-tombstones KEY_RANGE SEGMENTS MODIFIED_RANGE riak tictacaae fold reap-tombstones KEY_RANGE SEGMENTS MODIFIED_RANGE CHANGE_METHOD riak tictacaae fold object-stats BUCKET KEY_RANGE MODIFIED_RANGE riak tictacaae fold erase-keys BUCKET KEY_RANGE SEGMENTS MODIFIED_RANGE CHANGE_METHOD riak tictacaae fold repair-keys BUCKET KEY_RANGE MODIFIED_RANGE
Reworked much of it, now threading parameters AAE fold operations ( Comments are welcome but not really requested as it is still WIP. I will complement it with proper test in riak_test, too. |
This PR implements "Tictac runtime management and reporting" section of the TicTac AAE and NextGenRepl CLI commands proposal.
The
riak_kv_console:titacaae_cmd/1
functions will be exposed asriak admin tictacaae CMD
.The commands from
rebuildwait
toaaefoldworkers
are simple get/show commands, reading and setting the corresponding app env vars in the riak_kv app, on local node by default or on other node if specified with-n
option.rebuild-soon
will schedule a tree rebuild, andrebuild-now
, will additionally send a poke to controller(s) associated with partitions or nodes as specified with options-n and -p
.Depends on this PR in kv_index_tictactree.