Revision 4c848b18
b/daemons/ganeti-masterd | ||
---|---|---|
207 | 207 |
|
208 | 208 |
if method == luxi.REQ_SUBMIT_JOB: |
209 | 209 |
ops = [opcodes.OpCode.LoadOpCode(state) for state in args] |
210 |
# we need to compute the node list here, since from now on all |
|
211 |
# operations require locks on the queue or the storage, and we |
|
212 |
# shouldn't get another lock |
|
213 |
node_list = self.server.context.cfg.GetNodeList() |
|
214 |
return queue.SubmitJob(ops, node_list) |
|
210 |
return queue.SubmitJob(ops) |
|
215 | 211 |
|
216 | 212 |
elif method == luxi.REQ_CANCEL_JOB: |
217 | 213 |
job_id = args |
b/lib/jqueue.py | ||
---|---|---|
362 | 362 |
|
363 | 363 |
return str(job_id) |
364 | 364 |
|
365 |
def _NewSerialUnlocked(self, nodes):
|
|
365 |
def _NewSerialUnlocked(self): |
|
366 | 366 |
"""Generates a new job identifier. |
367 | 367 |
|
368 | 368 |
Job identifiers are unique during the lifetime of a cluster. |
... | ... | |
448 | 448 |
|
449 | 449 |
@utils.LockedMethod |
450 | 450 |
@_RequireOpenQueue |
451 |
def SubmitJob(self, ops, nodes):
|
|
451 |
def SubmitJob(self, ops): |
|
452 | 452 |
"""Create and store a new job. |
453 | 453 |
|
454 | 454 |
This enters the job into our job queue and also puts it on the new |
... | ... | |
456 | 456 |
|
457 | 457 |
@type ops: list |
458 | 458 |
@param ops: The list of OpCodes that will become the new job. |
459 |
@type nodes: list |
|
460 |
@param nodes: The list of nodes to which the new job serial will be |
|
461 |
distributed. |
|
462 | 459 |
|
463 | 460 |
""" |
464 | 461 |
# Get job identifier |
465 |
job_id = self._NewSerialUnlocked(nodes)
|
|
462 |
job_id = self._NewSerialUnlocked() |
|
466 | 463 |
job = _QueuedJob(self, job_id, ops) |
467 | 464 |
|
468 | 465 |
# Write to disk |
Also available in: Unified diff