[ https://issues.apache.org/jira/browse/DISPATCH-887?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ted Ross updated DISPATCH-887: ------------------------------ Fix Version/s: (was: 1.1.0) 1.0.1 > Dispatch reestablishes connection inspite of deleting the connector > ------------------------------------------------------------------- > > Key: DISPATCH-887 > URL: https://issues.apache.org/jira/browse/DISPATCH-887 > Project: Qpid Dispatch > Issue Type: Bug > Components: Container > Affects Versions: 1.0.0 > Reporter: Ganesh Murthy > Assignee: Ganesh Murthy > Priority: Major > Fix For: 1.0.1 > > > There is a race condition happening when a connector is deleted. > On connector delete, the following function is called > {code} > void qd_connection_manager_delete_connector(qd_dispatch_t *qd, void *impl) > { > qd_connector_t *ct = (qd_connector_t*) impl; > if (ct) { > sys_mutex_lock(ct->lock); > if (ct->ctx && ct->ctx->pn_conn) { > qd_connection_invoke_deferred(ct->ctx, deferred_close, > ct->ctx->pn_conn); > } > sys_mutex_unlock(ct->lock); > DEQ_REMOVE(qd->connection_manager->connectors, ct); > qd_connector_decref(ct); > } > } > {code} > The deferred_close() is invoked before qd_connector_decref() is invoked hence > the connection's connector is still in place and the connector is > re-established. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org