Hello,

I attempted HBase replication for the first time and am trying to
understand how it works.

I have three HBase clusters each with their own ZK ensemble, A, B, C. I
wanted to have complete acyclical replication between all 3 clusters, so I
added B as a peer of A, C as a peer of B, A as a peer of C. I enabled
replications on the appropriate table (which were empty). I set
hbase.replication=true in all 3 hbase-site.xml and restarted all 3
clusters.

So, I tried a few PUTs in each cluster's table. The PUTs would not get
replicated; they stayed where they got upserted. There was no other traffic
going to these tables.

However, and this is where the behavior gets bizarre (for me) ... if I did
something to trigger a restart of regions in some way, such as calling a
no-op ALTER TABLE statement, then all the data got replicated just fine and
as expected, and all three clusters have a consistent view. But add in a
few more rows and nothing gets replicated until I do something to restart
the regions. Something to do with memstore flushes, maybe?

Is this expected behavior, or have I set something up incorrectly?

Thanks,
James

Reply via email to