ykd ambiguous sessions id not set properly

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

 



Hi All,

It seems that I found a bug of ykd. By reviewing the code of ykd, I
can not find any place where the
ykd_state.ambiguous_sessions[ykd_state.ambiguous_sessions_entries].session_id
got be set to a vaid value. But compute() uses it to calculate the
ambiguous_sessions_max array. I have read the paper of ykd and I think
it should be initialized every time when ykd finish its send_state
step and before sending the ATTEMPT message. So the patch is as
following:


diff -ruNp corosync-1.4.5-orig/exec/vsf_ykd.c corosync-1.4.5/exec/vsf_ykd.c
--- corosync-1.4.5-orig/exec/vsf_ykd.c  2013-03-14 20:31:57.621979531 +0800
+++ corosync-1.4.5/exec/vsf_ykd.c       2013-03-14 20:31:45.447914042 +0800
@@ -425,6 +425,7 @@ static void ykd_deliver_fn (
                                        memcpy
(ykd_state.ambiguous_sessions[ykd_state.ambiguous_sessions_entries].member_list,
                                                ykd_view_list, sizeof
(unsigned int) * ykd_view_list_entries);

ykd_state.ambiguous_sessions[ykd_state.ambiguous_sessions_entries].member_list_entries
= ykd_view_list_entries;
+
ykd_state.ambiguous_sessions[ykd_state.ambiguous_sessions_entries].session_id
= ykd_state.session_id;

ykd_state.ambiguous_sessions_entries += 1;
                                        ykd_attempt_send();
                                }


I am not very good at this dynamic voting algorithms, please help to
take a look at this problem. Thank you!

-- 
Yours,
Jason
_______________________________________________
discuss mailing list
discuss@xxxxxxxxxxxx
http://lists.corosync.org/mailman/listinfo/discuss


[Index of Archives]     [Linux Clusters]     [Corosync Project]     [Linux USB Devel]     [Linux Audio Users]     [Photo]     [Yosemite News]    [Yosemite Photos]    [Linux Kernel]     [Linux SCSI]     [X.Org]

  Powered by Linux