Re: MDS: what's the purpose of using LogEvent with empty metablob?

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

 



On Sun, Apr 12, 2020 at 5:19 AM Xinying Song <songxinying.ftd@xxxxxxxxx> wrote:
>
> Hi, cephers:
> What's the purpose of using LogEvent with empty metablob?
> For example in link/unlink operation cross two active mds,
> when slave receives OP_FINISH it will write an ESlaveUpdate::OP_COMMIT
> to the journal, then
> send OP_COMMITTED to master. When master receives OP_COMMITTED it will
> write an ECommitted to the journal then allow previously logged
> journal to be trimmed.
>
> Why are these two logevents necessary?
> I guess they are originally used for a scene that crashes happen,
> but in my opinion 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.

I don't remember the details of these transactions off the top of my
head, but it sounds like you just answered your question: how would
the master know it needs to tell the slave things are over or not, if
it doesn't commit that it told the slave things are over?
If we don't commit something indicating a finish, we'd need to
remember the transaction forever, which would be bad.
-Greg

>
> Could anyone give some tips on this doubt?
>
> Sincerely thanks!
> _______________________________________________
> ceph-users mailing list -- ceph-users@xxxxxxx
> To unsubscribe send an email to ceph-users-leave@xxxxxxx
>
_______________________________________________
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