Bug #17713

Weblate time-out: The file lock '(...)/index.lock' could not be acquired

Added by zen 2020-05-14 02:17:18 . Updated 2020-05-15 13:18:54 .

Status:
Confirmed
Priority:
High
Assignee:
zen
Category:
Infrastructure
Target version:
Start date:
Due date:
% Done:

0%

Feature Branch:
Type of work:
Sysadmin
Blueprint:

Starter:
Affected tool:
Translation Platform
Deliverable for:

Description

<code class="text">
2020-05-14 02:06:07,973 INFO tails/install-inc-overview/pt: committing pending changes (pending unit)
2020-05-14 02:08:08,004 ERROR Internal Server Error: /translate/tails/install-inc-overview/pt/
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/django/core/handlers/exception.py", line 41, in inner
    response = get_response(request)
  File "/usr/local/lib/python3.5/dist-packages/django/core/handlers/base.py", line 187, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "/usr/local/lib/python3.5/dist-packages/django/core/handlers/base.py", line 185, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/usr/local/share/weblate/weblate/trans/views/edit.py", line 486, in translate
    request, translation, this_unit_url, next_unit_url
  File "/usr/local/share/weblate/weblate/utils/ratelimit.py", line105, in rate_wrap
    return function(request, *args, **kwargs)
  File "/usr/local/share/weblate/weblate/trans/views/edit.py", line 291, in handle_translate
    go_next = perform_translation(unit, form, request)
  File "/usr/local/share/weblate/weblate/trans/views/edit.py", line 229, in perform_translation
    form.cleaned_data['state']
  File "/usr/lib/python3.5/contextlib.py", line 30, in inner
    return func(*args, **kwds)
  File "/usr/local/share/weblate/weblate/trans/models/unit.py", line 899, in translate
    propagate=propagate
  File "/usr/local/share/weblate/weblate/trans/models/unit.py", line 543, in save_backend
    self.translation.commit_pending('pending unit', request)
  File "/usr/local/share/weblate/weblate/trans/models/translation.py", line 412, in commit_pending
    with self.component.repository.lock:
  File "/usr/local/lib/python3.5/dist-packages/filelock.py", line 322, in __enter__
    self.acquire()
  File "/usr/local/lib/python3.5/dist-packages/filelock.py", line 258, in acquire
    raise Timeout(self._lock_file)
filelock.Timeout: The file lock '/var/lib/weblate/repositories/vcs/tails/index.lock' could not be acquired.
</code>

High priority because prevents users from using the website to translate.


Subtasks


History

#1 Updated by zen 2020-05-14 02:21:39

I’ve seen a git cat-file running as weblate at the same time this problem happened.

#2 Updated by hefee 2020-05-15 13:18:54

@zen: where does your log come from?

I can see that we did update the weblate components at the same time (update.log).

=> Yes we have blocked the repo for 8 mins via acquiring the lock to update the components. But we really need this lock, otherwise Weblate would change the file in the repo and everything would screw up. The step that takes time is the “update translations for: X”, and this is no our code - we only trigger Weblate to update a compontent subproject.create_translations(force=False, langs=langs). If we want to improve here we would need to improve Weblate.

2020-05-14 02:04:20 - cron.sh - Updating Weblate components in Weblate repo... 2020-05-14 02:04:22,616 - UWC - filelock(DEBUG): Attempting to acquire lock 140306226926984 on /var/lib/weblate/repositories/vcs/tails/index.lock 2020-05-14 02:04:22,617 - UWC - filelock(INFO): Lock 140306226926984 acquired on /var/lib/weblate/repositories/vcs/tails/index.lock 2020-05-14 02:04:23,158 - UWC - root(INFO): Updated remote aacc46a3060fab76a4aac01607aaec55bfb43083..2ef8602a1f803851fade05a5ffeb89f8bed1fd41 2020-05-14 02:04:23,575 - UWC - root(INFO): merged remote into master with fast-forward strategy. 2020-05-14 02:04:23,576 - UWC - root(DEBUG): Updating components aacc46a3060fab76a4aac01607aaec55bfb43083..2ef8602a1f803851fade05a5ffeb89f8bed1fd41 2020-05-14 02:04:23,576 - UWC - root(INFO): update aacc46a3060fab76a4aac01607aaec55bfb43083..2ef8602a1f803851fade05a5ffeb89f8bed1fd41 2020-05-14 02:04:23,592 - UWC - root(INFO): modified file: wiki/src/about/staging/about.it.po 2020-05-14 02:04:23,597 - UWC - root(INFO): modified file: wiki/src/about/staging/home.it.po 2020-05-14 02:04:23,600 - UWC - root(INFO): modified file: wiki/src/contribute.it.po 2020-05-14 02:04:23,602 - UWC - root(INFO): modified file: wiki/src/doc/reset/windows.pt.po 2020-05-14 02:04:23,605 - UWC - root(INFO): modified file: wiki/src/install/inc/router/clone.pt.po 2020-05-14 02:04:23,607 - UWC - root(INFO): modified file: wiki/src/install/linux.pt.po 2020-05-14 02:04:23,610 - UWC - root(INFO): modified file: wiki/src/install/linux/clone-overview.pt.po 2020-05-14 02:04:23,612 - UWC - root(INFO): modified file: wiki/src/install/mac.pt.po 2020-05-14 02:04:23,615 - UWC - root(INFO): modified file: wiki/src/install/mac/clone-overview.pt.po 2020-05-14 02:04:23,617 - UWC - root(INFO): modified file: wiki/src/install/win.pt.po 2020-05-14 02:04:23,620 - UWC - root(INFO): modified file: wiki/src/install/win/clone-overview.pt.po 2020-05-14 02:04:23,622 - UWC - root(INFO): modified file: wiki/src/install/win/usb-download.pt.po 2020-05-14 02:04:23,625 - UWC - root(INFO): modified file: wiki/src/install/win/usb-overview.pt.po 2020-05-14 02:04:23,627 - UWC - root(INFO): modified file: wiki/src/install/win/usb.pt.po 2020-05-14 02:04:23,630 - UWC - root(INFO): modified file: wiki/src/upgrade/win-overview.pt.po 2020-05-14 02:04:23,633 - UWC - root(INFO): modified file: wiki/src/upgrade/win.pt.po 2020-05-14 02:04:23,635 - UWC - root(INFO): update translations for: wiki/src/about/staging/home.*.po 2020-05-14 02:04:43,661 - UWC - root(INFO): update translations for: wiki/src/install/linux.*.po 2020-05-14 02:05:04,940 - UWC - root(INFO): update translations for: wiki/src/install/mac.*.po 2020-05-14 02:05:25,885 - UWC - root(INFO): update translations for: wiki/src/upgrade/win.*.po 2020-05-14 02:05:46,045 - UWC - root(INFO): update translations for: wiki/src/install/win/usb-overview.*.po 2020-05-14 02:06:08,272 - UWC - root(INFO): update translations for: wiki/src/install/win/usb-download.*.po 2020-05-14 02:08:19,525 - UWC - root(INFO): update translations for: wiki/src/doc/first_steps/reset/windows.*.po 2020-05-14 02:08:43,057 - UWC - root(INFO): update translations for: wiki/src/install/mac/clone-overview.*.po 2020-05-14 02:09:12,392 - UWC - root(INFO): update translations for: wiki/src/install/win.*.po 2020-05-14 02:09:45,172 - UWC - root(INFO): update translations for: wiki/src/about/staging/about.*.po 2020-05-14 02:10:12,573 - UWC - root(INFO): update translations for: wiki/src/install/inc/router/clone.*.po 2020-05-14 02:10:37,382 - UWC - root(INFO): update translations for: wiki/src/upgrade/win-overview.*.po 2020-05-14 02:11:01,940 - UWC - root(INFO): update translations for: wiki/src/install/win/clone-overview.*.po 2020-05-14 02:11:31,043 - UWC - root(INFO): update translations for: wiki/src/contribute.*.po 2020-05-14 02:11:53,932 - UWC - root(INFO): update translations for: wiki/src/install/win/usb.*.po 2020-05-14 02:12:16,556 - UWC - root(INFO): update translations for: wiki/src/install/linux/clone-overview.*.po 2020-05-14 02:12:36,569 - UWC - root(INFO): -- Finished successfully. -- 2020-05-14 02:12:36,570 - UWC - filelock(DEBUG): Attempting to release lock 140306226926984 on /var/lib/weblate/repositories/vcs/tails/index.lock 2020-05-14 02:12:36,570 - UWC - filelock(INFO): Lock 140306226926984 released on /var/lib/weblate/repositories/vcs/tails/index.lock