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

Michael Stack updated HBASE-23055:
----------------------------------
    Release Note: 
Adds being able to edit hbase:meta table schema. For example,

hbase(main):005:0> disable 'hbase:meta'
Took 0.7362 seconds
hbase(main):006:0> alter 'hbase:meta', {NAME => 'info', DATA_BLOCK_ENCODING => 
'ROW_INDEX_V1'}
Updating all regions with the new schema...
All regions updated.
Done.
Took 1.2138 seconds
hbase(main):007:0> enable 'hbase:meta'
Took 0.7370 seconds

Queries of hbase:meta table state go via a new addition to the HBase Registry. 
Default implementation is for hbase:meta table to be ENABLED. Adds an 
implementation to ZKAsyncRegistry that queries zk mirrored table state (See 
MirroringTableStateManager). If Master crashes while hbase:meta is disabled, on 
new Master, hbase:meta will be enabled again.

Known issues are: is if you try to describe tables while hbase:meta is offline, 
you'll get scanner timeout as we read all table descriptors even if we only 
want one (TODO: refactor how descriptor is done); when hbase:meta is offline, 
other requests to meta will fail(no duh!). This feature will add some load to 
the zk ensemble as it now fields requests for hbase:meta table state (mitigated 
some by a cache of table state added to Connection).

  was:
Adds being able to edit hbase:meta table schema. For example,

hbase(main):005:0> disable 'hbase:meta'
Took 0.7362 seconds
hbase(main):006:0> alter 'hbase:meta', {NAME => 'info', DATA_BLOCK_ENCODING => 
'ROW_INDEX_V1'}
Updating all regions with the new schema...
All regions updated.
Done.
Took 1.2138 seconds
hbase(main):007:0> enable 'hbase:meta'
Took 0.7370 seconds

Queries of hbase:meta table state go via a new addition to the HBase Registry. 
Default implementation is for hbase:meta table to be ENABLED. Adds an 
implementation to ZKAsyncRegistry that queries zk mirrored table state (See 
MirroringTableStateManager).

Known issue is if you try to describe tables while hbase:meta is offline, 
you'll get scanner timeout as we read all table descriptors even if we only 
want one (TODO: refactor how descriptor is done). When hbase:meta is offline, 
other requests to meta will fail. If Master crashes while hbase:meta is 
disabled, on new Master, hbase:meta will be enabled again.


> Alter hbase:meta
> ----------------
>
>                 Key: HBASE-23055
>                 URL: https://issues.apache.org/jira/browse/HBASE-23055
>             Project: HBase
>          Issue Type: Task
>            Reporter: Michael Stack
>            Assignee: Michael Stack
>            Priority: Major
>             Fix For: 3.0.0, 2.3.0
>
>
> hbase:meta is currently hardcoded. Its schema cannot be change.
> This issue is about allowing edits to hbase:meta schema. It will allow our 
> being able to set encodings such as the block-with-indexes which will help 
> quell CPU usage on host carrying hbase:meta. A dynamic hbase:meta is first 
> step on road to being able to split meta.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to