Aleksandr Shulman created HBASE-8619:
----------------------------------------
Summary: [HBase Client]: Improve client to retry if master is down
when requesting getHTableDescriptor
Key: HBASE-8619
URL: https://issues.apache.org/jira/browse/HBASE-8619
Project: HBase
Issue Type: Bug
Components: Client
Affects Versions: 0.94.8
Reporter: Aleksandr Shulman
Assignee: Elliott Clark
Priority: Minor
Fix For: 0.94.8
In our rolling upgrade testing, running ImportTsv failed in the job submission
phase when the master was down. This was when the master was failing over to
the backup master. In this case, a retry would have been helpful and made sure
that the job would get submitted.
A good solution would be to refresh the master information before placing the
call to getHTableDescriptor.
Command:
{code} sudo -u hbase hbase org.apache.hadoop.hbase.mapreduce.ImportTsv
-Dimporttsv.columns=HBASE_ROW_KEY,c1,c2,c3
-Dimporttsv.bulk.output=/user/hbase/storeFiles2_2/import2_table1369439156
import2_table1369439156 /user/hbase/tsv2{code}
Here is the stack trace:
{code} 13/05/24 16:55:49 INFO compress.CodecPool: Got brand-new compressor
[.deflate]
16:45:44 Exception in thread "main"
java.lang.reflect.UndeclaredThrowableException
16:45:44 at $Proxy7.getHTableDescriptors(Unknown Source)
16:45:44 at
org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getHTableDescriptor(HConnectionManager.java:1861)
16:45:44 at
org.apache.hadoop.hbase.client.HTable.getTableDescriptor(HTable.java:440)
16:45:44 at
org.apache.hadoop.hbase.mapreduce.HFileOutputFormat.configureCompression(HFileOutputFormat.java:458)
16:45:44 at
org.apache.hadoop.hbase.mapreduce.HFileOutputFormat.configureIncrementalLoad(HFileOutputFormat.java:375)
16:45:44 at
org.apache.hadoop.hbase.mapreduce.ImportTsv.createSubmittableJob(ImportTsv.java:280)
16:45:44 at
org.apache.hadoop.hbase.mapreduce.ImportTsv.main(ImportTsv.java:424)
16:45:44 Caused by: java.io.IOException: Call to
hbase-rolling-6.ent.cloudera.com/10.20.186.99:22001 failed on local exception:
java.io.EOFException
16:45:44 at
org.apache.hadoop.hbase.ipc.HBaseClient.wrapException(HBaseClient.java:1030)
16:45:44 at
org.apache.hadoop.hbase.ipc.HBaseClient.call(HBaseClient.java:999)
16:45:44 at
org.apache.hadoop.hbase.ipc.WritableRpcEngine$Invoker.invoke(WritableRpcEngine.java:86)
16:45:44 ... 7 more
16:45:44 Caused by: java.io.EOFException
16:45:44 at java.io.DataInputStream.readInt(DataInputStream.java:375)
16:45:44 at
org.apache.hadoop.hbase.ipc.HBaseClient$Connection.receiveResponse(HBaseClient.java:646)
16:45:44 at
org.apache.hadoop.hbase.ipc.HBaseClient$Connection.run(HBaseClient.java:580){code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira