EventualResult.cancel() is not called on timed-out calls

Bug #1485932 reported by Gavin Panella
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MAAS
Invalid
Low
Unassigned

Bug Description

When calling non-blocking code from blocking code via crochet when a time-out is specified — i.e. calling a function decorated with @run_in_reactor, @asynchronous or @asynchronous(timeout=seconds) — an EventualResult is created whether we see it or not. To obtain the result EventualResult.wait(seconds) is called; after the given number of seconds crochet.TimeoutError will be raised if the non-blocking code has not yet returned a result.

The bug is that the non-blocking operation is not cancelled at that point, by calling EventualResult.cancel(). The non-blocking operation continues, unaware that no one cares.

This isn't necessarily a problem. In many cases it may be fine, but we ought to be aware of it. Hence this bug.

Tags: tech-debt
Revision history for this message
Andres Rodriguez (andreserl) wrote :

** This is an automated message **

We believe this is no longer an issue on the latest MAAS releases. As such, we are marking this bug report as invalid. If you believe this is still an issue, please re-open the bug report and provide any relevant information.

Thanks.

Changed in maas:
status: Triaged → Invalid
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.