Commit Graph

578 Commits

Author SHA1 Message Date
xuqinya cb47285d9c HBASE-21781 list_deadservers elapsed time is incorrect 2019-03-28 13:24:49 +01:00
Toshihiro Suzuki a330394eec HBASE-22097 Modify the description of split command in shell
Signed-off-by: Peter Somogyi <psomogyi@apache.org>
Signed-off-by: Xu Cang <xucang@apache.org>
2019-03-28 00:19:19 +09:00
yaojingyi f8524b8f8e HBASE-21964 unset Quota by Throttle Type
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-03-26 09:42:50 +08:00
Duo Zhang 3c5761e365 HBASE-22002 Remove the deprecated methods in Admin interface
Signed-off-by: Zheng Hu <openinx@gmail.com>
2019-03-14 21:42:23 +08:00
meiyi 9370347efe HBASE-21820 Implement CLUSTER quota scope
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-02-27 18:23:45 +08:00
zhangduo b57c03b45b HBASE-21947 TestShell is broken after we remove the jackson dependencies 2019-02-25 22:22:42 +08:00
Wellington Chevreuil 482b505796 HBASE-21505 - proposal for a more consistent report on status
Signed-off-by: Jingyun Tian <tianjy@apache.org>
2019-02-22 12:08:38 +08:00
meiyi 9a55cbb2c1 HBASE-21783 Support exceed user/table/ns throttle quota if region server has available quota
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-02-21 15:36:37 +08:00
Jingyun Tian eedc33dfd2 Revert "HBASE-21505 - proposal for a more consistent report on status"
This reverts commit c578020588.
2019-02-20 18:06:42 +08:00
Wellington Chevreuil c578020588 HBASE-21505 - proposal for a more consistent report on status
Signed-off-by: Jingyun Tian <tianjy@apache.org>
2019-02-19 10:51:05 +08:00
Nihal Jain 593745e8ac HBASE-17942 Disable region splits and merges per table
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-02-19 07:15:27 +08:00
Nihal Jain 353233c296 HBASE-21636 Enhance the shell scan command to support missing scanner specifications like ReadType, IsolationLevel etc. 2019-02-11 09:29:21 -08:00
zhangduo c48438fcb0 HBASE-21857 Addendum fix broken UTs 2019-02-11 10:06:54 +08:00
wanghuan 16c7f5dac9 HBASE-21699 Fixed create table failed when using SPLITS_FILE => 'splits.txt'
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-01-30 15:56:25 +08:00
Sakthi 006f05b458 HBASE-21689: Make table/namespace specific current quota info available in shell(describe_namespace & describe)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-01-25 13:55:33 +08:00
meiyi 281558a3ab HBASE-21713 Support set region server throttle quota
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-01-25 13:50:42 +08:00
Nihal Jain 408eb9a710 HBASE-17370 Fix or provide shell scripts to drain and decommission region server
Add shell support for the following:
- List decommissioned/draining region servers
- Decommission a list of region servers, optionally offload corresponding regions
- Recommission a region server, optionally load a list of passed regions

Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-01-17 16:50:37 +08:00
Duo Zhang 594341d6fe HBASE-21710 Add quota related methods to the Admin interface
Signed-off-by: Michael Stack <stack@apache.org>
2019-01-16 21:08:47 +08:00
Sakthi 0fd4243fcd HBASE-21634: Print error message when user uses unacceptable values for LIMIT while setting quotas.
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-01-15 09:43:59 +08:00
meiyi 620d70d618 HBASE-21694 Add append_peer_exclude_tableCFs and remove_peer_exclude_tableCFs shell commands
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-01-09 22:02:21 +08:00
Sakthi 5aaa73434e HBASE-21361: Disable printing of stack-trace in shell when quotas are not enabled
Signed-off-by: Josh Elser <elserj@apache.org>
2019-01-07 16:39:13 -05:00
Sakthi a735a47532 HBASE-21362: Disable printing of stack-trace in shell when quotas are violated
Signed-off-by: Josh Elser <elserj@apache.org>
2019-01-07 16:36:48 -05:00
meiyi 77db1fae09 HBASE-21159 Add shell command to switch throttle on or off
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-01-07 14:21:41 +08:00
Nihal Jain 3fbdd5bbe9 HBASE-21630 [shell] Define ENDKEY == STOPROW (we have ENDROW) 2019-01-03 21:58:28 -08:00
meiyi 466fa920fe HBASE-21662 Add append_peer_exclude_namespaces and remove_peer_exclude_namespaces shell commands
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2019-01-03 10:21:43 +08:00
Sakthi 44dec60054 HBASE-21631 (addendum) Fixed TestQuotasShell failure (quotas_test.rb)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2018-12-24 14:15:59 +08:00
Guanghao Zhang 1e65bd5cf9 HBASE-21549 Add shell command for serial replication peer 2018-12-07 10:10:13 +08:00
meiyi 5ded294419 HBASE-21034 Add new throttle type: read/write capacity unit
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2018-11-21 09:46:49 +08:00
Reid Chan f874232a67 HBASE-21489 TestShell is broken
Signed-off-by Duo Zhang <zhangduo@apache.org>
2018-11-18 12:14:52 +08:00
jingyuntian 5fbb227deb
HBASE-21269 Forward-port HBASE-21213 [hbck2] bypass leaves behind state in RegionStates when assign/unassign 2018-10-18 06:22:52 -07:00
Artem Ervits 3a75505cf2 HBASE-21279 Split TestAdminShell into several tests
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-10-17 17:23:21 -07:00
subrat.mishra 05f8bea620 HBASE-21178 [BC break] : Get and Scan operation with a custom converter_class not working
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-10-12 08:28:58 -07:00
Andrew Purtell 72552301ab
HBASE-21283 Add new shell command 'rit' for listing regions in transition 2018-10-10 10:03:20 -07:00
Michael Stack 27369136be
HBASE-21223 [amv2] Remove abort_procedure from shell
Signed-off-by: Balazs Meszaros <balazs.meszaros@cloudera.com>
2018-09-25 11:29:15 -07:00
Sakthi d663d48d39 HBASE-20482 Printed a link to the ref guide chapter for the shell during startup
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-08-31 12:12:48 -05:00
zhangduo f1d9377a7f HBASE-20968 list_procedures_test fails due to no matching regex 2018-08-28 14:23:20 +08:00
Mingliang Liu 6dd5383033 HBASE-21071 HBaseTestingUtility::startMiniCluster() to use builder pattern
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2018-08-27 10:20:31 -07:00
jingyuntian 21e02813fe HBASE-20985 add two attributes when we do normalization
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2018-08-13 16:43:54 +08:00
Mohit Goel 950d6e6fb0 HBASE-6028 Start/Stop compactions at region server level
Add switching on/off of compactions.

Switching off compactions will also interrupt any currently ongoing compactions.
Adds a "compaction_switch" to hbase shell. Switching off compactions will
interrupt any currently ongoing compactions. State set from shell will be
lost on restart. To persist the changes across region servers modify
hbase.regionserver.compaction.enabled in hbase-site.xml and restart.

Signed-off-by: Umesh Agashe <uagashe@cloudera.com>
Signed-off-by: Michael Stack <stack@apache.org>
2018-07-19 06:20:44 -07:00
zhangduo 6198e1fc7d HBASE-20801 Fix broken TestReplicationShell 2018-06-28 18:08:43 +08:00
Guanghao Zhang 2acebac00e HBASE-19781 Add a new cluster state flag for synchronous replication 2018-06-28 18:07:44 +08:00
Guanghao Zhang b4a1dbf768 HBASE-19078 Add a remote peer cluster wal directory config for synchronous replication
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-06-28 18:07:44 +08:00
Sean Busbey f1b536bad4 HBASE-20332 shaded mapreduce module shouldn't include hadoop
* modify the jar checking script to take args; make hadoop stuff optional
* separate out checking the artifacts that have hadoop vs those that don't.
* * Unfortunately means we need two modules for checking things
* * put in a safety check that the support script for checking jar contents is maintained in both modules
* * have to carve out an exception for o.a.hadoop.metrics2. :(
* fix duplicated class warning
* clean up dependencies in hbase-server and some modules that depend on it.
* allow Hadoop to have its own htrace where it needs it
* add a precommit check to make sure we're not using old htrace imports
2018-06-18 11:31:04 -07:00
Ankit Singhal 874f1e8e6a HBASE-20645 Pass stringified table name to exists? method
Signed-off-by: Josh Elser <elserj@apache.org>
2018-05-25 15:02:47 -04:00
Enis Soztutar 91756d7f79 HBASE-16191 Add stop_regionserver and stop_master to shell
Amending-Author: Peter Somogyi <psomogyi@apache.org>
2018-05-14 09:36:20 +02:00
Sean Busbey 8ba2a7eeb9 HBASE-20544 Make HBTU default to random ports.
Signed-off-by: Umesh Agashe <uagashe@cloudera.com>
Signed-off-by: Josh Elser <elserj@apache.org>
2018-05-09 23:35:20 -07:00
Nihal Jain 59f6ecd6b2 HBASE-20327 When qualifier is not specified, append and incr operation do not work (shell)
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2018-04-28 12:55:30 +08:00
Sakthi 8a30acf46f HBASE-20270 Turned off command help that follows all errors in shell
Signed-off-by: Sean Busbey <busbey@apache.org>
2018-04-25 15:36:33 -05:00
Toshihiro Suzuki fd2cec75f3 HBASE-20293 get_splits returns duplicate split points when region replication is on 2018-04-17 15:42:25 -07:00
Guangxu Cheng 5a69465ea0 HBASE-20243 [Shell] Add shell command to create a new table by cloning the existent table
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-04-11 19:33:56 -07:00
Gabor Bota 118c1a1f2f HBASE-20253. Error message is missing for restore_snapshot
Amending Author: Peter Somogyi <psomogyi@apache.org>
2018-04-11 17:24:36 +02:00
Peter Somogyi bdc0d3a4c6 HBASE-20287 After cluster startup list_regions command fails on disabled table
Add is_enabled check for list_regions command

Signed-off-by: Mike Drob <mdrob@apache.org>
2018-04-07 18:11:29 +02:00
Csaba Skrabak a422310dad HBASE-20286 Improving shell command compaction_state
Signed-off-by: Apekshit Sharma <appy@apache.org>
2018-04-06 15:32:37 -07:00
Balazs Meszaros 143ed0d19d HBASE-20258 Shell hangs when scanning a disabled table
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-04-06 13:43:48 -07:00
Sean Busbey de57d08226 HBASE-20276 restore original shell REPL functionality where commands can return results
* makes commands always pass any results back to hirb
* print warning if hirb is given the --return-values flag
* add some docs on how to avoid the console clutter that HBASE-15965 sought to address
* add an upgrade section note about this change.
* cleanup where the get_splits command does its printing so there's a building block that doesn't print
* some rubocop suggested tweaks and opt-out for classlength check on table and shell classes.

Signed-off-by: Mike Drob <mdrob@apache.org>
2018-04-06 13:03:15 -05:00
Toshihiro Suzuki 2a2258656b HBASE-20292 Wrong URLs in the descriptions for update_all_config and update_config commands in shell 2018-03-27 09:30:50 +02:00
Peter Somogyi 4428169542 HBASE-20254 Incorrect help message for merge_region 2018-03-26 19:52:10 +02:00
Balazs Meszaros b3ee2adead HBASE-20245 HTrace commands do not work 2018-03-23 16:53:31 -07:00
Peter Somogyi cd5a821c75 HBASE-16848 Usage for show_peer_tableCFs command doesn't include peer 2018-03-23 16:25:56 +01:00
Umesh Agashe c614b9f3e8 HBASE-20224 Web UI is broken in standalone mode
Changes for HBASE-20027 seem to cause UI not showing up on default port in standalone mode. For concurrent
unit test execution, individual tests can set hbase.localcluster.assign.random.ports to true or modify
test/resources/hbase-site.xml.
2018-03-22 20:27:39 -07:00
Peter Somogyi e2fc21e4a1 HBASE-20241 splitormerge_enabled does not work
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
2018-03-22 11:58:35 +01:00
Chia-Ping Tsai a6eeb26cc0 HBASE-20212 Make all Public classes have InterfaceAudience category
Signed-off-by: tedyu <yuzhihong@gmail.com>
Signed-off-by: Michael Stack <stack@apache.org>
2018-03-22 18:10:23 +08:00
Guangxu Cheng 45586ab300 HBASE-20220 [RSGroup] Check if table exists in the cluster before moving it to the specified regionserver group
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-03-19 11:13:44 -07:00
Chia-Ping Tsai 4f2133ee32 HBASE-20119 Introduce a pojo class to carry coprocessor information in order to make TableDescriptorBuilder accept multiple cp at once
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
Signed-off-by: Michael Stack <stack@apache.org>
2018-03-16 01:21:38 +08:00
Balazs Meszaros 31da4d0bce HBASE-20200 list_procedures fails in shell
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
Signed-off-by: Umesh Agashe <uagashe@cloudera.com>
2018-03-15 08:19:50 +01:00
Peter Somogyi b037db4e87 HBASE-19802 Wrong usage messages on shell commands (grant/revoke namespace syntax) (Csaba Skrabak) 2018-03-13 10:56:34 +01:00
openinx d824bace4f HBASE-20165 Shell command to make a normal peer to be a serial replication peer 2018-03-13 16:23:59 +08:00
Sean Busbey 2a65066b35 HBASE-20070 refactor website generation
* rely on git plumbing commands when checking if we've built the site for a particular commit already
* switch to forcing '-e' for bash
* add command line switches for: path to hbase, working directory, and publishing
* only export JAVA/MAVEN HOME if they aren't already set.
* add some docs about assumptions
* Update javadoc plugin to consistently be version 3.0.0
* avoid duplicative site invocations on reactor modules
* update use of cp command so it works both on linux and mac
* manually skip enforcer plugin during build
* still doing install of all jars due to MJAVADOC-490, but then skip rebuilding during aggregate reports.
* avoid the pager on git-diff by teeing to a log file, which also helps later reviewing in the case of big changesets.

Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: Misty Stanley-Jones <misty@apache.org>
2018-03-02 09:25:10 -06:00
zhangduo 01a2869363 HBASE-19903 Split TestShell so it will not time out 2018-02-16 00:17:19 +08:00
Reid Chan 8e8e1e5a1b HBASE-19844 Shell should support to flush by regionserver
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-02-13 08:20:54 -08:00
Balazs Meszaros 380083e7d3 HBASE-19886 Display maintenance mode in shell, web UI 2018-02-06 14:53:32 -08:00
zhangduo 7c318cead9 HBASE-19887 Do not overwrite the surefire junit listener property in the pom of sub modules 2018-01-31 20:49:18 +08:00
Chia-Ping Tsai 94dd5166b2 HBASE-19871 delete.rb should require user to provide the column 2018-01-29 16:37:32 +08:00
zhangduo 918599ef12 HBASE-19873 Add a CategoryBasedTimeout ClassRule for all UTs 2018-01-29 08:43:56 +08:00
Josh Elser 8b2b59fdee HBASE-19770 ADDENDUM Replace `if not` with `unless`
Signed-off-by: Mike Drob <mdrob@apache.org>
2018-01-24 14:38:28 -05:00
Artem Ervits 11d6e6b1e6 HBASE-19829 hadoop-minicluster pulls zookeeper:test-jar:tests 3.4.6
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-01-19 15:18:22 -08:00
Josh Elser 7224546b1e HBASE-19770 Separate command return values from interactive shells
Uses a new option to the shell to specify that return values are
unwanted instead of overloading the interactive option. Enable
return_values when the shell is non-interactive.

Signed-off-by: Apekshit Sharma <appy@apache.org>
2018-01-17 13:14:46 -05:00
Sergey Soldatov 6bacb643bc HBASE-19775 hbase shell doesn't handle the exceptions that are wrapped in java.io.UncheckedIOException
Signed-off-by: Josh Elser <elserj@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2018-01-12 12:50:15 -05:00
Janos Gub 8bbfcdda46 HBASE-19771 restore_snapshot shell command gives wrong namespace if the namespace doesn't exist
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-01-12 07:37:10 -08:00
Sergey Soldatov 62a8188946 HBASE-19755 Error message for non-existent namespace is inaccurate
Signed-off-by: tedyu <yuzhihong@gmail.com>
2018-01-10 20:19:40 -08:00
Guanghao Zhang a34bb8d708 HBASE-19579 Add peer lock test for shell command list_locks
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-01-09 13:11:01 +08:00
Josh Elser ea819d1733
HBASE-19714 Fix broken status-detailed
Expanded on the unit tests to catch this in the future.

Signed-off-by: Michael Stack <stack@apache.org>
2018-01-06 08:21:51 -06:00
Mike Drob c3b4f788b1 HBASE-19552 find-and-replace thirdparty offset 2017-12-28 11:52:32 -06:00
tedyu 41c2dd04da HBASE-19619 Modify replication_admin.rb to use ReplicationPeerConfigBuilder 2017-12-27 02:35:41 -08:00
Guanghao Zhang 7501e64426 HBASE-19591 Cleanup the usage of ReplicationAdmin from hbase-shell 2017-12-22 18:32:49 +08:00
Balazs Meszaros f572c4b80e HBASE-10092 Move up on to log4j2
Changes:
- replaced commons-logging to slf4j everywhere
- log.XXX(Throwable) calls were replaced with log.XXX(t.toString(), t)
- log.XXX(Object) calls were replaced with log.XXX(Objects.toString(obj))
- log.fatal() calls were replaced with log.error(HBaseMarkers.FATAL, ...)
- programmatic log4j configuration was removed from the unit test

This commit does not affect the current logging configurations, because log4j
is still on the classpath. slf4j-log4j12 binds log4j to slf4j.

Signed-off-by: Michael Stack <stack@apache.org>
2017-12-20 22:21:33 -08:00
Mike Drob e67a67d444 HBASE-18970 fix hbase shell reading interactive input (Amit Virmani) 2017-12-19 19:56:53 -06:00
Guanghao Zhang 03e79b7994 HBASE-19492 Add EXCLUDE_NAMESPACE and EXCLUDE_TABLECFS support to replication peer config 2017-12-19 16:53:43 +08:00
Jan Hentschel de6f0fbdaa HBASE-19479 Fixed Checkstyle error in hbase-shell 2017-12-17 14:01:09 +01:00
Mike Drob 75f512bd71 HBASE-18838 Fix hadoop3 check-shaded-invariants 2017-12-15 11:19:47 -06:00
Josh Elser 4a1c3b4210 HBASE-19267 Remove compiler-plugin mapping executions as it breaks Java8 detection
It seems like the original reason this execution filter was added is no
longer an issue for 2.0. Actually, these entries actually preclude
Eclipse from correctly using the Java8 source/target version that we
have specified (which creates numerous compilation errors in Eclipse)

Signed-off-by: Guanghao Zhang <zghao@apache.org>
2017-12-14 15:11:19 -05:00
Guanghao Zhang 54cd677cbe
HBASE-19495 Fix failed ut TestShell
Signed-off-by: Michael Stack <stack@apache.org>
2017-12-12 18:27:01 -08:00
Michael Stack 66db0006eb
HBASE-19349 Introduce wrong version depencency of servlet-api jar
Move the hadoop-hdfs guava exclude in modules up to the top pom.
Looks like an exclude in a module is not additive but rather exclusive
blanking out the top level set of exclusions.

Tested by looking in lib dir of the built tarball.
2017-12-07 17:50:30 -08:00
libisthanks 5e0d00f884 HBASE-19336 Improve rsgroup to allow assign all tables within a specified namespace by only writing namespace
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2017-12-02 09:27:29 +08:00
Guangxu Cheng cc3f804b07
HBASE-19326 Remove decommissioned servers from rsgroup
Signed-off-by: Michael Stack <stack@apache.org>
2017-11-30 16:10:28 -08:00
Guanghao Zhang 3e2941a49e HBASE-16868 Add a replicate_all flag to avoid misuse the namespaces and table-cfs config of replication peer 2017-11-23 14:54:19 +08:00
Guanghao Zhang e1133d5201 HBASE-19293 Support add a disabled state replication peer directly 2017-11-21 15:26:06 +08:00
Apekshit Sharma 330b0d05b9 HBASE-19114 Split out o.a.h.h.zookeeper from hbase-server and hbase-client
- Moved DrainingServerTracker and RegionServerTracker to hbase-server:o.a.h.h.master.
- Moved SplitOrMergeTracker to oahh.master (because it depends on a PB)
- Moving hbase-client:oahh.zookeeper.*  to hbase-zookeeper module.  After HBASE-19200, hbase-client doesn't need them anymore (except 3 classes).
- Renamed some classes to use a consistent naming for classes - ZK instead of mix of ZK, Zk , ZooKeeper. Couldn't rename following public classes: MiniZooKeeperCluster, ZooKeeperConnectionException. Left RecoverableZooKeeper for lack of better name. (suggestions?)
- Sadly, can't move tests out because they depend on HBaseTestingUtility (which defeats part of the purpose - trimming down hbase-server tests. We need to promote more use of mocks in our tests)
2017-11-17 13:20:18 -08:00
Guangxu Cheng ca74ec7740
HBASE-19269 Reenable TestShellRSGroups
Signed-off-by: Michael Stack <stack@apache.org>
2017-11-17 11:56:22 -08:00
Guanghao Zhang d8fb10c832 HBASE-19009 implement modifyTable and enable/disableTableReplication for AsyncAdmin (addendum) 2017-11-16 16:28:56 +08:00
Tamas Penzes 377174d3ef HBASE-18601: Update Htrace to 4.2
Updated HTrace version to 4.2
Created TraceUtil class to wrap htrace methods. Uses try with resources.

Signed-off-by: Balazs Meszaros <balazs.meszaros@cloudera.com>
Signed-off-by: Michael Stack <stack@apache.org>
2017-11-11 10:34:03 -08:00
Zach York d78d1ee672 HBASE-18624 Added support for clearing BlockCache based on tablename
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-11-09 04:03:15 +08:00
Guanghao Zhang 349dd5e214 HBASE-19178 table.rb use undefined method 'getType' for Cell interface 2017-11-05 08:01:30 +08:00
Michael Stack f812218ffe
HBASE-19179 Remove hbase-prefix-tree 2017-11-04 10:11:13 -07:00
Mike Drob 5facaded90 HBASE-16338 Remove Jackson1 deps
* Change imports from org.codehaus to com.fasterxml
* Exclude transitive jackson1 from hadoop and others
* Minor test cleanup to add assert messages, fix some parameter order
* Add anti-pattern check for using jackson 1 imports
* Add explicit non-null serialization directive to ScannerModel
2017-10-20 09:20:12 -05:00
Balazs Meszaros 41cc9a125f
HBASE-18350 RSGroups are broken under AMv2
- Table moving to RSG was buggy, because it left the table unassigned.
  Now it is fixed we immediately assign to an appropriate RS
  (MoveRegionProcedure).
- Table was locked while moving, but unassign operation hung, because
  locked table queues are not scheduled while locked. Fixed.
- ProcedureSyncWait was buggy, because it searched the procId in
  executor, but executor does not store the return values of internal
  operations (they are stored, but immediately removed by the cleaner).
- list_rsgroups in the shell show also the assigned tables and servers.

Signed-off-by: Michael Stack <stack@apache.org>
2017-10-17 13:58:36 -07:00
Thoralf Gutierrez 0ff4f5fba9 HBASE-18842 Fix unknown namespace message in clone_snapshot
Signed-off-by: Jesse Yates <jyates@apache.org>
2017-10-09 14:39:59 -07:00
Guanghao Zhang 63440a9c7d HBASE-18909 Deprecate Admin's methods which used String regex 2017-10-07 21:16:01 +08:00
Guanghao Zhang afa03a207e HBASE-18913 TestShell fails because NoMethodError: undefined method parseColumn 2017-10-03 11:47:14 +08:00
Yi Liang 4093cc0291 HBASE-18894: null pointer exception in list_regions in shell command
Signed-off-by: Mike Drob <mdrob@apache.org>
2017-10-02 16:50:29 -05:00
Chia-Ping Tsai dd3d7de018 HBASE-13844 (Addendum) Replace KeyValue#isDelete by CellUtil#isDelete in hbase-shell 2017-10-01 17:47:47 +08:00
Chun-Hao Tang ff0c1d2fa3 HBASE-18142 Deletion of a cell deletes the previous versions too
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-09-19 00:22:59 +08:00
Sean Busbey 4b124913f0 HBASE-17823 Migrate to Apache Yetus Audience Annotations
Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: Misty Stanley-Jones <misty@apache.org>
2017-09-12 20:53:30 -05:00
Guangxu Cheng cfdbdd2066 HBASE-18131 Add an hbase shell command to clear deadserver list in ServerManager
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-09-12 08:29:16 -07:00
Balazs Meszaros 359fed7b4b HBASE-18106 Redo ProcedureInfo and LockInfo
Main changes:
- ProcedureInfo and LockInfo were removed, we use JSON instead of them
- Procedure and LockedResource are their server side equivalent
- Procedure protobuf state_data became obsolate, it is only kept for
reading previously written WAL
- Procedure protobuf contains a state_message field, which stores the internal
state messages (Any type instead of bytes)
- Procedure.serializeStateData and deserializeStateData were changed slightly
- Procedures internal states are available on client side
- Procedures are displayed on web UI and in shell in the following jruby format:
  { ID => '1', PARENT_ID = '-1', PARAMETERS => [ ..extra state information.. ] }

Signed-off-by: Michael Stack <stack@apache.org>
2017-09-08 10:24:04 -07:00
Michael Stack fb537fe736 HBASE-18723 [pom cleanup] Do a pass with dependency:analyze; remove unused and explicity list the dependencies we exploit
Do a pass with dependency:analyze; remove unused and
explicity list the dependencies we exploit.
Remove the parent dependencies set which had junit, mockito,
log4j, and findbugs annotations (had to put junit back
temporarily in subsequent version of this patch TODO). Listing in
parent set meant these libs were dependencies for all modules
which in practice was not the case. Edited all modules so
those that need any from this parent set now do explicit listing.

Ran the dependency:analyze over the project. Acted on most
suggested removals and requests for explicit listing. Some
grey areas remain around transitives that come in with
hadoop -needs better excludes, another project- and that
the dependency:analyze tool is not always accurate in its
reporting.
2017-08-31 12:41:31 -07:00
Mike Drob 51d458872d HBASE-12349 Add custom error-prone module 2017-08-22 16:38:17 -05:00
Chenxi Tong a17ed0356f HBASE-18125 shell disregards spaces at the end of a split key in a split file
Signed-off-by: fchenxi <fchenxi@126.com>
Signed-off-by: Michael Stack <stack@apache.org>
2017-08-16 15:14:12 -07:00
Apekshit Sharma 504a1f14e3 HBASE-18102 (addendum fixing shell tests) - Purge close_region command that allows by-pass of Master
Change-Id: I753f20d50954969ee473f6a016d5c5f9ff4fd631
2017-08-02 18:11:48 -07:00
Apekshit Sharma 71151eb0e9 HBASE-18102 Purge close_region command that allows by-pass of Master
Change-Id: I67e3f74e16706043056bac73bc1ff3a713d0e977
2017-08-02 17:09:32 -07:00
Phil Yang 1ac4152b19 HBASE-15968 New behavior of versions considering mvcc and ts rather than ts only 2017-07-25 15:00:36 +08:00
Michael Stack 890d92a90c HBASE-17908 Upgrade guava
Pull in guava 22.0 by using the shaded version up in new hbase-thirdparty project.

In poms, exclude guava everywhere except on hadoop-common. Do this so
we minimize transitive includes. hadoop-common is needed because hadoop
Configuration uses guava doing preconditions.

Everywhere we used guava, instead use shaded so fix a load of imports.

Stopwatch API changed as did hashing and toStringHelper which is now
in MoreObjects class. Otherwise, minimal changes to come up on 22.0
2017-07-21 15:28:08 +01:00
tedyu af534acabb HBASE-18412 [Shell] Support unset of list of configuration for a table (Yun Zhao) 2017-07-20 21:01:05 -07:00
Yi Liang 353627b39d HBASE-18229: create new Async Split API to embrace AM v2
Signed-off-by: Michael Stack <stack@apache.org>
2017-07-14 22:25:14 +01:00
Guangxu Cheng 619d6a50f6 HBASE-16120 Add shell test for truncate_preserve
Signed-off-by: Michael Stack <stack@apache.org>
2017-07-05 12:51:36 -07:00
Peter Somogyi f2731fc241 HBASE-18264 Update pom plugins
Update plugins in main and subprojects
Unified versions to use variable instead of direct values

Affected plugins:
- apache-rat-plugin 0.11 -> 0.12
- asciidoctor-maven-plugin 1.5.2.1 -> 1.5.5
- asciidoctorj-pdf 1.5.0-alpha.6 -> 1.5.0-alpha.15
- build-helper-maven-plugin 1.9.1 -> 3.0.0
- buildnumber-maven-plugin 1.3 -> 1.4
- exec-maven-plugin 1.2.1/1.4.0 -> 1.6.0
- extra-enforcer-rules 1.0-beta-3 -> 1.0-beta-6
- findbugs-maven-plugin 3.0.0 -> 3.0.4
- jamon-maven-plugin 2.4.1 -> 2.4.2
- maven-bundle-plugin 2.5.3 -> 3.3.0
- maven-compiler-plugin 3.2/3.5.1 -> 3.6.1
- maven-eclipse-plugin 2.9 -> 2.10
- maven-shade-plugin 2.4.1 -> 3.0.0
- maven-surefire-plugin 2.18.1 -> 2.20
- maven-surefire-report-plugin 2.7.2 -> 2.20
- scala-maven-plugin 3.2.0 -> 3.2.2
- spotbugs 3.1.0-RC1 -> 3.1.0-RC3
- wagon-ssh 2.2 -> 2.12
- xml-maven-plugin 1.0 -> 1.0.1

- maven-assembly-plugin 2.4 -> 2.6(inherited)
- maven-dependency-plugin 2.4 -> 2.10 (inherited)
- maven-enforcer-plugin 1.3.1 -> 1.4.1 (inherited)
- maven-javadoc-plugin 2.10.3 -> 2.10.4 (inherited)
- maven-resources-plugin 2.7 (inherited)
- maven-site-plugin 3.4 -> 3.5.1 (inherited)

Change-Id: I84539f555be498dff18caed1e3eea1e1aeb2143a

Signed-off-by: Michael Stack <stack@apache.org>
2017-07-03 19:42:46 -07:00
Mike Drob 2115d4b50e HBASE-18239 rubocop autocorrect for shell
Signed-off-by: Michael Stack <stack@apache.org>
2017-06-30 10:23:12 -07:00
Josh Elser a19e5673d6 HBASE-18244 Temporarily disable TestShellRSGroups
Signed-off-by: Michael Stack <stack@apache.org>
2017-06-28 11:55:18 -07:00
Josh Elser 5b485d14cd HBASE-17752 Shell command to list snapshot sizes WRT quotas 2017-06-20 14:17:00 -04:00
Guangxu Cheng 492c3f8e20 HBASE-18149 The setting rules for table-scope attributes and family-scope attributes should keep consistent
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-06-07 08:30:27 -07:00
Michael Stack 929c9dab14 HBASE-18181 Move master branch to version 3.0.0-SNAPSHOT post creation of branch-2 2017-06-06 22:04:39 -07:00
Mike Drob 140ce1453e HBASE-16196 Update to JRuby 9.1.9.0
* Get hbase-shell to use latest current JRuby release.
* Update license information to reflect the changes to jruby-complete.jar
* Update shell scripts for Ruby 1.8->2.x incompatabilities
* Update joni and jcodings to compatible versions

Signed-off-by: Sean Busbey <busbey@apache.org>
2017-05-31 11:09:07 -05:00
Guangxu Cheng dda9ae0295 HBASE-18129 truncate_preserve fails when the truncate method doesn't exist on the master
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-05-31 02:31:29 -07:00
Guangxu Cheng 64c701768b HBASE-18001 Extend the "count" shell command to support specified conditions
Signed-off-by: Chia-Ping Tsai <chia7712@gmail.com>
2017-05-24 17:06:36 +08:00
Guangxu Cheng ebe92c8fb3 HBASE-18094 Display the return value of the command append
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-05-23 08:59:05 -07:00
Josh Elser ed618da906 HBASE-17981 Consolidate the space quota shell commands 2017-05-22 13:41:36 -04:00
Josh Elser 80a1f8fa2a HBASE-17428 Implement informational RPCs for space quotas
Create some RPCs that can expose the in-memory state that the
RegionServers and Master hold to drive the space quota "state machine".
Then, create some hbase shell commands to interact with those.
2017-05-22 13:41:35 -04:00
Josh Elser f1066cd774 HBASE-17025 Add shell commands for space quotas 2017-05-22 13:41:35 -04:00
Josh Elser f1544c3466 HBASE-18067 Allow default FORMATTER for shell put/get commands 2017-05-21 22:24:12 -04:00
huzheng 37dd8ff722 HBASE-11013: Clone Snapshots on Secure Cluster Should provide option to apply Retained User Permissions
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2017-05-18 17:39:50 +08:00
tedyu 5e046151d6 HBASE-11013: Clone Snapshots on Secure Cluster Should provide option to apply Retained User Permissions - revert, pending work in snapshot descriptor 2017-05-11 18:53:14 -07:00
tedyu b3dcfb659e HBASE-17928 Shell tool to clear compaction queues (Guangxu Cheng) 2017-05-11 18:47:12 -07:00
tedyu d8d4ba7c59 HBASE-17928 Shell tool to clear compaction queues - revert pending work in snapshot descriptor 2017-05-11 18:43:59 -07:00
tedyu 815b0f853b HBASE-17928 Shell tool to clear compaction queues (Guangxu Cheng) 2017-05-09 18:32:38 -07:00
huzheng 951b23a44c HBASE-11013: Clone Snapshots on Secure Cluster Should provide option to apply Retained User Permissions
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-05-09 09:32:48 -07:00
Karan Mehta 7d819eb722 HBASE-14925 (Addendum) Develop HBase shell command/tool to list table's region info through command line
Signed-off-by: Ashish Singhi <ashishsinghi@apache.org>
2017-05-05 23:33:30 +05:30
Josh Elser de78c11893 HBASE-17973 Fix incorrect method call in list_regions and expand tests (addendum) 2017-05-02 17:42:47 -04:00
Enis Soztutar a171b7feaf HBASE-17979 HBase Shell 'list' Command Help Doc Improvements (Hugo Louro) 2017-05-01 16:36:53 -07:00
Josh Elser 13b6fdf8ad HBASE-17973 Expand list_regions to filter on data locality 2017-05-01 13:46:41 -04:00
Karan Mehta 68b2e0f7d9 HBase-14925 Develop HBase shell command/tool to list table's region info through command line
Signed-off-by: Ashish Singhi <ashishsinghi@apache.org>
2017-04-28 14:06:03 +05:30
Chia-Ping Tsai 053e61541e HBASE-15583 Any HTableDescriptor we give out should be immutable 2017-04-27 03:22:29 +08:00
Balazs Meszaros 2557506415 HBASE-15143 Procedure v2 - Web UI displaying queues
Signed-off-by: Michael Stack <stack@apache.org>
2017-04-25 09:39:28 -07:00
tedyu 68e48c456d HBASE-17946 Shell command compact_rs don't work (Guangxu Cheng) 2017-04-21 06:54:44 -07:00
Umesh Agashe c8461456d0 HBASE-17888: Added generic methods for updating metrics on submit and finish of a procedure execution
Signed-off-by: Michael Stack <stack@apache.org>
2017-04-14 11:51:08 -07:00
tedyu 8e5eeb4db3 HBASE-17758 [RSGROUP] Add shell command to move servers and tables at the same time (Guangxu Cheng) - addendum with move_servers_tables_rsgroup.rb 2017-03-17 13:55:36 -07:00
Andrew Purtell 7f0e6f1c9e HBASE-17758 [RSGROUP] Add shell command to move servers and tables at the same time (Guangxu Cheng) 2017-03-16 18:37:40 -07:00
CHIA-PING TSAI 26928ff912 HBASE-17736 Some options can't be configured by the shell
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2017-03-09 16:53:34 -08:00
Andrew Purtell 1b5afc3395 HBASE-17729 Missing shortcuts for some useful HCD options 2017-03-08 10:05:05 -08:00
tedyu d2349c6f98 HBASE-17736 Some options can't be configured by the shell - revert premature commit 2017-03-05 16:38:13 -08:00
CHIA-PING TSAI 9d8dd6c474 HBASE-17736 Some options can't be configured by the shell
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-03-05 11:07:11 -08:00
Andrew Purtell 404a2883f2 HBASE-17722 Metrics subsystem stop/start messages add a lot of useless bulk to operational logging 2017-03-03 12:40:06 -08:00
huzheng 335cde3415 HBASE-17672: "Grant should set access rights appropriately" test fails
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-02-22 20:08:12 -08:00
Michael Stack ae840c0ccd HBASE-17656 Move new Address class from util to net package 2017-02-16 12:17:50 -08:00
Michael Stack e019961150 HBASE-17624 Address late review of HBASE-6721, rsgroups feature
Addresses review comments by Sean Busbey and Appy that happened
to come in long after the commit of HBASE-6721, the original
rsgroup issue.

Also includes subsequent accommodation of Duo Zhang review.

Adds a new type to hold hostname and port. It is called
Address. It is a facade over Guava's HostAndPort. Replace
all instances of HostAndPort with Address. In particular,
those places where HostAndPort was part of the rsgroup
public API.

Fix licenses. Add audience annotations.

Cleanup and note concurrency expectation on a few core classes.
In particular, all access on RSGroupInfoManager is made
synchronized.

M hbase-client/src/main/java/org/apache/hadoop/hbase/ServerName.java
 Host the hostname and port in an instance of the new type Address.
 Add a bunch of deprecation of exotic string parses that should never
 have been public.

M hbase-rsgroup/src/main/java/org/apache/hadoop/hbase/rsgroup/RSGroupAdmin.java
 Make this an Interface rather than abstract class. Creation was a
 static internal method that only chose one type.... Let it be free
 as a true Interface instead.
2017-02-14 09:29:17 -08:00
Guanghao Zhang 9a78d00884 HBASE-17389 Convert all internal usages from ReplicationAdmin to Admin 2017-02-07 10:18:59 +08:00
Michael Stack 9ec0ec4922 HBASE-17350 Fixup of regionserver group-based assignment
Renamed move_rsgroup_servers as move_servers_rsgroup
Renamed move_rsgroup_tables as move_tables_rsgroup

Minor changes to help text in rsgroup commands making them all same.
Made LOG from RSGroupAdminServer all talk of 'rsgroup' rather than
'group' to be consistent.

Fix for table.jsp where it would fail to display regions because no
type for the protobuf record specified.

Fix it so that move of an offline server to 'default' rsgroup is like
moving the reference to the server to trash (keeps the 'default' group
consistently 'dynamic' regards its server-list).

Fixed another issue where we were stuck in a loop because regions
were in FAILED_OPEN state because no server to assign too so we'd
never recover (a vagary of the current state of Master assignement
but no less a possibility in real world deploys).

Make it so servers are sorted when we list them; its what operator
would expect.
2017-02-06 13:09:57 -08:00
Huaxiang Sun 1159296541 HBASE-16981 Expand Mob Compaction Partition policy from daily to weekly, monthly
Support weekly and monthly mob compact partition policies in addition to the existing
daily partition policy.

Signed-off-by: Jingcheng Du <jingchengdu@apache.org>
2017-02-03 15:52:43 +08:00
Ajay Jadhav f8b1f57b05 HBASE-17280 Add mechanism to control hbase cleaner behavior
Signed-off-by: anoopsamjohn <anoopsamjohn@gmail.com>
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-02-01 22:16:01 -06:00
Sean Busbey 2c799fb70a Revert "Add mechanism to control hbase cleaner behavior"
This reverts commit ef052521cd.

Bad commit message.
2017-02-01 22:11:48 -06:00
Ajay Jadhav ef052521cd Add mechanism to control hbase cleaner behavior
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-02-01 19:33:06 -08:00
anastas aa5d9a9ad3 HBASE-17492 Fix the compacting memstore part in hbase shell ruby script
Signed-off-by: Michael Stack <stack@apache.org>
2017-01-23 21:27:44 -08:00
Jan Hentschel 55a1aa1e73 HBASE-10699 Set capacity on ArrayList where possible and use isEmpty instead of size() == 0
Signed-off-by: Michael Stack <stack@apache.org>
2017-01-20 22:58:20 -08:00
Michael Stack 31f3e8f833 HBASE-17496 RSGroup shell commands:get_server_rsgroup don't work and commands display an incorrect result size (Guangxu Cheng) 2017-01-20 09:20:31 -08:00
Yu Li f92a14ade6 HBASE-14061 Support CF-level Storage Policy 2017-01-09 09:52:58 +08:00
Guanghao Zhang 0e48665641 HBASE-17336 get/update replication peer config requests should be routed through master 2016-12-30 10:12:47 +08:00
Guanghao Zhang 8da7366fc2 HBASE-17348 Remove the unused hbase.replication from javadoc/comment/book completely 2016-12-25 08:46:29 +08:00
eshcar a9310436d5 HBASE-17294: External configuration for memory compaction
Signed-off-by: Michael Stack <stack@apache.org>
2016-12-13 17:16:00 -08:00
tedyu 2333596279 HBASE-17296 Provide per peer throttling for replication (Guanghao Zhang) 2016-12-13 04:20:20 -08:00
Michael Stack 0b0e857465 HBASE-17160 Undo unnecessary inter-module dependency; spark to hbase-it and hbase-it to shell; ADDENDUM
Signed-off-by: Michael Stack <stack@apache.org>
2016-11-23 11:45:37 -08:00
Esteban Gutierrez 5bc518b387 HBASE-16774 [shell] Add coverage to TestShell when ZooKeeper is not reachable 2016-10-18 09:08:33 -07:00
tedyu 76e7c05474 HBASE-16274 Add more peer tests to replication_admin_test (Guanghao Zhang) 2016-10-15 07:30:52 -07:00
tedyu f5abe17bc6 HBASE-16666 Add append and remove peer namespaces cmds for replication (Guanghao Zhang) 2016-10-09 21:22:50 -07:00
Apekshit Sharma 5f7e642fed HBASE-16682 Fix Shell tests failure. NoClassDefFoundError for MiniKdc.
Change-Id: I75b5dde104f716f173a5a41d43f7b4c2b8ba1f39
2016-09-26 02:05:21 -07:00
Jonathan M Hsieh a90d433a2c HBASE-12088 Remove unused hadoop-1.0, hadoop-1.1 profiles from non-root poms 2016-09-21 20:45:03 -07:00
Jerry He edc0ef3fe4 HBASE-16598 Enable zookeeper useMulti always and clean up in HBase code 2016-09-17 16:51:26 -07:00
Enis Soztutar 1a1003a482 HBASE-16447 Replication by namespaces config in peer (Guanghao Zhang) 2016-09-16 11:47:42 -07:00
chenheng 1d6c90b496 HBASE-16381 Shell deleteall command should support row key prefixes (Yi Liang) 2016-09-15 19:20:29 +08:00
Umesh Agashe 422734e73d HBASE-15297 Correct handling of namespace existence checks in shell.
Changes namespace_exists? method in SecurityAdmin ruby code to catch NamespaceNotFoundException
and modified Admin.java file to document the exception.

Signed-off-by: Sean Busbey <busbey@apache.org>
2016-09-12 23:29:42 -07:00
Geoffrey e1e0637200 HBASE-16576 Shell add_peer doesn't allow setting cluster_key for custom endpoints
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2016-09-09 14:54:20 -07:00
anoopsamjohn 32c21f4594 HBASE-14921 In-Memory MemStore Flush and Compaction : Memory optimizations. (Anastasia) 2016-08-24 09:25:21 +05:30
Stephen Yuan Jiang cd0b85e0a8 Revert HBASE-15406: Split / merge switch left disabled after early termination of hbck (HBASE-16008 will address this issue) 2016-07-22 20:09:03 -07:00
Apekshit Sharma 28802decc8 HBASE-16227 [Shell] Column value formatter not working in scans.
Tested : manually using shell.

Change-Id: I9eef7efa68393a762ec872447f8e36dfc6d6f1bc
2016-07-13 14:14:06 -07:00
tedyu 7227c27fe8 HBASE-16184 Shell test fails due to rLoadSink being nil (Phil Yang) 2016-07-12 00:15:26 -07:00
Apekshit Sharma a396ae773a HBASE-16044 Fix 'hbase shell' output parsing in graceful_stop.sh
Change-Id: I94b2f665105837d31281be66d620b6152c3bc9d1
2016-07-11 11:28:33 -07:00
tedyu ffd3987c54 HBASE-16147 Add ruby wrapper for getting compaction state 2016-06-30 11:01:54 -07:00
chenheng e05f527991 HBASE-16111 Truncate preserve shell command is broken 2016-06-27 15:06:51 +08:00
chenheng 68c1b34dbc HBASE-16040 Remove configuration "hbase.replication" 2016-06-24 10:41:35 +08:00
Matteo Bertozzi d9463bcce0 HBASE-15989 Remove hbase.online.schema.update.enable 2016-06-08 13:09:31 -07:00
Apekshit Sharma 15c03fd1c9 HBASE-15965
- Testing by executing a command will cover the exact path users will trigger, so its better then directly calling library functions in tests. Changing the tests to use @shell.command(:<command>, args) to execute them like it's a command coming from shell.

Norm change:
Commands should print the output user would like to see, but in the end, should also return the relevant value. This way:
- Tests can use returned value to check that functionality works
- Tests can capture stdout to assert particular kind of output user should see.
- We do not print the return value in interactive mode and keep the output clean. See Shell.command() function.

Bugs found due to this change:
- Uncovered bug in major_compact.rb with this approach. It was calling admin.majorCompact() which doesn't exist but our tests didn't catch it since they directly tested admin.major_compact()
- Enabled TestReplicationShell. If it's bad, flaky infra will take care of it.

Change-Id: I5d8af16bf477a79a2f526a5bf11c245b02b7d276
2016-06-06 17:50:22 -07:00
Apekshit Sharma 70762faa98 HBASE-15849 Simplify the way we handle runtime of commands.
Functions format_simple_command and format_and_return_simple_command are used to print runtimes right now. They are called from within every single command and use Ruby's 'yield' magic.  Instead, we can simplify it using 'command_safe' function. Since command_safe wraps all commands, we can simply time before and after we call individual command.
If a command only wants to time a part of its logic, it can set instance variables start_time and end_time accordingly which is far more simpler to understand and work with than 'yield'.

Change-Id: Ibfacf3593175af22fc4f7d80896dd2f6d7c5dde3
2016-06-03 15:50:03 -07:00