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

[hbase] Keep lazy cache of regions in client rather than an 'authoritative' list

VotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • None
    • None
    • None

    Description

      Currently, when the client gets a NotServingRegionException – usually because its in middle of being split or there has been a regionserver crash and region is being moved elsewhere – the client does a complete refresh of its cache of region locations for a table.

      Chatting with Jim about a Paul Saab upload issue from Saturday night, when tables are big comprised of regions that are splitting fast (because of bulk upload), its unlikely a client will ever be able to obtain a stable list of all region locations. Given that any update or scan requires that the list of all regions be in place before it proceeds, this can get in the way of the client succeeding when the cluster is under load.

      Chatting, we figure that it better the client holds a lazy region cache: on NSRE, figure out where that region has gone only and update the client-side cache for that entry only rather than throw out all we know of a table every time.

      Hopefully this will fix the issue PS was experiencing where during intense upload, he was unable to get/scan/hql the same table.

      Attachments

        1. 2443-v9.patch
          74 kB
          Bryan Duxbury
        2. 2443-v8.patch
          74 kB
          Bryan Duxbury
        3. 2443-v7.patch
          74 kB
          Bryan Duxbury
        4. 2443-v6.patch
          73 kB
          Bryan Duxbury
        5. 2443-v5.patch
          61 kB
          Bryan Duxbury
        6. 2443-v4.patch
          49 kB
          Bryan Duxbury
        7. 2443-v3.patch
          35 kB
          Bryan Duxbury
        8. 2443-v10.patch
          74 kB
          Bryan Duxbury

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            stack Michael Stack
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment