Re: ykd ambiguous sessions id not set properly

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

 



Jason,
ykd is unfinished so it's highly probable that your patch is correct. If
you are interested in digging more into that code, you (patches ;) ) are
more then welcomed.

Regards,
  Honza

jason napsal(a):
> 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!
> 

_______________________________________________
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