RPC call monitor is started too early

Bug #2084676 reported by Arnaud Morin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
oslo.messaging
New
Undecided
Arnaud Morin

Bug Description

[NOTE] I'll try to provide more context to this bug soon

In AMQP driver, a call monitor timer is started when a client wait data from a server.

This monitor timer is currently started as soon as the message is sent (aka when we start waiting for a response).

As a side effect, if a client is expecting to wait for a response more than this monitor timeout, it may fail earlier than expected.

E.G. in nova code:

def check_can_live_migrate_destination():
...
        cctxt = client.prepare(server=destination, version=version,
                               call_monitor_timeout=CONF.rpc_response_timeout,
                               timeout=CONF.long_rpc_timeout)

Client is expecting to wait until CONF.long_rpc_timeout (1800s), but call_monitor_timeout will be CONF.rpc_response_timeout (60s).

So monitor timeout will wait 60s to receive the first response from this call. If the call is not receiving any response within that time, it will fail.

Changed in oslo.messaging:
assignee: nobody → Arnaud Morin (arnaud-morin)
description: updated
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.