summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-12-03 07:16:03 +0000
committerGerrit Code Review <review@openstack.org>2015-12-03 07:16:03 +0000
commit36fc947b1543f0fa1a898cd34a6d1b8312e7ae5b (patch)
tree85200659bb513e478b2e81afd6d98c5dfc6ae4a3
parentb6ad95e1caa19a755e11077facaa2022b64d0cf0 (diff)
parentcc97ba2e17d48cc5fa02f8d9c32b2e0ffacab1a6 (diff)
downloadoslo-messaging-36fc947b1543f0fa1a898cd34a6d1b8312e7ae5b.tar.gz
Merge "doc: explain rpc call/cast expection"
-rw-r--r--oslo_messaging/rpc/client.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/oslo_messaging/rpc/client.py b/oslo_messaging/rpc/client.py
index f67f673..7beea84 100644
--- a/oslo_messaging/rpc/client.py
+++ b/oslo_messaging/rpc/client.py
@@ -356,6 +356,10 @@ class RPCClient(object):
Similarly, the request context must be a dict unless the client's
serializer supports serializing another type.
+ Note: cast doesn't ensure the remote method to be been executed
+ on each destination. But ensures that it will be not executed twice
+ on a destination.
+
:param ctxt: a request context dict
:type ctxt: dict
:param method: the method name
@@ -392,6 +396,12 @@ class RPCClient(object):
allowed_remote_exmods list, then a messaging.RemoteError exception is
raised with all details of the remote exception.
+ Note: call is done 'at-most-once'. In case of we can't known
+ if the call have been done correctly, because we didn't get the
+ response on time, MessagingTimeout exception is raised.
+ The real reason can vary, transport failure, worker
+ doesn't answer in time or crash, ...
+
:param ctxt: a request context dict
:type ctxt: dict
:param method: the method name