Revision 9bf5e01f lib/jqueue.py
b/lib/jqueue.py | ||
---|---|---|
446 | 446 |
finally: |
447 | 447 |
self._queue.release() |
448 | 448 |
|
449 |
@locking.ssynchronized(_big_jqueue_lock) |
|
450 |
def _AppendFeedback(self, timestamp, log_type, log_msg): |
|
451 |
"""Internal feedback append function, with locks |
|
452 |
|
|
453 |
""" |
|
454 |
self._job.log_serial += 1 |
|
455 |
self._op.log.append((self._job.log_serial, timestamp, log_type, log_msg)) |
|
456 |
self._queue.UpdateJobUnlocked(self._job, replicate=False) |
|
457 |
|
|
449 | 458 |
def Feedback(self, *args): |
450 | 459 |
"""Append a log entry. |
451 | 460 |
|
... | ... | |
461 | 470 |
# The time is split to make serialization easier and not lose |
462 | 471 |
# precision. |
463 | 472 |
timestamp = utils.SplitTime(time.time()) |
464 |
|
|
465 |
self._queue.acquire() |
|
466 |
try: |
|
467 |
self._job.log_serial += 1 |
|
468 |
self._op.log.append((self._job.log_serial, timestamp, log_type, log_msg)) |
|
469 |
self._queue.UpdateJobUnlocked(self._job, replicate=False) |
|
470 |
finally: |
|
471 |
self._queue.release() |
|
473 |
self._AppendFeedback(timestamp, log_type, log_msg) |
|
472 | 474 |
|
473 | 475 |
def ReportLocks(self, msg): |
474 | 476 |
"""Write locking information to the job. |
Also available in: Unified diff