[ 
https://issues.apache.org/jira/browse/CLOUDSTACK-9323?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15231379#comment-15231379
 ] 

ASF GitHub Bot commented on CLOUDSTACK-9323:
--------------------------------------------

Github user jburwell commented on a diff in the pull request:

    https://github.com/apache/cloudstack/pull/1454#discussion_r58964733
  
    --- Diff: tools/marvin/marvin/lib/utils.py ---
    @@ -520,4 +520,22 @@ def verifyRouterState(apiclient, routerid, 
allowedstates):
         if routers[0].state.lower() not in allowedstates:
             return [FAIL, "state of the router should be in %s but is %s" %
                 (allowedstates, routers[0].state)]
    -    return [PASS, None]
    \ No newline at end of file
    +    return [PASS, None]
    +
    +
    +
    +def wait_until(retry_interval=2, no_of_times=2, callback=None, 
*callback_args):
    +    """ Utility method to try out the callback method at most no_of_times 
with a interval of retry_interval,
    +    Will return immediately if callback returns True. The callback method 
should be written to return a list of values first being a boolean """
    +
    +    if callback is None:
    +        return INVALID_INPUT
    +    success = False
    +    for i in range(0,no_of_times):
    +        time.sleep(retry_interval)
    +        success = callback(*callback_args)
    +        if success[0]: 
    +            break 
    +
    +    return success
    --- End diff --
    
    Assuming I am reading this correctly, this function will return an array 
not a Boolean value based on the array operation on line 536.
    
    Would be possible to add a unit test for this function to verify proper 
return of ``True`` when the callback succeeds and ``False`` when it doesn't 
pass after the number of retries fails?


> Cancelling host maintenance results in ""Internal error cancelling 
> maintenance.”
> --------------------------------------------------------------------------------
>
>                 Key: CLOUDSTACK-9323
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-9323
>             Project: CloudStack
>          Issue Type: Bug
>      Security Level: Public(Anyone can view this level - this is the 
> default.) 
>            Reporter: Abhinandan Prateek
>            Assignee: Abhinandan Prateek
>             Fix For: Future
>
>
> When we try to cancel the host from maintenance, all the hosts are 
> complaining ""Internal error cancelling maintenance.” but successfully 
> enabling the host back.
> In both scenarios like host is in up or disconnected state.
> This causes problem when we programmatically cancel maintenance….



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to