← Back to team overview

launchpad-reviewers team mailing list archive

[Merge] lp:~wgrant/launchpad/i-am-stupid into lp:launchpad

 

William Grant has proposed merging lp:~wgrant/launchpad/i-am-stupid into lp:launchpad.

Requested reviews:
  Stuart Bishop (stub): db
Related bugs:
  Bug #1029642 in Launchpad itself: "ScopedCollection:CollectionResource:#branch_merge_proposal-page-resource (landing candidates) dying from late evaluation of security rules"
  https://bugs.launchpad.net/launchpad/+bug/1029642

For more details, see:
https://code.launchpad.net/~wgrant/launchpad/i-am-stupid/+merge/123478

Add a few missing indices on AccessArtifactGrant and AccessPolicyGrant. Most notably on AccessPolicyGrant(grantee, policy), to accelerate person->APG lookups.

This fixes the performance of a lot of branch and bug permission checks, as they'll no longer have to do a sequential scan on AccessPolicyGrant to determine a person's granted policies.
-- 
https://code.launchpad.net/~wgrant/launchpad/i-am-stupid/+merge/123478
Your team Launchpad code reviewers is subscribed to branch lp:launchpad.
=== added file 'database/schema/patch-2209-23-2.sql'
--- database/schema/patch-2209-23-2.sql	1970-01-01 00:00:00 +0000
+++ database/schema/patch-2209-23-2.sql	2012-09-10 04:52:30 +0000
@@ -0,0 +1,16 @@
+-- Copyright 2012 Canonical Ltd.  This software is licensed under the
+-- GNU Affero General Public License version 3 (see the file LICENSE).
+
+SET client_min_messages=ERROR;
+
+CREATE INDEX accesspolicygrant__grantee__policy__idx
+    ON accesspolicygrant (grantee, policy);
+CREATE INDEX accesspolicygrant__grantor__idx
+    ON accesspolicygrant (grantor);
+
+CREATE INDEX accessartifactgrant__grantee__artifact__idx
+    ON accessartifactgrant (grantee, artifact);
+CREATE INDEX accessartifactgrant__grantor__idx
+    ON accessartifactgrant (grantor);
+
+INSERT INTO LaunchpadDatabaseRevision VALUES (2209, 23, 2);


Follow ups