← Back to team overview

launchpad-reviewers team mailing list archive

[Merge] lp:~cjwatson/launchpad/background-scandium into lp:launchpad

 

Colin Watson has proposed merging lp:~cjwatson/launchpad/background-scandium into lp:launchpad.

Requested reviews:
  Launchpad code reviewers (launchpad-reviewers)
Related bugs:
  Bug #905333 in Launchpad itself: "Ubuntu publisher should trigger scandium in the background"
  https://bugs.launchpad.net/launchpad/+bug/905333

For more details, see:
https://code.launchpad.net/~cjwatson/launchpad/background-scandium/+merge/86058

== Summary ==

scandium (which hosts the partner archive) has issues.  It's triggered twice an hour by cocoplum (ftpmaster), and quite often that trigger hangs for >10 minutes.  This seriously gets in the way of fixing bug 36535; I think we could safely move to 30-minute publisher cycles now if not for this problem.  IMO we should trigger it in the background so that this isn't quite such a problem.

== Proposed fix ==

Trigger in the background, with &.  Indicate as much in the logs so that people know what's going on.

I don't think this introduces any raciness concerns, as the publisher already has to cope with the possibility that other hosts might fetch from the archive mid-publication; it does its best to avoid exposing intermediate states.

== Pre-implementation notes ==

None.

== Implementation details ==

None.

== Tests ==

This code is untested and probably untestable.

== Demo and Q/A ==

I don't think this needs any.

== lint ==

None.
-- 
https://code.launchpad.net/~cjwatson/launchpad/background-scandium/+merge/86058
Your team Launchpad code reviewers is requested to review the proposed merge of lp:~cjwatson/launchpad/background-scandium into lp:launchpad.
=== modified file 'cronscripts/publishing/distro-parts/ubuntu/finalize.d/90-trigger-mirrors'
--- cronscripts/publishing/distro-parts/ubuntu/finalize.d/90-trigger-mirrors	2011-09-09 16:14:14 +0000
+++ cronscripts/publishing/distro-parts/ubuntu/finalize.d/90-trigger-mirrors	2011-12-16 15:24:23 +0000
@@ -2,7 +2,8 @@
 
 # Prod the master mirrors to propagate the update.
 
-MASTERMIRRORS="archive.syncproxy.ubuntu.com wahoo scandium"
+MASTERMIRRORS="archive.syncproxy.ubuntu.com wahoo"
+MASTERMIRRORS_ASYNC="scandium"
 echo "$(date -R): Triggering master mirrors..."
 
 for HOST in $MASTERMIRRORS
@@ -11,4 +12,10 @@
     ssh archvsync@$HOST
 done
 
+for HOST in $MASTERMIRRORS_ASYNC
+do
+    echo "$(date -R): Triggering $HOST in background:"
+    ssh archvsync@$HOST &
+done
+
 echo "$(date -R): Master mirror triggers completed."