On Thu, Mar 15, 2018 at 5:39 PM, 张铎(Duo Zhang) <palomino...@gmail.com>
wrote:

>
> But for other stuffs for replication, such as the WAL files we need to
> replicate, the row key will be a peer id, and multiplies the server name,
> and maybe also the file name? This is a completely different thing. If we
> put this in meta, the row key will be messed up...
>
>
Is there some artifice that would allow us shape this info so it fit the
meta schema: e.g. a table that we do not assign (special namespace? special
tablename? hbase:replication?). Then perhaps the regions in meta have peer
as the start row.... etc.

St.Ack



> 2018-03-16 3:01 GMT+08:00 Stack <st...@duboce.net>:
>
> > On Wed, Mar 14, 2018 at 11:55 PM, OpenInx <open...@gmail.com> wrote:
> >
> > > Hi :
> > >
> > > (Paste from https://issues.apache.org/jira/browse/HBASE-20166?
> > > focusedCommentId=16399886&page=com.atlassian.jira.
> > > plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16399886)
> > >
> > > There's a really big problem here if we use table based replication to
> > > start a hbase cluster:
> > >
> > > For HMaster process, it works as following:
> > > 1. Start active master initialization .
> > > 2. Master wait rs report in .
> > > 3. Master assign meta region to one of the region servers .
> > > 4. Master create hbase:replication table if not exist.
> > >
> > >
> > We have to have a new system table? Can't we add a column family on
> > hbase:meta that keeps offsets? We've done the work to make sure
> hbase:meta
> > is up before everything else. It has its own WALs so we can split these
> > ahead of user-space WALs, and so on. We've not done the work to for
> > hbase:replication or hbase:namespace, hbase:acl... etc.
> >
> > Means more loading on hbase:meta and it is going to get bigger but I'd
> > rather work on splitting meta than on figuring how to preassign
> > miscellaneous system tables; one-per-feature.
> >
> >
> >
> > > But the RS need to finish initialize the replication source & sink
> before
> > > finish startup( and the initialization of replication source & sink
> must
> > > finish before opening region, because we need to listen the wal event,
> > > otherwise our replication may lost data), and when initialize the
> source
> > &
> > > sink , we need to read hbase:replication table which hasn't been
> avaiable
> > > because our master is waiting rs to be OK, and the rs is waiting
> > > hbase:replication to be OK ... a dead loop happen again ...
> > >
> > > After discussed with Guanghao Zhang offline, I'm considering that try
> to
> > > assign all system table to a rs which only accept regions of system
> table
> > > assignment (The rs will skip to initialize the replication source or
> sink
> > > )...
> > >
> > >
> > Can we avoid this sort of special-casing?
> >
> > St.Ack
> >
> >
> >
> > > I've tried to start a mini cluster by setting
> > > hbase.balancer.tablesOnMaster.systemTablesOnly=true
> > > & hbase.balancer.tablesOnMaster=true , it seems not work. because
> > > currently
> > > we initialize the master logic firstly, then region logic for the
> HMaster
> > > process, and it should be ...
> > >
> > >
> > > Any  suggestion  ?
> > >
> >
>

Reply via email to