Mercurial > p > roundup > code
view website/issues/html/keyword.index.html @ 5142:93832cec4c31
issue2550839: Xapian, DatabaseLockError: Unable to get write lock on
db/text-index: already locked
I put in a retry loop that will attempt to get the lock. 10 tries with
a delaythatvaries from .02 seconds to .64 seconds. Total delay over 10
cycles approx. 4.5 seconds.
I can't figure out how to make pytest run two parallel processes to
test this code. I did try running:
./run_tests.py -k Xapian test/test_indexer.py &
./run_tests.py -k Xapian test/test_indexer.py
and confirmed that one of the processes seemed to hang on a test and
then threw a lock failure error. So at least the code path is being
exercised.
If anybody knows how to correctly test this I would love to do a real
test.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Wed, 13 Jul 2016 19:42:44 -0400 |
| parents | c2d0d3e9099d |
| children | 48658dcbac37 |
line wrap: on
line source
<tal:block metal:use-macro="templates/page/macros/icing"> <title metal:fill-slot="head_title" > <span tal:omit-tag="true" i18n:translate="" >List of keywords</span> <span tal:condition="request/dispname" tal:replace="python:' - %s '%request.dispname" /> - <span tal:replace="config/TRACKER_NAME" /> </title> <span metal:fill-slot="body_title" tal:omit-tag="true"> <span tal:omit-tag="true" i18n:translate="" >List of keywords</span> <span tal:condition="request/dispname" tal:replace="python:' - %s' % request.dispname" /> </span> <tal:block metal:fill-slot="content"> <p tal:condition="python:not (context.is_view_ok() or request.user.hasRole('Anonymous'))" i18n:translate=""> You are not allowed to view this page.</p> <p tal:condition="python:not context.is_view_ok() and request.user.hasRole('Anonymous')" i18n:translate=""> Please login with your username and password.</p> <table width="100%" tal:condition="context/is_view_ok" class="list"> <tr> <th i18n:translate="">Keyword</th> <th i18n:translate="">Description</th> </tr> <tal:block repeat="keyword context/list"> <tr tal:attributes="class python:['normal', 'alt'][repeat['keyword'].index%6/3]"> <td> <a tal:attributes="href string:keyword${keyword/id}" tal:content="keyword/name">keyword name</a> </td> <td tal:content="python:keyword.description.plain() or default"> </td> </tr> </tal:block> <tr tal:condition="context/is_edit_ok"> <td colspan="2"><a href="keyword?@template=item">New Keyword</a></td> </tr> </table> </tal:block> </tal:block>
