On Fri, Jun 05, 2015 at 11:25:34AM +0200, 'Klaus Aehlig' via ganeti-devel wrote:
On Fri, Jun 05, 2015 at 11:17:49AM +0200, Klaus Aehlig wrote:
The first thing the newly forked job will do anyway is
to update its job file as the first op-code is now waiting.
It is enough that this information is replicated to all
master candidates. Note that a local change of the livelock
file will not be helpful to other master candidates, as
the livelock has only a meaning on the current node anyway.
This seemingly little saving of two replications is significant,
however, as it happens under the fork lock by which we avoid
two forks at the same time, as this can cause problems with the
Haskell runtime.
Signed-off-by: Klaus Aehlig <[email protected]>
Reviewed-by: Petr Pudlak <[email protected]>
Cherry-picked-from: 7684a50192bb
Signed-off-by: Klaus Aehlig <[email protected]>
---
src/Ganeti/JQScheduler.hs | 2 +-
src/Ganeti/JQueue.hs | 8 ++++----
2 files changed, 5 insertions(+), 5 deletions(-)
This patch has a significant impact on the throughput of the job
queue, especially in larger clusters. As it is quite an insulated
change with understood effect, and can cleanly be cherry-picked
down to stable-2.13 (the relevant code hasn't changed since then),
I think it is safe to cherry pick.
--
Klaus Aehlig
Google Germany GmbH, Dienerstr. 12, 80331 Muenchen
Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Geschaeftsfuehrer: Graham Law, Christine Elizabeth Flores
LGTM, but Riba as the person in charge of 2.13 should also acknowledge