Skip to content
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

L(-2) Config / Command-line work #660

Open
wants to merge 37 commits into
base: develop
Choose a base branch
from

Conversation

seancribbs
Copy link

This implements cuttlefish schemas and new command-line interface based on clique.

See RIAK-1425 and RIAK-1125.

NB: Currently incomplete, but reopening the rebased version of #622.

CV/BH/SC and others added 30 commits February 28, 2015 09:57
* `standard_error` group leader cannot be used because it is not
  forwarded to the RPC caller.
* Fix newlines around top-level usage and V2 warnings
These settings were extracted from the replication code, but have not
been vetted or necessarily named properly. Many of them are slated to be
removed or changed for future versions of riak_repl. To promote a
setting to the main schema, one should write documentation and tests to
cover the setting.
seancribbs added a commit to basho/clique that referenced this pull request Mar 11, 2015
This was missed when the function form of usage was created, resulting
in the 'clique' module having a narrower spec than the 'clique_usage'
module. Prompted by basho/riak_repl#660.
* Register the CLI commands on app startup
* Ensure the v2 usage information is registered
* Wrap/rewrite "modes" usage
* Log the command input and upgrade information to debug before
  executing
* Normalize some output locations to avoid clique output function_clause
  errors
* Return 'nomatch' on the empty command in v2 dispatch
* Separate 'clustername' commands into 'show' and 'set' for consistency.
* Basic cuttlefish datatypes don't allow "lists", this is a feature of
  cuttlefish_generator. Restricted the broken types and added TODO.
* Corrected a lot of usage strings.
* Fixed command upgrades that were poorly matching.
* Fixed reversed logic in nat-map add|delete upgrade.
* In cases where there was some potentially empty output (e.g. clusters,
  connections, realtime|fullsync start), pattern-matched the empty list
  so we can output informative text instead of nothing.
* Fixed table-headers on connections and nat-map show.
* Fixed some case_clause errors resulting from calls to ring_trans.
* Used clique:print instead of io:format in callback that sets fullsync
  limit configs.
{datatype, {enum, [true, false]}},
{default, true}
%% @doc Whether to initiate a fullsync on initial connection from a
%% sink cluster.
Copy link
Contributor

Choose a reason for hiding this comment

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

Wouldn't this be "from a source cluster"?

Copy link
Author

Choose a reason for hiding this comment

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

I am not sure. Do sinks connect to sources or the other way around?

Copy link
Contributor

Choose a reason for hiding this comment

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

Sources open the tcp socket to listening sinks.

@lordnull
Copy link
Contributor

Running the associated riak_test (basho/riak_test#686) fails for me:

{{assertEqual_failed,[{module,replication2_console_tests},
                  {line,196},
                  {expression,"( contains ( Output , Str ) )"},
                  {expected,match},
                  {value,nomatch}]},

Running replication2 fails as the console commands have changed, though that's likely more a comment on the r_t pull. Do we want to update those tests at the same time as the console test?

@seancribbs
Copy link
Author

@lordnull Yeah, I need to update the riak_test. Sorry for the delay.

@bsparrow435
Copy link
Contributor

I need more time to analyze and test this change but it's essential for us to get advanced.config out of all riak_ee installations.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants