Support Questions

Find answers, ask questions, and share your expertise

How does active namenode write to journal nodes in a HA configuration?

avatar
Rising Star

I am not 100% sure how an active namenode write to Jounral nodes. Considering the folloiwng example:

 

2 namenodes(active+standby)

3 journal nodes

 

When the active namenode updates edit file, does it write 1/3 copies of the updated edits to each jn? or it write a complete copy to each jn?

 

When standby nn read the edites from jn, does it read 1/3 copy from each jn or the entire copy from each jn? If it's later, what if the edit md5 doesn't match across the jn nodes?

 

 

Thanks!

1 ACCEPTED SOLUTION

avatar
Contributor

The latter. Active NN will write every edit to all available journal nodes. A majority is confirm is required before the transaction is committed - that is, 2 out of your 3 journal nodes will have to have accepted the write.

 

In the case of the standby NN reading from the journal nodes, it will again look for a majority and discard the discrepancy.

 

I think if one out of three JN are down, and the final two don't agree, it will accept the most up to date JN's answer. But I could be completely wrong on this.

View solution in original post

1 REPLY 1

avatar
Contributor

The latter. Active NN will write every edit to all available journal nodes. A majority is confirm is required before the transaction is committed - that is, 2 out of your 3 journal nodes will have to have accepted the write.

 

In the case of the standby NN reading from the journal nodes, it will again look for a majority and discard the discrepancy.

 

I think if one out of three JN are down, and the final two don't agree, it will accept the most up to date JN's answer. But I could be completely wrong on this.