This is an automated email from the ASF dual-hosted git repository.
zhangduo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/master by this push:
new e911bb7 HBASE-23134 Enable_all and Disable_all table by Regex fail
from Shell (#698)
e911bb7 is described below
commit e911bb7e21a2dad6f2e595868914533ae731d0da
Author: Karthik Palanisamy <[email protected]>
AuthorDate: Tue Oct 8 03:16:47 2019 -0700
HBASE-23134 Enable_all and Disable_all table by Regex fail from Shell (#698)
Signed-off-by: Duo Zhang <[email protected]>
---
hbase-shell/src/main/ruby/hbase/admin.rb | 12 ++++++------
hbase-shell/src/test/ruby/hbase/admin_test.rb | 16 ++++++++++++++++
2 files changed, 22 insertions(+), 6 deletions(-)
diff --git a/hbase-shell/src/main/ruby/hbase/admin.rb
b/hbase-shell/src/main/ruby/hbase/admin.rb
index 6658caf..7b31ef8 100644
--- a/hbase-shell/src/main/ruby/hbase/admin.rb
+++ b/hbase-shell/src/main/ruby/hbase/admin.rb
@@ -327,15 +327,15 @@ module Hbase
def enable_all(regex)
pattern = Pattern.compile(regex.to_s)
failed = java.util.ArrayList.new
- admin.listTableNames(pattern).each do |table_name|
+ @admin.listTableNames(pattern).each do |table_name|
begin
- admin.enableTable(table_name)
+ @admin.enableTable(table_name)
rescue java.io.IOException => e
puts "table:#{table_name}, error:#{e.toString}"
failed.add(table_name)
end
end
- @failed
+ failed
end
#----------------------------------------------------------------------------------------------
@@ -351,15 +351,15 @@ module Hbase
def disable_all(regex)
pattern = Pattern.compile(regex.to_s)
failed = java.util.ArrayList.new
- admin.listTableNames(pattern).each do |table_name|
+ @admin.listTableNames(pattern).each do |table_name|
begin
- admin.disableTable(table_name)
+ @admin.disableTable(table_name)
rescue java.io.IOException => e
puts "table:#{table_name}, error:#{e.toString}"
failed.add(table_name)
end
end
- @failed
+ failed
end
#---------------------------------------------------------------------------------------------
diff --git a/hbase-shell/src/test/ruby/hbase/admin_test.rb
b/hbase-shell/src/test/ruby/hbase/admin_test.rb
index 7568c24..cc90fcf 100644
--- a/hbase-shell/src/test/ruby/hbase/admin_test.rb
+++ b/hbase-shell/src/test/ruby/hbase/admin_test.rb
@@ -418,6 +418,22 @@ module Hbase
#-------------------------------------------------------------------------------
+ define_test 'enable and disable tables by regex' do
+ @t1 = 't1'
+ @t2 = 't11'
+ @regex = 't1.*'
+ command(:create, @t1, 'f')
+ command(:create, @t2, 'f')
+ admin.disable_all(@regex)
+ assert(command(:is_disabled, @t1))
+ assert(command(:is_disabled, @t2))
+ admin.enable_all(@regex)
+ assert(command(:is_enabled, @t1))
+ assert(command(:is_enabled, @t2))
+ end
+
+
#-------------------------------------------------------------------------------
+
define_test "list_regions should fail for disabled table" do
drop_test_table(@create_test_name)
admin.create(@create_test_name, 'a')