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
Attachments
Issue Links
- depends upon
-
HBASE-274 Add to MapFile a getClosest that returns key that comes just-before if key not present (Currently does just-after only).
- Closed