Updates:
        Status: Fixed

Comment #6 on issue 747 by [email protected]: Honor job priorities when handing out locks
http://code.google.com/p/ganeti/issues/detail?id=747

commit 3bd2a4c80fdf8b88f9ff03ccc8b12a0d3677e629
Author: Klaus Aehlig <[email protected]>
Date:   Tue Jun 3 19:37:44 2014 +0200

    Provide correct priority

    ...when waiting for a lock. This will ensure that the more
    important jobs are preferred over the less important ones.

    Signed-off-by: Klaus Aehlig <[email protected]>
    Reviewed-by: Petr Pudlak <[email protected]>

commit 7cd05067a9853bb8d17f065e190512faa33b0cd3
Author: Klaus Aehlig <[email protected]>
Date:   Tue Jun 3 13:54:08 2014 +0200

    Relax times

    As lock allocation is now inter-process communication, increase
    the minimal time we allow ourself for obtaining a lock. Also,
    increase polling frequency by an order of magnitude. The latter
    is safe, as we do not require on polling any more to get the
    locks assigned.

    Signed-off-by: Klaus Aehlig <[email protected]>
    Reviewed-by: Petr Pudlak <[email protected]>

commit b624946350991656980b1a4130d9bee0c42f539b
Author: Klaus Aehlig <[email protected]>
Date:   Tue Jun 3 17:15:45 2014 +0200

    Make mcpu use wconfd's asynchronous requests

    Instead of only polling make mcpu ask wconfd to hand out the
    locks as soon as they become available. For the time being,
    we still poll to find out if the request was granted. Nevertheless,
    this will ensure that locks are handed out in the intended order,
    in particular honoring job priorities.

    Signed-off-by: Klaus Aehlig <[email protected]>
    Reviewed-by: Petr Pudlak <[email protected]>

commit cd7e4240f3d41b5902cb33317fd13845f5fea62e
Author: Klaus Aehlig <[email protected]>
Date:   Wed Jun 4 09:57:37 2014 +0200

    Add UpdateLocksWaiting and HasPendingRequest to MockClient

    ...and implement so in the most trivial way, always suceeding
    immediately. The point is, these mocks are not used to test
    the mcpu that uses the WConfD client but, instead, indirectly
    in our so called "unit tests" for the logical units that call
    the real mpcu.

    Signed-off-by: Klaus Aehlig <[email protected]>
    Reviewed-by: Petr Pudlak <[email protected]>

commit f4ed516b94ce8c1edf8a28093a640305d49fac85
Author: Klaus Aehlig <[email protected]>
Date:   Tue Jun 3 18:31:58 2014 +0200

    Expose updateLocksWaiting through WConfD

    ...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]>
    Reviewed-by: Petr Pudlak <[email protected]>

commit f88b0e36f63abf5bb4dc5d1821464529d3391424
Author: Klaus Aehlig <[email protected]>
Date:   Tue Jun 3 17:48:50 2014 +0200

    Expose hasPendingRequest in WConfD

    ...so that owners can ask if their request got
    granted already.

    Signed-off-by: Klaus Aehlig <[email protected]>
    Reviewed-by: Petr Pudlak <[email protected]>

commit 58bd69205be21ec0ac6c3d27a28f9ad7ca332d57
Author: Klaus Aehlig <[email protected]>
Date:   Tue Jun 3 17:35:52 2014 +0200

    Expose the LockWaiting read-only as well

    Make WConfdMonad expose a read-only version of the lock waiting
    structure. In this way, questions about pending owners can be
    answered easily by the daemon.

    Signed-off-by: Klaus Aehlig <[email protected]>
    Reviewed-by: Petr Pudlak <[email protected]>

commit 05b7667aabdb5e7fcd86e26a60b5e23af22df842
Author: Klaus Aehlig <[email protected]>
Date:   Tue Jun 3 16:37:38 2014 +0200

    Add a predicate for having a pending request

    Add a predicate telling whether a given owner has a pending
    request. In this way, an owner can poll for his request: if
    he does not have a pending request, his previous asynchronous
    request has been granted.

    Signed-off-by: Klaus Aehlig <[email protected]>
    Reviewed-by: Petr Pudlak <[email protected]>


--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

Reply via email to