hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Yang <teddyyyy...@gmail.com>
Subject datanode failure during write? /HBase consistency guarantee
Date Mon, 11 Jul 2011 15:15:45 GMT
I'm interested in the answer to this question to get a clear
understanding of the data consistency guarantee of HBase.
if I write  a row key --- column into hbase region server, I see that
in HRegion.put() it calls the HLog.append(), which ultimately calls
DFSoutputStream.sync(),
let's say at this moment, 1 out of the 3 replica data nodes goes down,
I guess the sync() would throw an IOException, and the put() would
fail?
but if I continue to call put(), would HDFS find out that the replica
is down, and try to relocate the HLog onto another set of replica? if
so, what happens to the old set? during the interim, is it possible
that the 2 replicas that were successfully written could be visible to
clients? (for example, the current region server dies and a new one
comes up and picks up the HLog from 1 of the 2 replicas)
Thanks a lot
Yang

Mime
View raw message