Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TopologyManager's nodesOnHost map gets corrupted after several connection/disconnection #2384

Closed
fviale opened this issue Nov 23, 2015 · 1 comment

Comments

@fviale
Copy link
Member

fviale commented Nov 23, 2015

Apparently, the synchronization on the topology variable is not enough, and, probably due to concurrency issues, the nodesOnHost map reaches an illegal state, which prevents afterwards new Nodes from being added to the topology.

The error printed is the following:

[2015-11-22 12:14:58,693 WARN    o.o.p.r.n.RMNodeConfigurator] Cannot properly configure the node pnp://172.16.11.227:1100/PA-AGENT_NODE because of an error during configuration phase
java.util.NoSuchElementException
    at java.util.LinkedList$ListItr.next(LinkedList.java:890)
    at org.ow2.proactive.resourcemanager.selection.topology.TopologyManager.addNode(TopologyManager.java:150)
    at org.ow2.proactive.resourcemanager.nodesource.RMNodeConfigurator.configureNode(RMNodeConfigurator.java:107)
    at sun.reflect.GeneratedMethodAccessor565.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.objectweb.proactive.core.mop.MethodCall.execute(MethodCall.java:353)
    at org.objectweb.proactive.core.body.request.RequestImpl.serveInternal(RequestImpl.java:214)
    at org.objectweb.proactive.core.body.request.RequestImpl.serve(RequestImpl.java:160)
    at org.objectweb.proactive.core.body.BodyImpl$ActiveLocalBodyStrategy.serveInternal(BodyImpl.java:552)
    at org.objectweb.proactive.core.body.BodyImpl$ActiveLocalBodyStrategy.serve(BodyImpl.java:485)
    at org.objectweb.proactive.core.body.AbstractBody.serve(AbstractBody.java:426)
    at org.objectweb.proactive.Service.serve(Service.java:125)
    at org.ow2.proactive.resourcemanager.nodesource.RMNodeConfigurator.runActivity(RMNodeConfigurator.java:143)
    at org.objectweb.proactive.core.body.ActiveBody.run(ActiveBody.java:175)
    at java.lang.Thread.run(Thread.java:745)
fviale added a commit that referenced this issue Nov 25, 2015
TopologyManager's nodesOnHost map gets corrupted after several connection/disconnection #2384
fviale added a commit that referenced this issue Nov 25, 2015
…connection/disconnection

- replaced LinkedList with LinkedHashSet (avoids adding the same Node several time)
- added defensive checks.
(cherry picked from commit 8772cec)
fviale added a commit that referenced this issue Nov 25, 2015
- added more debug information
- initialize distance map
- set topology distance enabled in tests
(cherry picked from commit 16f7925)
fviale added a commit that referenced this issue Nov 25, 2015
- sonar reviews
(cherry picked from commit 0e0ab77)
fviale added a commit that referenced this issue Nov 25, 2015
- added concurrency unit test
(cherry picked from commit 589dacf)
@fviale fviale added this to the 7.0.0 milestone Jan 29, 2016
@fviale
Copy link
Member Author

fviale commented Jan 29, 2016

The customer did not report any more occurence of this issue, so it can be closed

@fviale fviale closed this as completed Jan 29, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant