LGTM

On Wed, Jun 4, 2014 at 10:20 AM, 'Klaus Aehlig' via ganeti-devel <
[email protected]> wrote:

> ...so that owners can request their locks to granted when
> ready instead of having to rely on polling. This will, in
> particular, be important for high-priority jobs as it makes
> sure they get their locks earlier.
>
> Signed-off-by: Klaus Aehlig <[email protected]>
> ---
>  src/Ganeti/WConfd/Core.hs | 11 +++++++++++
>  1 file changed, 11 insertions(+)
>
> diff --git a/src/Ganeti/WConfd/Core.hs b/src/Ganeti/WConfd/Core.hs
> index c8574db..faa8c9e 100644
> --- a/src/Ganeti/WConfd/Core.hs
> +++ b/src/Ganeti/WConfd/Core.hs
> @@ -189,6 +189,16 @@ tryUpdateLocks cid req =
>    . (>>= toErrorStr)
>    $ modifyLockWaiting (LW.updateLocks cid (fromGanetiLockRequest req))
>
> +-- | Try to update the locks of a given owner and make that a pending
> +-- request if not immediately possible.
> +updateLocksWaiting :: ClientId -> Integer
> +                      -> GanetiLockRequest -> WConfdMonad [ClientId]
> +updateLocksWaiting cid prio req =
> +  liftM S.toList
> +  . (>>= toErrorStr)
> +  . modifyLockWaiting
> +  $ LW.updateLocksWaiting prio cid (fromGanetiLockRequest req)
> +
>  -- | Tell whether a given owner has pending requests.
>  hasPendingRequest :: ClientId -> WConfdMonad Bool
>  hasPendingRequest cid = liftM (LW.hasPendingRequest cid) readLockWaiting
> @@ -246,6 +256,7 @@ exportedFunctions = [ 'echo
>                      , 'listAllLocks
>                      , 'listAllLocksOwners
>                      , 'tryUpdateLocks
> +                    , 'updateLocksWaiting
>                      , 'freeLocks
>                      , 'freeLocksLevel
>                      , 'downGradeLocksLevel
> --
> 1.9.1.423.g4596e3a
>
>

Reply via email to