Changeset 5878
- Timestamp:
- Aug 12, 2009, 10:43:54 AM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
source/ariba/overlay/BaseOverlay.cpp
r5876 r5878 116 116 // search for a descriptor that is already up 117 117 BOOST_FOREACH( LinkDescriptor* lp, links ) 118 if (lp->autolink && lp->remoteNode == node && lp->service == service && lp->up )118 if (lp->autolink && lp->remoteNode == node && lp->service == service && lp->up && lp->keepAliveMissed == 0) 119 119 return lp; 120 120 // if not found, search for one that is about to come up... 121 121 BOOST_FOREACH( LinkDescriptor* lp, links ) 122 if (lp->autolink && lp->remoteNode == node && lp->service == service )122 if (lp->autolink && lp->remoteNode == node && lp->service == service && lp->keepAliveMissed == 0 ) 123 123 return lp; 124 124 return NULL; … … 154 154 if (ld->keepAliveMissed > 4) { 155 155 logging_info( "Link connection request is stale, closing: " << ld ); 156 ld->relaying = false;157 156 oldlinks.push_back( ld ); 158 157 continue; … … 183 182 if (ld->keepAliveMissed >= 4) { 184 183 logging_info( "Link is stale, closing: " << ld ); 185 ld->relaying = false;186 184 oldlinks.push_back( ld ); 187 185 continue; … … 192 190 // drop links 193 191 BOOST_FOREACH( const LinkDescriptor* ld, oldlinks ) { 194 /*195 vector<LinkID>::iterator it = std::find(196 bootstrapLinks.begin(), bootstrapLinks.end(), ld->communicationId);197 198 if (!ld->communicationId.isUnspecified() && it != bootstrapLinks.end() ){199 logging_info( "Not dropping initiator link: " << ld );200 continue;201 }202 */203 192 logging_info( "Link timed out. Dropping " << ld ); 193 ld->relaying = false; 204 194 dropLink( ld->overlayId ); 205 195 } … … 402 392 || ld->relayed 403 393 || !message->isRelayed() 394 || !message->getService() == OverlayInterface::OVERLAY_SERVICE_ID 404 395 || message->getSourceNode()==nodeId ) return; 405 396
Note:
See TracChangeset
for help on using the changeset viewer.