[
https://issues.apache.org/jira/browse/HBASE-3269?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15500493#comment-15500493
]
dcswinner commented on HBASE-3269:
----------------------------------
In 0.98.8 versions,I execute:truncate_preserve at 04:00 AM. every
day,frequently i it occur the below error:
The error log is:
truncate_preserve 'ns_ztbd:tb_pis_cshopprice'
Truncating 'ns_ztbd:tb_pis_cshopprice' table (it may take a while):
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in
[jar:file:/opt/bigdata/software/hbase-0.98.8-hadoop2.4/lib/slf4j-log4j12-1.6.4.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in
[jar:file:/opt/bigdata/software/hadoop-2.4.0.4/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
- Disabling table...
- Truncating table...
- Dropping table...
ERROR: org.apache.hadoop.hbase.TableNotDisabledException:
ns_ztbd:tb_pis_cshopprice
at
org.apache.hadoop.hbase.master.HMaster.checkTableModifiable(HMaster.java:2077)
at
org.apache.hadoop.hbase.master.handler.TableEventHandler.prepare(TableEventHandler.java:83)
at org.apache.hadoop.hbase.master.HMaster.deleteTable(HMaster.java:1822)
at org.apache.hadoop.hbase.master.HMaster.deleteTable(HMaster.java:1832)
at
org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java:41471)
at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2027)
at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:108)
at
org.apache.hadoop.hbase.ipc.FifoRpcScheduler$1.run(FifoRpcScheduler.java:74)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Here is some help for this command:
Disables, drops and recreates the specified table while still maintaing the
previous region boundaries.
> HBase table truncate semantics seems broken as "disable" table is now async
> by default.
> ---------------------------------------------------------------------------------------
>
> Key: HBASE-3269
> URL: https://issues.apache.org/jira/browse/HBASE-3269
> Project: HBase
> Issue Type: Bug
> Affects Versions: 0.90.0
> Environment: RHEL5 x86_64
> Reporter: Suraj Varma
> Assignee: stack
> Priority: Critical
> Fix For: 0.90.0, 0.92.0
>
>
> The new async design for disable table seems to have caused a side effect on
> the truncate command. (IRC chat with jdcryans)
> Apparent Cause:
> "Disable" is now async by default. When truncate is called, the disable
> operation returns immediately and when the drop is called, the disable
> operation is still not completed. This results in
> HMaster.checkTableModifiable() throwing a TableNotDisabledException.
> With earlier versions, disable returned only after Table was disabled.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)