Project

General

Profile

Bug #7515

Synchronization uses stale nodelist when establishing new MN client connections

Added by Robert Waltz about 6 years ago. Updated about 6 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
d1_synchronization
Target version:
Start date:
2015-12-07
Due date:
% Done:

100%

Milestone:
CCI-2.0
Product Version:
2.0.1
Story Points:
Sprint:

Description

NodeCommObjectListHarvestFactory began using D1Client.getMN(mnNodeId) - get the MNode by NodeReference
rather than D1Client.getMN(mnNode.getBaseURL()) - get the MNode by BaseURL
during the upgrade to V2.

Using the NodeReference relies on a statically cached nodeList initialzed by the first call to D1Client.

Using the BaseURL constructs a new MNode regardless of the cached nodeList.


Related issues

Related to Infrastructure - Bug #7523: D1Client no longer updates stale NodeList In Progress 2015-12-10

Associated revisions

Revision 17137
Added by Rob Nahf about 6 years ago

fixes #7515. replaced D1Client.getMN(NodeId) with D1Client.getMN(basUrl), because the static NodeList in D1Client can get stale.

Revision 17137
Added by Rob Nahf about 6 years ago

fixes #7515. replaced D1Client.getMN(NodeId) with D1Client.getMN(basUrl), because the static NodeList in D1Client can get stale.

Revision 17142
Added by Rob Nahf about 6 years ago

fixes #7515. replaced D1Client.getMN(NodeId) with D1Client.getMN(basUrl), because the static NodeList in D1Client can get stale.

Revision 17142
Added by Rob Nahf about 6 years ago

fixes #7515. replaced D1Client.getMN(NodeId) with D1Client.getMN(basUrl), because the static NodeList in D1Client can get stale.

History

#1 Updated by Rob Nahf about 6 years ago

refactored the synchronization code to avoid having D1Client dereference the MemberNode, since we already have the Node object via direct call to the LDAP tables via NodeRegistryQueryService.

using D1Client.getMNode(String baseUrl) instead. It will side step the stale NodeList issue.

Caveat: submitting a bug for D1Client not having adequate support for refreshing nodeLists. It does have the method D1Client.setNodeLocator() that supports refresh, but auto-refresh is not built in.

#2 Updated by Rob Nahf about 6 years ago

  • Related to Bug #7523: D1Client no longer updates stale NodeList added

#3 Updated by Rob Nahf about 6 years ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100

Applied in changeset d1-python:d1_python|r17137.

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 14.8 MB)