[Pvfs2-developers] Re: the halloween bug fixed
Sam Lang
slang at mcs.anl.gov
Tue Oct 9 09:11:30 EDT 2007
On Oct 9, 2007, at 7:42 AM, Scott Atchley wrote:
> On Oct 8, 2007, at 2:50 PM, Sam Lang wrote:
>
>>> I am not sure what you are proposing that
>>> bmi_method_addr_forget_callback() do.
>>
>> bmi_method_addr_reg_callback is called at mx.c:2290, in icon_ack,
>> where peer->mxp_exist is set to 1. It doesn't look like that
>> variable is used (checked or set) anywhere else.
>
> Correct. This is used on the server only and is used to prevent
> bmi_mx to register the same client twice.
>
>> Does cleanup/shutdown of that peer ever occur?
>
> Cleanup (freeing of data structures, etc.) only occurs at the
> direction of BMI via BMI_set_info(DROP_ADDR).
>
> If the client stops communicating and the server has no outstanding
> requests posted, the client's status will forever remain
> BMX_PEER_READY (i.e. connected).
>
> If the client stops communicating and the server has outstanding
> requests, those requests will time out and the peer status will be
> changed to BMX_PEER_DISCONNECT. The server will maintain the
> various data structures (128 bytes plus the lengths of the
> peername, the mx:// URI, and the hostname).
>
> Is it this case that you want the BMI method to notify BMI with
> bmi_method_addr_forget_callback? Or in both cases?
It sounds like it only needs to call the forget_callback in finalize
for all the peers it knows about.
>
> Assuming the client is gone forever and assuming that it
> disappeared unexpectedly (the server had pending requests), then
> this will free the 128+ bytes in bmi_mx used for that client.
>
> When a client intends to stop communicating with a server, does it
> send some kind of goodbye message to the server? If so, does the
> server call BMI_set_info(DROP_ADDR)?
In the case of tcp, the socket is closed. The server doesn't call
BMI_set_info because notification of the disconnect is within the
method. This is why the callback is necessary.
-sam
>
>> Also, is it possible for the same client node to appear as
>> multiple different peers to the server node? It sounds like the
>> answer is no, but I just want to make sure.
>>
>> -sam
>
> You are correct.
>
> Scott
>
More information about the Pvfs2-developers
mailing list