MDS: what's the purpose for LogEvent with empty metablob?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi, everyone:
what's the purpose for LogEvent with empty metablob?
For example in link/unlink operation cross two active mds, the
procedure may look like below:
1. master send PREPARE to slave
2. slave receives PREPARE, and journal an ESlaveUpdate::OP_PREPARE,
then responds ACK to master
3. master receives ACK and journal an EUpdate, then send OP_FINISH to slave
4. slave receives OP_FINISH and journal ESlaveUpdate::OP_COMMIT, then
send OP_COMMIT to master
5. master receives OP_COMMIT and journal an ECommitted
Why logevents in step 4 and 5 are necessary? Both of them have empty
metablob. I guess these two logevents are originally used for a scene
that crashes happen, but actually it seems not necessary. For example,
if cash happens, after failed mds are brought up again, in resolve
stage, master will resend OP_FINISH to slave, then things will
continue as expected.

Any tips about this question are appreciated. Thanks!
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx



[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux