[sheepdog] read/write during recovery

Dietmar Maurer dietmar at proxmox.com
Tue Jul 24 06:33:09 CEST 2012


Hi all,

first, sorry for asking this again. I would really like to understand the code,
so the following question is important for me.

How does read/write during recovery works exactly.

I first though we can simply reject reads. For writes, we can reject them
until we start object recovery. After that point we cache/log written data (but
still reject reads). When we have received the whole object we merge it with
write cache (apply write log).

But code in request.c (request_in_recovery()) seems to delay such
request, and put them on a wait queue.

Why is that necessary?

- Dietmar




More information about the sheepdog mailing list