本页面部分数据正在计算中,页面会自动刷新

Some data on this page is currently being calculated, and the page will be refreshed automatically

我刚刚安装了 pootle,我收到了这条消息 "Some data on this page is currently being calculated, and the page will be refreshed automatically x seconds"。进入管理页面后,我发现有一个失败的作业,所以我 运行 在我的命令行 pootle retry_failed_jobs.

这就是它所说的:/

`DoesNotExist: Directory matching query does not exist.
Traceback (most recent call last):
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/rq/worker.py", line 568, in perform_job
    rv = job.perform()
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/rq/job.py", line 495, in perform
    self._result = self.func(*self.args, **self.kwargs)
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 683, in update_cache_job
    instance._update_cache_job(keys, decrement)
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 534, in _update_cache_job
    create_update_cache_job_wrapper(p, keys_for_parent, decrement)
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 693, in create_update_cache_job_wrapper
    connection.on_commit(_create_update_cache_job)
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/transaction_hooks/mixin.py", line 31, in on_commit
    func()
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 692, in _create_update_cache_job
    create_update_cache_job(queue, instance, keys, decrement=decrement)
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 707, in create_update_cache_job
    last_job_key = instance.get_last_job_key()
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 299, in get_last_job_key
    key = self.get_cachekey()
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/apps/pootle_translationproject/models.py", line 373, in get_cachekey
    return self.directory.pootle_path
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/django/db/models/fields/related.py", line 572, in __get__
    rel_obj = qs.get()
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/django/db/models/query.py", line 357, in get
    self.model._meta.object_name)
DoesNotExist: Directory matching query does not exist.
Traceback (most recent call last):
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/rq/worker.py", line 568, in perform_job
    rv = job.perform()
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/rq/job.py", line 495, in perform
    self._result = self.func(*self.args, **self.kwargs)
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 683, in update_cache_job
    instance._update_cache_job(keys, decrement)
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 534, in _update_cache_job
    create_update_cache_job_wrapper(p, keys_for_parent, decrement)
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 693, in create_update_cache_job_wrapper
    connection.on_commit(_create_update_cache_job)
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/transaction_hooks/mixin.py", line 31, in on_commit
    func()
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 692, in _create_update_cache_job
    create_update_cache_job(queue, instance, keys, decrement=decrement)
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 707, in create_update_cache_job
    last_job_key = instance.get_last_job_key()
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/core/mixins/treeitem.py", line 299, in get_last_job_key
    key = self.get_cachekey()
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/pootle/apps/pootle_translationproject/models.py", line 373, in get_cachekey
    return self.directory.pootle_path
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/django/db/models/fields/related.py", line 572, in __get__
    rel_obj = qs.get()
  File "/var/www/pootle/env/local/lib/python2.7/site-packages/django/db/models/query.py", line 357, in get
    self.model._meta.object_name)
DoesNotExist: Directory matching query does not exist.
`

这实际上发生在我使用管理面板删除项目的语言时,然后突然在系统中删除了该语言的文件夹。我所做的是创建一个新项目并复制翻译文件。所以我没有解决问题,但我能够删除数据刷新。

Pootle 中的统计数据由 Redis 管理。 Pootle 有时会进入统计数据被打破的状态。文件损坏等问题可能会导致这种情况。您可以清理统计数据 using this guide.

我还会 report the situation 以及对 Pootle 开发人员的任何回溯,以便他们可以使统计计算更加可靠。