← Back to team overview

launchpad-reviewers team mailing list archive

[Merge] ~cjwatson/launchpad:disable-deb-verifyFormat into launchpad:master

 

Colin Watson has proposed merging ~cjwatson/launchpad:disable-deb-verifyFormat into launchpad:master.

Commit message:
Disable verifyFormat check for .debs and .ddebs

Requested reviews:
  Launchpad code reviewers (launchpad-reviewers)

For more details, see:
https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/423484

The `process-upload` script that runs on build uploads is close to scaling limits: at the moment it doesn't always manage to outpace `buildd-manager` adding items to its queue.  It's therefore worth some optimization effort.

For large .deb uploads, especially .ddebs, the `verifyFormat` and `verifyDebTimestamp` can both be very slow (minutes) and have some overlap: the former runs `dpkg-deb` and the latter uses `apt_inst.DebFile`, but both iterate over the control and data parts of the package.  `verifyDebTimestamp` is effectively a superset of `verifyFormat` for all practical purposes, so let's avoid running both.
-- 
Your team Launchpad code reviewers is requested to review the proposed merge of ~cjwatson/launchpad:disable-deb-verifyFormat into launchpad:master.
diff --git a/lib/lp/archiveuploader/nascentuploadfile.py b/lib/lp/archiveuploader/nascentuploadfile.py
index 548e43c..74fb3f0 100644
--- a/lib/lp/archiveuploader/nascentuploadfile.py
+++ b/lib/lp/archiveuploader/nascentuploadfile.py
@@ -985,7 +985,12 @@ class DebBinaryUploadFile(BaseBinaryUploadFile):
             self.verifyDepends,
             self.verifySection,
             self.verifyPriority,
-            self.verifyFormat,
+            # We used to run verifyFormat here too.  However,
+            # verifyDebTimestamp does an approximately equivalent check in
+            # passing by iterating over the control and data parts via
+            # apt_inst.DebFile, and both verifyFormat and verifyDebTimestamp
+            # can be slow on large files, so it's best to avoid running both
+            # of them.
             self.verifyDebTimestamp,
             ]