The stale-entries check shoul be cleaned-up, we have fixed some
dtm_node_delete() dtm_node_add() related issue recently
I will re-validate the requirement of stale-entries check and I will
clean-up in a another ticket.
-AVM
On 6/13/2013 12:46 PM, Ramesh Betham wrote:
> Ack. with the following comments.
>
> 1. Correct the TRACE messages (droping--> dropping; right mapping to
> cluster-id, node-id etc.)
> 2. With the below changed condition, the flow never hits the existing
> code flow that deletes the stale-entries (if any). Please check.
>
> + if ((new_node->node_id == 0) || (new_node->node_id ==
> node.node_id) ||
> + (strncmp(node.node_ip, new_node->node_ip,
> INET6_ADDRSTRLEN) == 0)) {
> + if (new_node->comm_status == true) {
>
>
> Regards,
> Ramesh.
>
> On 6/4/2013 12:52 PM, [email protected] wrote:
>> osaf/services/infrastructure/dtms/dtm/dtm_node_sockets.c | 37
>> +++++++++------
>> 1 files changed, 21 insertions(+), 16 deletions(-)
>>
>>
>> diff --git a/osaf/services/infrastructure/dtms/dtm/dtm_node_sockets.c
>> b/osaf/services/infrastructure/dtms/dtm/dtm_node_sockets.c
>> --- a/osaf/services/infrastructure/dtms/dtm/dtm_node_sockets.c
>> +++ b/osaf/services/infrastructure/dtms/dtm/dtm_node_sockets.c
>> @@ -1158,24 +1158,29 @@ int dtm_process_connect(DTM_INTERNODE_CB
>> }
>> new_node = dtm_node_get_by_id(node.node_id);
>> - /*new_node = dtm_node_get_by_node_ip((uint8_t *)node.node_ip);*/
>> + if (new_node != NULL) {
>> + if ((new_node->node_id == 0) || (new_node->node_id ==
>> node.node_id) ||
>> + (strncmp(node.node_ip, new_node->node_ip,
>> INET6_ADDRSTRLEN) == 0)) {
>> + if (new_node->comm_status == true) {
>> + if ((new_node->node_id == node.node_id) &&
>> + (strncmp(node.node_ip, new_node->node_ip,
>> INET6_ADDRSTRLEN) == 0))
>> + TRACE("DTM:node already discovered droping
>> message node_id :%u, cluster_id: %d, node_ip:%s",
>> + node.cluster_id, node.node_id,
>> node.node_ip);
>> + else
>> + LOG_WA("DTM:node duplicate discovered droping
>> message node_id :%u, cluster_id: %d, node_ip:%s",
>> + node.cluster_id, node.node_id,
>> node.node_ip);
>> + TRACE_LEAVE2("sock_desc :%d", sock_desc);
>> + } else {
>> - if (new_node != NULL) {
>> - if (((new_node->node_id == 0) || (new_node->node_id ==
>> node.node_id)) &&
>> - (strncmp(node.node_ip, new_node->node_ip,
>> INET6_ADDRSTRLEN) == 0) &&
>> - (new_node->comm_status == false)) {
>> - TRACE("DTM:new_node discovery in progress droping
>> message");
>> - TRACE_LEAVE2("sock_desc :%d", sock_desc);
>> + TRACE("DTM: discovery in progress droping message
>> node_id :%u, cluster_id: %d node_ip:%s",
>> + node.cluster_id, node.node_id, node.node_ip);
>> + TRACE_LEAVE2("sock_desc :%d", sock_desc);
>> + }
>> return sock_desc;
>> - } else if ((new_node->comm_status == true) &&
>> (new_node->node_id == node.node_id) &&
>> - (strncmp(node.node_ip, new_node->node_ip,
>> INET6_ADDRSTRLEN) == 0)) {
>> - TRACE("DTM:new_node node already discovered droping
>> message");
>> - TRACE_LEAVE2("sock_desc :%d", sock_desc);
>> - return sock_desc;
>> - } else if ((new_node->comm_status == false) &&
>> - ((new_node->node_id != node.node_id) ||
>> - (strncmp(node.node_ip, new_node->node_ip,
>> INET6_ADDRSTRLEN) != 0))) {
>> - TRACE("DTM:new_node deleting stale enty ");
>> + } else if ((new_node->comm_status == false) &&
>> ((new_node->node_id != node.node_id) ||
>> + (strncmp(node.node_ip, new_node->node_ip,
>> INET6_ADDRSTRLEN) != 0))) {
>> + TRACE("DTM: deleting stale enty node_id :%u, cluster_id:
>> %d, node_ip:%s",
>> + node.cluster_id, node.node_id, node.node_ip);
>> if (dtm_node_delete(new_node, 0) != NCSCC_RC_SUCCESS) {
>> LOG_ER("DTM :dtm_node_delete failed (recv())");
>> }
>
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel