You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Jerry He (JIRA)" <ji...@apache.org> on 2013/07/27 21:07:48 UTC

[jira] [Created] (HBASE-9060) EXportSnapshot job fails if target path contains percentage character

Jerry He created HBASE-9060:
-------------------------------

             Summary: EXportSnapshot job fails if target path contains percentage character
                 Key: HBASE-9060
                 URL: https://issues.apache.org/jira/browse/HBASE-9060
             Project: HBase
          Issue Type: Bug
          Components: snapshots
    Affects Versions: 0.94.10, 0.95.1
            Reporter: Jerry He
            Assignee: Jerry He
            Priority: Minor


Here is the stack trace:

hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot table1_snapshot -copy-to hdfs:///myhbasebackup/table1_snapshot
 
{code}
13/07/26 18:09:50 INFO mapred.JobClient:  map 0% reduce 0%
13/07/26 18:09:58 INFO mapred.JobClient: Task Id : attempt_201307261804_0002_m_000001_0, Status : FAILED
java.util.MissingFormatArgumentException: Format specifier ') from family1/table1=3567d8ac6cfee83dfe81c346f139fb9c-c5bc120475a54d188f30d4b621d505b1 to hdfs:/myhbase%2C'
        at java.util.Formatter.getArgument(Formatter.java:592)
        at java.util.Formatter.format(Formatter.java:561)
        at java.util.Formatter.format(Formatter.java:510)
        at java.lang.String.format(String.java:1977)
        at org.apache.hadoop.hbase.snapshot.ExportSnapshot$ExportMapper.copyData(ExportSnapshot.java:274)
        at org.apache.hadoop.hbase.snapshot.ExportSnapshot$ExportMapper.copyFile(ExportSnapshot.java:204)
        at org.apache.hadoop.hbase.snapshot.ExportSnapshot$ExportMapper.map(ExportSnapshot.java:149)
        at org.apache.hadoop.hbase.snapshot.ExportSnapshot$ExportMapper.map(ExportSnapshot.java:98)
{code}

The problem is this code in copyData():
{code}
final String statusMessage = "copied %s/" + StringUtils.humanReadableInt(inputFileSize) +
                                   " (%.3f%%) from " + inputPath + " to " + outputPath;
{code}

Since we don't know what the path may contain that may confuse the formatter, we need to pull that part out of the format string.

Also the percentage completion math seems to be wrong in the same 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