Skip to content
Browse files

Drop the unique constraint on class/params, add 'complete' column

  • Loading branch information...
1 parent 4f64699 commit 9589eba775c2e481e03c57a40c6dca478508196c Ray Miller committed Jul 31, 2012
Showing with 111 additions and 1 deletion.
  1. +4 −1 ddl/templates/versions/8/up.sql
  2. +107 −0 lib/LIMS2/Model/Schema/Result/CachedReport.pm
View
5 ddl/templates/versions/8/up.sql
@@ -3,7 +3,10 @@ CREATE TABLE cached_reports (
report_class TEXT NOT NULL,
params TEXT NOT NULL,
expires TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP + INTERVAL '8 hours',
- UNIQUE( report_class, params )
+ complete BOOLEAN NOT NULL DEFAULT FALSE
);
GRANT SELECT ON cached_reports TO "[% ro_role %]";
GRANT SELECT, INSERT, UPDATE, DELETE ON cached_reports TO "[% rw_role %]";
+CREATE INDEX cached_reports_report_class_params_idx ON cached_reports(report_class,params);
+
+-- Intentionally no audit for cached_reports.
View
107 lib/LIMS2/Model/Schema/Result/CachedReport.pm
@@ -0,0 +1,107 @@
+use utf8;
+package LIMS2::Model::Schema::Result::CachedReport;
+
+# Created by DBIx::Class::Schema::Loader
+# DO NOT MODIFY THE FIRST PART OF THIS FILE
+
+=head1 NAME
+
+LIMS2::Model::Schema::Result::CachedReport
+
+=cut
+
+use strict;
+use warnings;
+
+use Moose;
+use MooseX::NonMoose;
+use MooseX::MarkAsMethods autoclean => 1;
+extends 'DBIx::Class::Core';
+
+=head1 COMPONENTS LOADED
+
+=over 4
+
+=item * L<DBIx::Class::InflateColumn::DateTime>
+
+=back
+
+=cut
+
+__PACKAGE__->load_components("InflateColumn::DateTime");
+
+=head1 TABLE: C<cached_reports>
+
+=cut
+
+__PACKAGE__->table("cached_reports");
+
+=head1 ACCESSORS
+
+=head2 id
+
+ data_type: 'char'
+ is_nullable: 0
+ size: 36
+
+=head2 report_class
+
+ data_type: 'text'
+ is_nullable: 0
+
+=head2 params
+
+ data_type: 'text'
+ is_nullable: 0
+
+=head2 expires
+
+ data_type: 'timestamp'
+ default_value: (now() + '08:00:00'::interval)
+ is_nullable: 0
+
+=head2 complete
+
+ data_type: 'boolean'
+ default_value: false
+ is_nullable: 0
+
+=cut
+
+__PACKAGE__->add_columns(
+ "id",
+ { data_type => "char", is_nullable => 0, size => 36 },
+ "report_class",
+ { data_type => "text", is_nullable => 0 },
+ "params",
+ { data_type => "text", is_nullable => 0 },
+ "expires",
+ {
+ data_type => "timestamp",
+ default_value => \"(now() + '08:00:00'::interval)",
+ is_nullable => 0,
+ },
+ "complete",
+ { data_type => "boolean", default_value => \"false", is_nullable => 0 },
+);
+
+=head1 PRIMARY KEY
+
+=over 4
+
+=item * L</id>
+
+=back
+
+=cut
+
+__PACKAGE__->set_primary_key("id");
+
+
+# Created by DBIx::Class::Schema::Loader v0.07022 @ 2012-07-31 16:36:06
+# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:++CtoB4pjLtlShaOGgBGdA
+
+
+# You can replace this text with custom code or comments, and it will be preserved on regeneration
+__PACKAGE__->meta->make_immutable;
+1;

0 comments on commit 9589eba

Please sign in to comment.
Something went wrong with that request. Please try again.