From 45a76eafdd8348c4bbdef13b91c1803105e650a7 Mon Sep 17 00:00:00 2001 From: Greg Farnum Date: Wed, 7 Mar 2012 16:43:04 -0800 Subject: [PATCH] msgr: get_connection() is required to establish a connection if none exists. Making an allowance for lossy server connections is silly. Just don't ask for the Connection in that case. (There aren't any users who rely on the previous behavior.) Document that requirement in Messenger.h! Signed-off-by: Greg Farnum --- src/msg/Messenger.h | 6 ++++++ src/msg/SimpleMessenger.cc | 10 ++-------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/msg/Messenger.h b/src/msg/Messenger.h index 61e35e1bff254..40abd4b9a9dec 100644 --- a/src/msg/Messenger.h +++ b/src/msg/Messenger.h @@ -251,6 +251,12 @@ protected: virtual void mark_disposable(Connection *con) = 0; virtual void mark_down_all() = 0; + /** + * Get the Connection object associated with a given entity. If a + * Connection does not exist, create one and establish a logical connection. + * + * @param dest The entity to get a connection for. + */ virtual Connection *get_connection(const entity_inst_t& dest) = 0; virtual int rebind(int avoid_port) { return -EOPNOTSUPP; } diff --git a/src/msg/SimpleMessenger.cc b/src/msg/SimpleMessenger.cc index a1e1cc4edc799..7e4acbfde15bc 100644 --- a/src/msg/SimpleMessenger.cc +++ b/src/msg/SimpleMessenger.cc @@ -2512,16 +2512,10 @@ Connection *SimpleMessenger::get_connection(const entity_inst_t& dest) } } if (!pipe) { - Policy& policy = get_policy(dest.name.type()); - if (policy.lossy && policy.server) - pipe = NULL; - else - pipe = connect_rank(dest.addr, dest.name.type()); + pipe = connect_rank(dest.addr, dest.name.type()); } } - if (pipe) - return (Connection *)pipe->connection_state->get(); - return NULL; + return (Connection *)pipe->connection_state->get(); } -- 2.39.5