]> git.donarmstrong.com Git - debbugs.git/blobdiff - Debbugs/DB/Result/BugStatusCache.pm
use COALESCE indexes for bug_status_cache
[debbugs.git] / Debbugs / DB / Result / BugStatusCache.pm
index 8aab04d33020116c20cb85e0c18cefec21d9d698..62acdaca04ea4163d80e064b6fd2e471f187e35b 100644 (file)
@@ -6,7 +6,7 @@ package Debbugs::DB::Result::BugStatusCache;
 
 =head1 NAME
 
-Debbugs::DB::Result::BugStatusCache - Source <-> suite associations
+Debbugs::DB::Result::BugStatusCache - Bug Status Cache
 
 =cut
 
@@ -37,22 +37,13 @@ __PACKAGE__->table("bug_status_cache");
 
 =head1 ACCESSORS
 
-=head2 id
-
-  data_type: 'integer'
-  is_auto_increment: 1
-  is_nullable: 0
-  sequence: 'bug_status_cache_id_seq'
-
-Source <-> suite association id
-
 =head2 bug
 
   data_type: 'integer'
   is_foreign_key: 1
   is_nullable: 0
 
-Source <-> suite association id
+Bug number (matches bug)
 
 =head2 suite
 
@@ -60,7 +51,7 @@ Source <-> suite association id
   is_foreign_key: 1
   is_nullable: 1
 
-Source <-> suite association id
+Suite id (matches suite)
 
 =head2 arch
 
@@ -68,7 +59,7 @@ Source <-> suite association id
   is_foreign_key: 1
   is_nullable: 1
 
-Source <-> suite association id
+Architecture id (matches arch)
 
 =head2 status
 
@@ -76,7 +67,7 @@ Source <-> suite association id
   extra: {custom_type_name => "bug_status_type",list => ["pending","forwarded","pending-fixed","fixed","absent","done"]}
   is_nullable: 0
 
-Source <-> suite association id
+Status (bug status)
 
 =head2 modified
 
@@ -85,7 +76,7 @@ Source <-> suite association id
   is_nullable: 0
   original: {default_value => \"now()"}
 
-Source <-> suite association id
+Time that this status was last modified
 
 =head2 asof
 
@@ -94,18 +85,11 @@ Source <-> suite association id
   is_nullable: 0
   original: {default_value => \"now()"}
 
-Source <-> suite association id
+Time that this status was last calculated
 
 =cut
 
 __PACKAGE__->add_columns(
-  "id",
-  {
-    data_type         => "integer",
-    is_auto_increment => 1,
-    is_nullable       => 0,
-    sequence          => "bug_status_cache_id_seq",
-  },
   "bug",
   { data_type => "integer", is_foreign_key => 1, is_nullable => 0 },
   "suite",
@@ -144,18 +128,6 @@ __PACKAGE__->add_columns(
   },
 );
 
-=head1 PRIMARY KEY
-
-=over 4
-
-=item * L</id>
-
-=back
-
-=cut
-
-__PACKAGE__->set_primary_key("id");
-
 =head1 UNIQUE CONSTRAINTS
 
 =head2 C<bug_status_cache_bug_suite_arch_idx>
@@ -235,9 +207,21 @@ __PACKAGE__->belongs_to(
 );
 
 
-# Created by DBIx::Class::Schema::Loader v0.07042 @ 2014-11-30 21:56:51
-# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:A4gA20BsSs2R4VKmUCRs/g
+# Created by DBIx::Class::Schema::Loader v0.07046 @ 2017-03-04 10:59:03
+# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:dgaCogdpUWo99BQhdH68Mg
 
+sub sqlt_deploy_hook {
+    my ($self, $sqlt_table) = @_;
+#     $sqlt_table->add_index(name => 'bug_status_cache_bug_suite_arch_idx',
+#                         fields => ['bug',
+#                                    q{COALESCE(suite,0)},
+#                                    q{COALESCE(arch,0)},]
+#                        );
+    for my $f (qw(bug status arch suite asof)) {
+       $sqlt_table->add_index(name => 'bug_status_cache_idx_'.$f,
+                              fields => [$f],
+                             );
+    }
+}
 
-# You can replace this text with custom code or comments, and it will be preserved on regeneration
 1;