hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Phil Yang (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-18122) Scanner id should include ServerName of region server
Date Wed, 31 May 2017 07:51:05 GMT

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

Phil Yang updated HBASE-18122:
      Resolution: Fixed
    Hadoop Flags: Reviewed
    Release Note: 
The scanner id is not from 1 anymore.
The first 32 bits are MurmurHash32 of ServerName string "host,port,ts". The ServerName contains
both host, port, and start timestamp so it can prevent collision. The lowest 32bit is generated
by atomic int.
          Status: Resolved  (was: Patch Available)

Pushed to all branches and pushed addendum patch to master.
Thanks all for reviewing.

> Scanner id should include ServerName of region server
> -----------------------------------------------------
>                 Key: HBASE-18122
>                 URL: https://issues.apache.org/jira/browse/HBASE-18122
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.0.0, 1.4.0, 1.3.1, 1.1.10, 1.2.6
>            Reporter: Phil Yang
>            Assignee: Phil Yang
>             Fix For: 2.0.0, 1.4.0, 1.3.2, 1.1.11, 1.2.7
>         Attachments: addendum.patch, HBASE-18122.v01.patch, HBASE-18122.v02.patch, HBASE-18122.v03.patch,
> Now the scanner id is a long number from 1 to max in a region server. Each new scanner
will have a scanner id.
> If a client has a scanner whose id is x, when the RS restart and the scanner id is also
incremented to x or a little larger, there will be a scanner id collision.
> So the scanner id should now be same during each time the RS restart. We can add the
start timestamp as the highest several bits in scanner id uint64.
> And because HBASE-18121 is not easy to fix and there are many clients with old version.
We can also encode server host:port into the scanner id.
> So we can use ServerName.

This message was sent by Atlassian JIRA

View raw message