[ https://issues.apache.org/jira/browse/HBASE-3145?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Todd Lipcon reassigned HBASE-3145: ---------------------------------- Assignee: Kazuki Ohta > hBase importtsv fails when the line contains no data. > ----------------------------------------------------- > > Key: HBASE-3145 > URL: https://issues.apache.org/jira/browse/HBASE-3145 > Project: HBase > Issue Type: Bug > Components: util > Affects Versions: 0.89.20100924 > Environment: Linux (CDH3) > Reporter: Kazuki Ohta > Assignee: Kazuki Ohta > Attachments: hbase-fix-importtsv.patch > > > I've tried to import tsv data by using importtsv tools. But the task failed > with the following errors. > 10/10/23 02:56:52 INFO mapred.JobClient: Task Id : > attempt_201010222300_0036_m_000016_2, Status : FAILED > java.lang.IllegalArgumentException: No columns to insert > at org.apache.hadoop.hbase.client.HTable.validatePut(HTable.java:682) > at org.apache.hadoop.hbase.client.HTable.doPut(HTable.java:544) > at org.apache.hadoop.hbase.client.HTable.put(HTable.java:535) > at > org.apache.hadoop.hbase.mapreduce.TableOutputFormat$TableRecordWriter.write(TableOutputFormat.java:104) > at > org.apache.hadoop.hbase.mapreduce.TableOutputFormat$TableRecordWriter.write(TableOutputFormat.java:65) > at > org.apache.hadoop.mapred.MapTask$NewDirectOutputCollector.write(MapTask.java:523) > at > org.apache.hadoop.mapreduce.TaskInputOutputContext.write(TaskInputOutputContext.java:80) > at > org.apache.hadoop.hbase.mapreduce.ImportTsv$TsvImporter.map(ImportTsv.java:241) > at > org.apache.hadoop.hbase.mapreduce.ImportTsv$TsvImporter.map(ImportTsv.java:184) > at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:144) > at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:639) > at org.apache.hadoop.mapred.MapTask.run(MapTask.java:315) > at org.apache.hadoop.mapred.Child$4.run(Child.java:217) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:396) > at > org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1063) > at org.apache.hadoop.mapred.Child.main(Child.java:211) > If the line contains invalid data, the parser should throw > BadTsvLineException. But unfortunately, the codepath throws > IllegalArgumentException for the empty line, and that wasn't caught in the > map() function. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.