You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Hudson (JIRA)" <ji...@apache.org> on 2013/05/02 13:08:17 UTC
[jira] [Commented] (HBASE-7419) revisit hfilelink file name format.
[ https://issues.apache.org/jira/browse/HBASE-7419?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13647441#comment-13647441 ]
Hudson commented on HBASE-7419:
-------------------------------
Integrated in HBase-0.94 #973 (See [https://builds.apache.org/job/HBase-0.94/973/])
HBASE-8455 Update ExportSnapshot to reflect changes in HBASE-7419 (Revision 1478300)
Result = SUCCESS
mbertozzi :
Files :
* /hbase/branches/0.94/src/main/java/org/apache/hadoop/hbase/snapshot/ExportSnapshot.java
* /hbase/branches/0.94/src/test/java/org/apache/hadoop/hbase/snapshot/TestExportSnapshot.java
> revisit hfilelink file name format.
> -----------------------------------
>
> Key: HBASE-7419
> URL: https://issues.apache.org/jira/browse/HBASE-7419
> Project: HBase
> Issue Type: Sub-task
> Components: Client, master, regionserver, snapshots, Zookeeper
> Reporter: Jonathan Hsieh
> Assignee: Matteo Bertozzi
> Fix For: 0.95.0
>
> Attachments: HBASE-7419-v0.patch, HBASE-7419-v1.patch, HBASE-7419-v2.patch, HBASE-7419-v3.patch
>
>
> Valid table names are concatted with a '.' to a valid regions names is also a valid table name, and lead to the incorrect interpretation.
> {code}
> true hfile name constraints: [0-9]+(?:_SeqID_[0-9]+)?
> region name constraints : [a-f0-9]{16} (but we currently just use [a-f0-9]+.)
> table name constraints : [a-zA-Z0-9_][a-zA-Z0-9_.-]*
> {code}
> Notice that the table name constraints completely covers all region name constraints and true hfile name constraints. (a valid hfile name is a valid part of a table name, and a valid enc region name is a valid part of a table name.
> Currently the hfilelink filename convention is <hfile>-<region>-<table>. Unfortunately, making a ref to this uses the name <hfile>-<region>-<table>.<parentregion> -- the contactnation of <table>.<parentregion> is a valid table name used to get interpreted as such. The fix in HBASE-7339 requires a FileNotFoundException before going down the hfile link resolution path.
> Regardless of what we do, we need to add some char invalid for table names to the hfilelink or reference filename convention.
> Suggestion: if we changed the order of the hfile-link name we could avoid some of the confusion -- <table>@<region>-<hfile>.<parentregion> (or some other separator char than '@') could be used to avoid handling on the initial filenotfoundexception but I think we'd still need a good chunk of the logic to handle opening half-storefile reader throw a hfilelink.
--
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