Details
-
Improvement
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
0.2.0
-
None
-
Incompatible change, Reviewed
-
Removes HTableDescriptor from HRegionInfo. Runs a migration of catalog tables on startup.
Description
There is an HRegionInfo for every region in HBase. Currently HRegionInfo also contains the HTableDescriptor (the schema). That means we store the schema n times where n is the number of regions in the table.
Additionally, for every region of the same table that the region server has open, there is a copy of the schema. Thus it is stored in memory once for each open region.
If HRegionInfo merely contained the table name the HTableDescriptor could be stored in a separate file and easily found.
Attachments
Attachments
Issue Links
- blocks
-
HBASE-922 Bloom filters will not work if enabled after table is created and contains data
- Closed
-
HBASE-3970 Address HMaster crash/failure half way through meta migration
- Closed
-
HBASE-484 Store HRegionInfo in META and ROOT as multiple cells instead of a binary field
- Closed
- is blocked by
-
HBASE-546 Use Zookeeper in HBase
- Closed
- is duplicated by
-
HBASE-565 Move Table Schema out of HRegionInfo
- Closed
-
HBASE-4055 Client region location caches redundant HTableDescriptor's
- Closed
- is part of
-
HBASE-1816 Master rewrite
- Closed
- is related to
-
HBASE-4032 HBASE-451 improperly breaks public API HRegionInfo#getTableDesc
- Closed
-
HBASE-5204 Backward compatibility fixes for 0.92
- Closed