NodeImpl startComposite forgets about a composite if there is a failure on start --------------------------------------------------------------------------------
Key: TUSCANY-4016 URL: https://issues.apache.org/jira/browse/TUSCANY-4016 Project: Tuscany Issue Type: Bug Components: SCA Java Runtime Affects Versions: Java-SCA-2.0-Beta3 Environment: All Reporter: Simon Laws org.apache.tuscany.sca.impl.NodeImpl does the following on start public void startComposite(String contributionURI, String compositeURI) throws ActivationException, ValidationException, ContributionReadException { String key = contributionURI+"/"+compositeURI; if (startedComposites.containsKey(key)) { throw new IllegalStateException("composite already started: " + compositeURI); } DeployedComposite dc = stoppedComposites.remove(key); if (dc != null) { dc.start(); startedComposites.put(key, dc); and the following on stop String key = contributionURI+"/"+compositeURI; DeployedComposite dc = startedComposites.remove(key); if (dc != null) { dc.stop(); stoppedComposites.put(key, dc); } else { If an error is thrown on start it won't be in startedComposites but some of the providers may have been started. So even in the failure case we should consider the composite partially started so that it can be stopped correctly. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira