[
https://issues.apache.org/jira/browse/HBASE-27602?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Duo Zhang resolved HBASE-27602.
-------------------------------
Fix Version/s: 2.6.0
3.0.0-alpha-4
2.4.17
2.5.4
Hadoop Flags: Reviewed
Resolution: Fixed
Pushed to branch-2.4+.
Thanks [~tangtianhang] for contributing!
> Remove the impact of operating env on testHFileCleaning
> -------------------------------------------------------
>
> Key: HBASE-27602
> URL: https://issues.apache.org/jira/browse/HBASE-27602
> Project: HBase
> Issue Type: Bug
> Components: test
> Reporter: tianhang tang
> Assignee: tianhang tang
> Priority: Major
> Fix For: 2.6.0, 3.0.0-alpha-4, 2.4.17, 2.5.4
>
>
> TestHFileCleaner#testHFileCleaning failed on my local, with this error:
> {code:java}
> 2023-01-31T19:05:14,453 ERROR [hfile_cleaner-dir-scan-pool-0]
> mob.ManualMobMaintHFileCleaner(87): Failed to determine mob status of
> 'hdfs://localhost:59285/user/tianhang.tang/test-data/01a0d8a0-6306-7725-b63a-5debcab8cf57/archive/someHFileThatWouldBeAUUID.1675163114186',
> keeping it just in case.
> java.lang.IllegalArgumentException: Illegal character <.> at 8. Namespaces
> may only contain 'alphanumeric characters' from any language and digits:
> tianhang.tang
> at
> org.apache.hadoop.hbase.TableName.isLegalNamespaceName(TableName.java:221)
> ~[classes/:?]
> at
> org.apache.hadoop.hbase.TableName.isLegalNamespaceName(TableName.java:196)
> ~[classes/:?]
> at org.apache.hadoop.hbase.TableName.<init>(TableName.java:316)
> ~[classes/:?]
> at
> org.apache.hadoop.hbase.TableName.createTableNameIfNecessary(TableName.java:349)
> ~[classes/:?]
> at org.apache.hadoop.hbase.TableName.valueOf(TableName.java:387)
> ~[classes/:?]
> at
> org.apache.hadoop.hbase.util.CommonFSUtils.getTableName(CommonFSUtils.java:440)
> ~[classes/:?]
> at
> org.apache.hadoop.hbase.mob.ManualMobMaintHFileCleaner.isFileDeletable(ManualMobMaintHFileCleaner.java:62)
> ~[classes/:?]
> at
> org.apache.hbase.thirdparty.com.google.common.collect.Iterators$5.computeNext(Iterators.java:673)
> ~[hbase-shaded-miscellaneous-4.1.4.jar:4.1.4]
> at
> org.apache.hbase.thirdparty.com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:146)
> ~[hbase-shaded-miscellaneous-4.1.4.jar:4.1.4]
> at
> org.apache.hbase.thirdparty.com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:141)
> ~[hbase-shaded-miscellaneous-4.1.4.jar:4.1.4]
> at
> org.apache.hbase.thirdparty.com.google.common.collect.Iterators$ConcatenatedIterator.hasNext(Iterators.java:1391)
> ~[hbase-shaded-miscellaneous-4.1.4.jar:4.1.4]
> at
> org.apache.hadoop.hbase.master.cleaner.HFileCleaner.deleteFiles(HFileCleaner.java:194)
> ~[classes/:?]
> at
> org.apache.hadoop.hbase.master.cleaner.CleanerChore.checkAndDeleteFiles(CleanerChore.java:391)
> ~[classes/:?]
> at
> org.apache.hadoop.hbase.master.cleaner.CleanerChore.lambda$traverseAndDelete$1(CleanerChore.java:483)
> ~[classes/:?]
> at
> org.apache.hadoop.hbase.master.cleaner.CleanerChore.deleteAction(CleanerChore.java:565)
> ~[classes/:?]
> at
> org.apache.hadoop.hbase.master.cleaner.CleanerChore.traverseAndDelete(CleanerChore.java:483)
> ~[classes/:?]
> at
> org.apache.hadoop.hbase.master.cleaner.CleanerChore.lambda$chore$0(CleanerChore.java:258)
> ~[classes/:?]
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
> ~[?:?]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
> ~[?:?]
> at java.lang.Thread.run(Thread.java:833) ~[?:?]
> {code}
> That's because the mocked dir is too simple, need to add a whole
> namespace/table/region path.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)