Merge lp:~abentley/launchpad/increase-lease into lp:launchpad/db-devel

Proposed by Aaron Bentley
Status: Merged
Approved by: Tim Penhey
Approved revision: no longer in the source branch.
Merged at revision: not available
Proposed branch: lp:~abentley/launchpad/increase-lease
Merge into: lp:launchpad/db-devel
Diff against target: 48 lines (+12/-2)
2 files modified
lib/lp/code/model/branchmergeproposaljob.py (+3/-1)
lib/lp/code/model/tests/test_branchmergeproposals.py (+9/-1)
To merge this branch: bzr merge lp:~abentley/launchpad/increase-lease
Reviewer Review Type Date Requested Status
Tim Penhey (community) release-critical Approve
Paul Hummer (community) code Approve
Review via email: mp+20668@code.launchpad.net

Commit message

Increase UpdatePreviewDiffJob timeout to 10 minutes.

Description of the change

= Summary =
Increase the timeout for UpdatePreviewDiffJobs to 10 minutes, to match our
previous setup.

== Proposed fix ==
Change the default duration on acquireLease to 600 seconds.

== Pre-implementation notes ==
None

== Implementation details ==
This introduces a timing-dependent test, however a wide margin (100 seconds) is
given.

Fixed some lint while I was at it.

== Tests ==
bin/test test_branchmergeproposals -t 10_minute_lease

== Demo and Q/A ==

= Launchpad lint =

Checking for conflicts. and issues in doctests and templates.
Running jslint, xmllint, pyflakes, and pylint.
Using normal rules.

Linting changed files:
  lib/lp/code/model/tests/test_branchmergeproposals.py
  lib/lp/code/model/branchmergeproposaljob.py

== Pylint notices ==

lib/lp/code/model/branchmergeproposaljob.py
    22: [F0401] Unable to import 'lazr.delegates' (No module named delegates)
    23: [F0401] Unable to import 'lazr.enum' (No module named enum)

To post a comment you must log in.
Revision history for this message
Paul Hummer (rockstar) :
review: Approve (code)
Revision history for this message
Tim Penhey (thumper) :
review: Approve (release-critical)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'lib/lp/code/model/branchmergeproposaljob.py'
2--- lib/lp/code/model/branchmergeproposaljob.py 2010-02-04 05:41:32 +0000
3+++ lib/lp/code/model/branchmergeproposaljob.py 2010-03-04 17:22:30 +0000
4@@ -29,7 +29,6 @@
5 from storm.store import Store
6 from zope.component import getUtility
7 from zope.interface import classProvides, implements
8-from zope.security.proxy import removeSecurityProxy
9
10 from canonical.database.enumcol import EnumCol
11 from canonical.launchpad.database.message import MessageJob, MessageJobAction
12@@ -268,6 +267,9 @@
13 yield
14 server.stop_server()
15
16+ def acquireLease(self, duration=600):
17+ return self.job.acquireLease(duration)
18+
19 def run(self):
20 """See `IRunnableJob`"""
21 preview = PreviewDiff.fromBranchMergeProposal(
22
23=== modified file 'lib/lp/code/model/tests/test_branchmergeproposals.py'
24--- lib/lp/code/model/tests/test_branchmergeproposals.py 2010-02-19 02:15:27 +0000
25+++ lib/lp/code/model/tests/test_branchmergeproposals.py 2010-03-04 17:22:30 +0000
26@@ -54,7 +54,7 @@
27 from lp.registry.interfaces.product import IProductSet
28 from lp.services.job.runner import JobRunner
29 from lp.testing import (
30- capture_events, login_person, TestCaseWithFactory, time_counter)
31+ capture_events, login_person, TestCaseWithFactory)
32 from lp.testing.factory import GPGSigningContext, LaunchpadObjectFactory
33 from lp.testing.mail_helpers import pop_notifications
34
35@@ -1839,6 +1839,14 @@
36 transaction.commit()
37 self.checkExampleMerge(bmp.preview_diff.text)
38
39+ def test_10_minute_lease(self):
40+ self.useBzrBranches()
41+ bmp = self.createExampleMerge()[0]
42+ job = UpdatePreviewDiffJob.create(bmp)
43+ job.acquireLease()
44+ expiry_delta = job.lease_expires - datetime.now(UTC)
45+ self.assertTrue(500 <= expiry_delta.seconds, expiry_delta)
46+
47
48 class TestNextPreviewDiffJob(TestCaseWithFactory):
49

Subscribers

People subscribed via source and target branches

to status/vote changes: