[ 
https://issues.apache.org/jira/browse/HBASE-25902?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17348838#comment-17348838
 ] 

Duo Zhang commented on HBASE-25902:
-----------------------------------

Checked our ref guide, we clearly say that you need to upgrade a region server 
first to solve the hard coded meta problem.

Please follow the instructions to see if it works? Thanks.

Instructions
Unload a region server and upgrade it to 2.1.0. With HBASE-17931 in place, the 
meta region and regions for other system tables will be moved to this region 
server immediately. If not, please move them manually to the new region server. 
This is very important because

The schema of meta region is hard coded, if meta is on an old region server, 
then the new region servers can not access it as it does not have some 
families, for example, table state.

Client with lower version can communicate with server with higher version, but 
not vice versa. If the meta region is on an old region server, the new region 
server will use a client with higher version to communicate with a server with 
lower version, this may introduce strange problems.

Rolling upgrade all other region servers.

Upgrading masters.

It is OK that during the rolling upgrading there are region server crashes. The 
1.x master can assign regions to both 1.x and 2.x region servers, and 
HBASE-19166 fixed a problem so that 1.x region server can also read the WALs 
written by 2.x region server and split them.

> 1.x to 2.3.x upgrade does not work; you must install an hbase2 that is 
> earlier than hbase-2.3.0 first
> -----------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-25902
>                 URL: https://issues.apache.org/jira/browse/HBASE-25902
>             Project: HBase
>          Issue Type: Bug
>          Components: meta, Operability
>    Affects Versions: 2.3.0, 2.4.0
>            Reporter: Michael Stack
>            Priority: Critical
>
> Making note of this issue in case others run into it. At my place of employ, 
> we tried to upgrade a cluster that was an hbase-1.2.x version to an 
> hbase-2.3.5 but it failed because meta didn't have the 'table' column family.
> Up to 2.3.0, hbase:meta was hardcoded. HBASE-12035 added the 'table' CF for 
> hbase-2.0.0. HBASE-23782 (2.3.0) undid hardcoding of the hbase:meta schema; 
> i.e. reading hbase:meta schema from the filesystem. The hbase:meta schema is 
> only created on initial install. If an upgrade over existing data, the 
> hbase-1 hbase:meta will not be suitable for hbase-2.3.x context as it will be 
> missing columnfamilies needed to run (HBASE-23055 made it so hbase:meta could 
> be altered (2.3.0) but probably of no use since Master won't come up).
> It would be a nice-to-have if a user could go from hbase1 to hbase.2.3.0 w/o 
> having to first install an hbase2 that is earlier than 2.3.0 but needs to be 
> demand before we would work on it; meantime, install an intermediate hbase2 
> version before going to hbase-2.3.0+ if coming from hbase-1.x



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

Reply via email to