new file mode 100644
@@ -0,0 +1,23 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.15 on 2018-08-09 14:03
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('patchwork', '0026_add_user_bundles_backref'),
+ ]
+
+ operations = [
+ migrations.AlterModelOptions(
+ name='series',
+ options={'verbose_name_plural': 'Series'},
+ ),
+ migrations.AddIndex(
+ model_name='comment',
+ index=models.Index(fields=['submission', 'date'], name='submission_date_idx'),
+ ),
+ ]
@@ -625,6 +625,10 @@ class Comment(EmailMixin, models.Model):
class Meta:
ordering = ['date']
unique_together = [('msgid', 'submission')]
+ indexes = [
+ models.Index(name='submission_date_idx',
+ fields=['submission','date'])
+ ]
@python_2_unicode_compatible
This (at least theoretically) should speed up displaying comments on patches/cover letters. It's an index that will return rows in-order for the query that we always do ("give me the comments on this submission in date order"), rather than having to have the database server do a sort for us. I haven't been able to benchmark something locally that shows this is an actual improvement, but I don't have as large data set as various production instances. The query plan does look a bit nicer though. Although the benefit of index maintenance versus how long it takes to sort things is a good question. Signed-off-by: Stewart Smith <stewart@linux.ibm.com> --- .../migrations/0027_add_comment_date_index.py | 23 +++++++++++++++++++ patchwork/models.py | 4 ++++ 2 files changed, 27 insertions(+) create mode 100644 patchwork/migrations/0027_add_comment_date_index.py