<HTML><BODY>
On 08/12/2011 03:38 PM, Adam Grossman wrote:<BR>
> hello,<BR>
><BR>
> i am using version 4.1.0 on fedora 15. i follow these steps:<BR>
><BR>
> Machine A & B: Created a spread config with one segment, machines A and<BR>
> B in the segment<BR>
> Machine A & B: Ran a program which joins a group (both machines join the<BR>
> same group) and then in an infinite loop, sends out a message saying<BR>
> "hello from <machine name>" , reads in any incoming messaging, and<BR>
> sleeps for 1 second.<BR>
> Machine A & B: Programs receive all messages<BR>
> Machine A: Remove Machine B from the configuration, and use spmonitor to<BR>
> reload the configuration<BR>
> Machine A: core dumps with the error: "G_compare_proc_ids_by_conf:<BR>
> Assertion `ia > -1' failed"<BR>
><BR>
> this only happens if under these exact conditions. is this a bug, or i<BR>
> am handling this incorrectly? i was hoping that any still incoming<BR>
> messages from the removed daemons would just be ignored. if i am<BR>
> handling this incorrectly, would a solution be, any way to resolve<BR>
> this? since spread is a single thread, i can't view it as race<BR>
> condition or anything that some simple semaphores/mutexes would solve.<BR>
><BR>
<BR>
i have researched this a bit further, and the problem seems to be when <BR>
spread sends out a message to the daemon that has been removed, it <BR>
can't, so it tries to remove it (by calling G_remove_daemon). that is <BR>
where assertion fails, because the daemon is not in the config struct.<BR>
<BR>
There is evidently some structure that is not cleared out when a config <BR>
is reloaded with removed daemons. i think the solution would be:<BR>
1. if the config reload, go through the new and old and remove any <BR>
daemons that are not in the new from the other settings<BR>
2. if G_remove_daemon does not find a daemon in config, remove it from <BR>
the other settings.<BR>
<BR>
the issue is, i do not know what those other settings are, and how to <BR>
remove them...<BR>
<BR>
thank you,<BR>
-=- adam grossman<BR>
<BR>
<BR>
<span style="font-family:Arial; Font-size:10.0pt">
<hr width="100%">
This email message has been delivered safely and archived online by Mimecast.<BR>
For more information please visit <a href="http://www.mimecast.com">http://www.mimecast.com</a>
<hr width="100%">
</span>
</BODY></HTML>