Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-18122

Scanner id should include ServerName of region server

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.4.0, 1.3.1, 1.1.10, 1.2.6, 2.0.0
    • 1.4.0, 1.3.2, 1.1.11, 2.0.0, 1.2.7
    • None
    • None
    • Reviewed
    • Hide
      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.
      Show
      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.

    Description

      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.

      Attachments

        1. addendum.patch
          1 kB
          Phil Yang
        2. HBASE-18122.v01.patch
          4 kB
          Phil Yang
        3. HBASE-18122.v02.patch
          4 kB
          Phil Yang
        4. HBASE-18122.v03.patch
          4 kB
          Phil Yang
        5. HBASE-18122.v04.patch
          4 kB
          Phil Yang

        Issue Links

          Activity

            People

              yangzhe1991 Phil Yang
              yangzhe1991 Phil Yang
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: