Mathias,

Disabling is still not done inline so you won't get feedback if it
takes time to disable your table. What takes that time is that it has
to flush all the data kept in memstore so for example if you have 20
regions in a region server and they are near full, it could take
minutes.

So maybe wait 1-2 minutes, do a flush '.META.' and major_compact
'.META.' just to be sure, and then reissue a disable. If it doesn't
work, then you may have hit the bug that blocks the release of HBase
0.20 (HBASE-1761). Or you can also try to enable it.

J-D

2009/8/17 Mathias De Maré <[email protected]>:
> Hi,
>
> I tried to disable a table using the shell, and got an Exception:
>
> hbase(main):004:0* disable 'url'
> NativeException: org.apache.hadoop.hbase.RegionException: Retries exhausted,
> it took too long to wait for the table url to be disabled.
>    from org/apache/hadoop/hbase/client/HBaseAdmin.java:406:in
> `disableTable'
>    from org/apache/hadoop/hbase/client/HBaseAdmin.java:366:in
> `disableTable'
>    from sun/reflect/NativeMethodAccessorImpl.java:-2:in `invoke0'
>    from sun/reflect/NativeMethodAccessorImpl.java:39:in `invoke'
>    from sun/reflect/DelegatingMethodAccessorImpl.java:25:in `invoke'
>    from java/lang/reflect/Method.java:597:in `invoke'
>    from org/jruby/javasupport/JavaMethod.java:298:in
> `invokeWithExceptionHandling'
>    from org/jruby/javasupport/JavaMethod.java:259:in `invoke'
>    from org/jruby/java/invokers/InstanceMethodInvoker.java:44:in `call'
>    from org/jruby/runtime/callsite/CachingCallSite.java:273:in
> `cacheAndCall'
>    from org/jruby/runtime/callsite/CachingCallSite.java:112:in `call'
>    from org/jruby/ast/CallOneArgNode.java:57:in `interpret'
>    from org/jruby/ast/NewlineNode.java:104:in `interpret'
>    from org/jruby/ast/BlockNode.java:71:in `interpret'
>    from org/jruby/internal/runtime/methods/InterpretedMethod.java:163:in
> `call'
>    from org/jruby/internal/runtime/methods/DefaultMethod.java:144:in `call'
> ... 108 levels...
>    from root/installation/hbase/bin/$_dot_dot_/bin/hirb#start:-1:in `call'
>    from org/jruby/internal/runtime/methods/DynamicMethod.java:226:in `call'
>    from org/jruby/internal/runtime/methods/CompiledMethod.java:211:in
> `call'
>    from org/jruby/internal/runtime/methods/CompiledMethod.java:71:in `call'
>    from org/jruby/runtime/callsite/CachingCallSite.java:253:in
> `cacheAndCall'
>    from org/jruby/runtime/callsite/CachingCallSite.java:72:in `call'
>    from root/installation/hbase/bin/$_dot_dot_/bin/hirb.rb:487:in
> `__file__'
>    from root/installation/hbase/bin/$_dot_dot_/bin/hirb.rb:-1:in `load'
>    from org/jruby/Ruby.java:577:in `runScript'
>    from org/jruby/Ruby.java:480:in `runNormally'
>    from org/jruby/Ruby.java:354:in `runFromMain'
>    from org/jruby/Main.java:229:in `run'
>    from org/jruby/Main.java:110:in `run'
>    from org/jruby/Main.java:94:in `main'
>    from /root/installation/hbase/bin/../bin/hirb.rb:346:in `disable'
>    from (hbase):5hbase(main):005:0>
>
> Now, it seems I can no longer access any data in that table. (For example, I
> can't do 'count 'url'' anymore.)
> It looks somewhat related to
> https://issues.apache.org/jira/browse/HBASE-1636 .
> Is there a way to still get the data out of that table? And to disable and
> enable the table, so I can change the blocksize?
>
> Mathias
>

Reply via email to