|
From: | John Snow |
Subject: | issuing [block-]job-complete to jobs in STANDBY state |
Date: | Thu, 1 Apr 2021 15:02:35 -0400 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1 |
BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1945635It's safe to just retry this operation again, but it may be difficult to understand WHY the job is paused at the application level, since the flush event may be asynchronous and unpredictable.
We could define a transition to allow COMPLETE to be applied to STANDBY jobs, but is there any risk or drawback to doing so? On QMP's side, we do know the difference between a temporary pause and a user pause/error pause (Both use the user_pause flag.)
I imagine it's safe to continue rejecting COMPLETE commands if user_paused is set ("No, go fix this first!") and we could define a pathway for implicitly STANDBY jobs only. However, in this case, we don't really know how long STANDBY will last. Do we have the ability to easily accept an async "intent" to complete a job without tying up the monitor?
ATM I think only mirror uses .complete, but it looks like it tries to actually set up the pivot a good deal before delegating to the bottom half, so I worry it's not safe to try to run this when we are in the middle of a drain.
Any thoughts? --js
[Prev in Thread] | Current Thread | [Next in Thread] |