hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Esteban Gutierrez (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-18024) HRegion#initializeRegionInternals should not re-create .hregioninfo file when the region directory no longer exists
Date Thu, 10 Aug 2017 17:39:00 GMT

     [ https://issues.apache.org/jira/browse/HBASE-18024?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Esteban Gutierrez updated HBASE-18024:
--------------------------------------
    Attachment: HBASE-18024.004.patch

Thanks for the quick review [~tedyu]. I don't think there is any reason to print just the
replica ID since to {{HRegionInfo.toString()}} already does that:

{code}
public String toString() {
    return "{ENCODED => " + getEncodedName() + ", " +
      HConstants.NAME + " => '" + Bytes.toStringBinary(this.regionName)
      + "', STARTKEY => '" +
      Bytes.toStringBinary(this.startKey) + "', ENDKEY => '" +
      Bytes.toStringBinary(this.endKey) + "'" +
      (isOffline()? ", OFFLINE => true": "") +
      (isSplit()? ", SPLIT => true": "") +
      ((replicaId > 0)? ", REPLICA_ID => " + replicaId : "") + "}";
  }
{code}

New patch only adds some more logging in debug mode and typo in test.

> HRegion#initializeRegionInternals should not re-create .hregioninfo file when the region
directory no longer exists
> -------------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-18024
>                 URL: https://issues.apache.org/jira/browse/HBASE-18024
>             Project: HBase
>          Issue Type: Bug
>          Components: Region Assignment, regionserver
>    Affects Versions: 2.0.0, 1.4.0, 1.3.1, 1.2.5
>            Reporter: Esteban Gutierrez
>            Assignee: Esteban Gutierrez
>         Attachments: HBASE-18024.001.patch, HBASE-18024.002.patch, HBASE-18024.003.patch,
HBASE-18024.004.patch
>
>
> When a RegionSever attempts to open a region, during initialization the RS tries to open
the {{<hbase.root.dir>/data/<table>/<region>/.hregioninfo}} file, however
if the {{.hregioninfofile}} doesn't exist, the RegionServer will create a new one on {{HRegionFileSystem#checkRegionInfoOnFilesystem}}.
A side effect of that tools like hbck will incorrectly assume an inconsistency due the presence
of this new {{.hregioninfofile}}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message