nyl3532016 commented on pull request #1629:
URL: https://github.com/apache/hbase/pull/1629#issuecomment-624066446
> Looks good, It actually addressed the issue for HBASE-24316. Let me put up
an unitest as I planned to do for HBASE-24316. Mind put the following code in
as well? (Please review first, :))
>
> ```
> diff --git
a/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
b/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
> index ac79e8aaff..e345483351 100644
> ---
a/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
> +++
b/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
> @@ -1904,6 +1904,16 @@ public class MetaTableAccessor {
> qualifiers.add(qualifier);
> delete.addColumns(getCatalogFamily(), qualifier,
HConstants.LATEST_TIMESTAMP);
> }
> +
> + // There will be race condition that a
GCMultipleMergedRegionsProcedure is scheduled while
> + // the previous GCMultipleMergedRegionsProcedure is still going on,
in this case, the second
> + // GCMultipleMergedRegionsProcedure could delete the merged region by
accident!
> + if (qualifiers.isEmpty()) {
> + LOG.info("No merged qualifiers for region " +
mergeRegion.getRegionNameAsString() +
> + " in meta table, they are cleaned up already, Skip.");
> + return;
> + }
> +
> ```
Yes, looks good.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]