[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-tabpanelfocusedCommentId=13658908#comment-13658908 ] Hudson commented on HBASE-7419: --- Integrated in HBase-0.94-security #141 (See [https://builds.apache.org/job/HBase-0.94-security/141/]) HBASE-8455 Update ExportSnapshot to reflect changes in HBASE-7419 (Revision 1478300) Result = FAILURE 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
[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-tabpanelfocusedCommentId=13650919#comment-13650919 ] Hudson commented on HBASE-7419: --- Integrated in HBase-TRUNK-on-Hadoop-2.0.0 #518 (See [https://builds.apache.org/job/HBase-TRUNK-on-Hadoop-2.0.0/518/]) HBASE-8455 Update ExportSnapshot to reflect changes in HBASE-7419 (Revision 1478297) Result = FAILURE mbertozzi : Files : * /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/snapshot/ExportSnapshot.java * /hbase/trunk/hbase-server/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
[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-tabpanelfocusedCommentId=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
[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-tabpanelfocusedCommentId=13647443#comment-13647443 ] Hudson commented on HBASE-7419: --- Integrated in hbase-0.95 #176 (See [https://builds.apache.org/job/hbase-0.95/176/]) HBASE-8455 Update ExportSnapshot to reflect changes in HBASE-7419 (Revision 1478298) Result = FAILURE mbertozzi : Files : * /hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/snapshot/ExportSnapshot.java * /hbase/branches/0.95/hbase-server/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
[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-tabpanelfocusedCommentId=13647468#comment-13647468 ] Hudson commented on HBASE-7419: --- Integrated in HBase-TRUNK #4094 (See [https://builds.apache.org/job/HBase-TRUNK/4094/]) HBASE-8455 Update ExportSnapshot to reflect changes in HBASE-7419 (Revision 1478297) Result = FAILURE mbertozzi : Files : * /hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/snapshot/ExportSnapshot.java * /hbase/trunk/hbase-server/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
[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-tabpanelfocusedCommentId=13647484#comment-13647484 ] Hudson commented on HBASE-7419: --- Integrated in hbase-0.95-on-hadoop2 #88 (See [https://builds.apache.org/job/hbase-0.95-on-hadoop2/88/]) HBASE-8455 Update ExportSnapshot to reflect changes in HBASE-7419 (Revision 1478298) Result = FAILURE mbertozzi : Files : * /hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/snapshot/ExportSnapshot.java * /hbase/branches/0.95/hbase-server/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
[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-tabpanelfocusedCommentId=13546113#comment-13546113 ] Jonathan Hsieh commented on HBASE-7419: --- +1, go for it. 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.patch, HBASE-7419-v1.patch, HBASE-7419-v2.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
[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-tabpanelfocusedCommentId=13546132#comment-13546132 ] stack commented on HBASE-7419: -- In hdfs, a path is a URI (http://en.wikipedia.org/wiki/URI_scheme). For the URI 'scheme' part rules, this is usually protocols specific and the URI parsers just do a pass-through (they are supposed to). Looking at the Path.java class to see how it handles the scheme, I see no special casing for '@' in Path.java. I was afraid it'd get interpreted somewhere in our parsing code as delimiter between username and hostname (mailto: and http: protocols). Probably best to just avoid it though if possible. '=' sounds like it will work but is hard to read without thinking equality or assignment. Regards the patch, it looks good. Are there enough tests of different filename combinations? Regexes' can surprise in interesting ways. 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.patch, HBASE-7419-v1.patch, HBASE-7419-v2.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
[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-tabpanelfocusedCommentId=13546390#comment-13546390 ] Matteo Bertozzi commented on HBASE-7419: Any suggestion on what the separator should be if not '='? at this point is just matter of picking one symbol that works, and replace it in the regex. 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.patch, HBASE-7419-v1.patch, HBASE-7419-v2.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
[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-tabpanelfocusedCommentId=13546683#comment-13546683 ] stack commented on HBASE-7419: -- [~mbertozzi] Go for it. '=' is a little ugly but it works. 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: hbase-6055, 0.96.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
[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-tabpanelfocusedCommentId=13543984#comment-13543984 ] Jonathan Hsieh commented on HBASE-7419: --- ',' is used in log names, seems reasonable to me. 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.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
[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-tabpanelfocusedCommentId=13544006#comment-13544006 ] Jonathan Hsieh commented on HBASE-7419: --- Next rev in review board? (easier to get context) The new regex's don't handle the {{_SeqId_[0-9]+}} stuff generated by bulk loads. I think this means links to bulk loaded files could fail to be recognized? (Add some in the regex tests?) {code} - public static final String REF_NAME_REGEX = ^([0-9a-f]+(?:_SeqId_[0-9]+_)?)(?:\\.(.+))?$; - private static final Pattern REF_NAME_PARSER = Pattern.compile(REF_NAME_REGEX); - - /** - * Regex strictly for references to hfilelinks. (hfile-region-table.parentEncRegion). - * Group 1 is this file's hfilelink name. Group 2 the referenced parent region name. The '.' - * char is valid in table names but group 2's regex is greedy and interprets the table names - * correctly. The _SeqId_ portion comes from bulk loaded files. - */ - public static final String REF_TO_LINK_REGEX = ^([0-9a-f]+(?:_SeqId_[0-9]+_)?-[0-9a-f]+- - + HTableDescriptor.VALID_USER_TABLE_REGEX + +)\\.([^.]+)$; {code} 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.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
[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-tabpanelfocusedCommentId=13544011#comment-13544011 ] Ted Yu commented on HBASE-7419: --- On windows, I tried to rename a file to new name which contains comma. I got error saying command syntax error. FYI 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.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
[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-tabpanelfocusedCommentId=13544072#comment-13544072 ] Jonathan Hsieh commented on HBASE-7419: --- I'm actually not clear what the concerns are about special characters outside of the hdfs context, and when pertaining to windows or web context. I assume that since we are on hdfs, characters valid there would be valid regardless if they are not in the underlaying file system. In the web case, I buy having to have to escape filenames for web lookups (no %\/@). Are these problems at the tooling level (hdfs dfs -ls), the web level or at testing? what are characters that are valid in hdfs that we should avoid, and more importantly, why? [~eclark], [~stack] you brought up the concerns about web stuff, comments? [~enis] any quick pointers for hdfs file name and windows compat issues? 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.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
[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-tabpanelfocusedCommentId=13544168#comment-13544168 ] Matteo Bertozzi commented on HBASE-7419: The link is between different table, otherwise is just a reference file. so the table name is needed 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.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
[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-tabpanelfocusedCommentId=13544285#comment-13544285 ] Enis Soztutar commented on HBASE-7419: -- I see. We can use = as a separator. On windows, linux and hdfs, it works. 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.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
[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-tabpanelfocusedCommentId=13544601#comment-13544601 ] Matteo Bertozzi commented on HBASE-7419: review here: https://reviews.apache.org/r/8841/ 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.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
[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-tabpanelfocusedCommentId=13542681#comment-13542681 ] Matteo Bertozzi commented on HBASE-7419: we use a comma ',' in the region server log folder. can we use that? 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.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
[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-tabpanelfocusedCommentId=13542685#comment-13542685 ] Matteo Bertozzi commented on HBASE-7419: http://en.wikipedia.org/wiki/Filename#Comparison_of_filename_limitations 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.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
[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-tabpanelfocusedCommentId=13541542#comment-13541542 ] Jonathan Hsieh commented on HBASE-7419: --- Stack or elliot mentioned that there was a concern that '@' would be an unhappy character for some file systems and browsing hdfs in a web browser so let's pick something else. 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.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
[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-tabpanelfocusedCommentId=13541552#comment-13541552 ] Ted Yu commented on HBASE-7419: --- If Windows is one of the file systems, here is their guideline: http://msdn.microsoft.com/en-us/library/windows/desktop/aa365247%28v=vs.85%29.aspx 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: hbase-6055, 0.96.0 Attachments: HBASE-7419-v0.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
[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-tabpanelfocusedCommentId=13539954#comment-13539954 ] Matteo Bertozzi commented on HBASE-7419: I agree, the introduction of a special character simplifies the identification of a HFileLink, and allows to remove the FileNotFoundException handling from the StoreFile. 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 Fix For: hbase-6055, 0.96.0 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