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