More about recovery process detail

Hi, all.

I want to learn more about the remote recovery process in ES 5.x. Through reading code, the recovery process is as following: phase1(index)->phase2(translog)->finalizeRecovery. As far as I know, operations is still allowed when doing phase2. I wonder that how those operations catch up?

Any help would be apprecicated!

mark

any help?

Those operations are sent to the recovering replica too. There's a careful dance done during recovery to ensure that the recovering replica does not miss any operations.

Thank jasontedor very much for reply :slight_smile:

Any document or guidance about this?

At this time there is not, the code is the one true source. We might write down a formally-verified model of this component of the system someday, but have much higher priority problems to solve right now.