DBIx likes to eagerly select all columns without a way to really tell it so. Therefore, this splits this one large column in to its own table.
I'd also like to make "jobsets" use this table too, but that is on hold to stop the bleeding caused by the extreme amount of traffic this is causing.
GLIPWYWLW6JNCIPMAXPKU64RHO2WDIFYZ5ZNGMYUJKX5Y7ZPSVJQC MLYGGEK7SIXPW4V546CKI3M7FLAC2HK6BHZDPRRDNQWMSHOU6GKAC ZBCME7K4KU5DVOTOMKEDPA34MV5GIWWYC5YBE4GAZH343D7ERTIAC CMBTR3KDWTFILHFG6CP3NSMQDWBJW7L4IJ24L6YT2T4GWRMVWRAQC BMGYDRNKCMHZDQLDS4NQNC24AVMNW2QGVBAUZ5X6CNOEU3ZOIIGAC VH5ZABDRP565VZIG55YHNYYPST53NQ2J6YM362NSLXCAHI5WPH4AC U5ZWDBW3XRWDWMMPSSXEZ3DT47FPX5WH74AZ4URVQHHAD7ZOB46AC 2GK5DOU7ODF4WBSN3QTD3WIO52VTL2LOAXKGCDEMMAQPTEO4A4HAC D5QIOJGPKQJIYBUCSC3MFJ3TXLPNZ2XMI37GXMFRVRFWWR2VMTFAC JM3DPYOMVNMCL5GMEYC3Y4NDRGTNIFBBFTPGPVT66GPENVPU7EVQC 5SHCWE7XPQORSOLY7HGAIK2ODKBFPY4KVXRL2W7X6D4WALU544HQC SVDYZSZCLZX77OM4W4XK5ODTVZQ6VTRTMHXOFXO65WZNFZPQAG2AC SB2V735VJ2CDHGCXRUA5FOYHDRXQFVOZ3KXC3YKXWRNW6DIX7RXQC RFE6T5LGBFFNEPHZOPF4UNMFC2L4CGD5TPAMOXDLRPH3TZJ43UBAC 4WZQW2N6NJSIKSK7DCOV2YVEG5C45LLUM2FCCZRLISUXUGMBGF6QC IK53RV4VGOHLCZGQCCIKPB45M3C7M7YMNBOJFBGZJ4LWIZNU4QNQC U4TD3AIQXBJFFUORTMIC4IHZTVBORRKL2TZ2FSP4G665ECZOEMNAC WZZOOYCHQJJ6BWQPJFXULOBVSLZXPMOKM2YNA7TPEXUINLXFVI5AC W74RIXTJSDGUC4Q7NAUCS7TNC6YIR6KZST5ALO5DV7OPUEADZK3AC N22GPKYTOLZLBGTGDATQDVZ4R5APZEAOIA7L32X4UXBH4XNI7MWAC NS7SND6RF6X3CVSVP7MLAQQZFA64E63YKFFABPEAGEPHX6PNWBOQC G6HJY2V4CSSZF6BPIMRMRAJYRKPLTCBUFTJWZWK3BSNT235CZQ6QC 3PNG7NIBQQURUUPRVQXYL342OT7JUUYOMY2JJNP6YDX7SYJDZMYAC G2T4WAHINIIKTEKR4JBIRXO5IEKO7MPYD7U5PQ4AIX3WL54EPP3AC IGR322YPZG7IX33I6CSF4ZIHFKXCT4ERC2LC73MW6PN7W53D73BAC 4S5JF5JPKWTDYHFJMTXOFTDAMYHD5ON2UBTLMGVYPJCP6QYIM2EAC use utf8;package Hydra::Schema::EvaluationErrors;# Created by DBIx::Class::Schema::Loader# DO NOT MODIFY THE FIRST PART OF THIS FILE=head1 NAMEHydra::Schema::EvaluationErrors=cutuse strict;use warnings;use base 'DBIx::Class::Core';=head1 COMPONENTS LOADED=over 4=item * L<Hydra::Component::ToJSON>=back=cut__PACKAGE__->load_components("+Hydra::Component::ToJSON");=head1 TABLE: C<evaluationerrors>=cut__PACKAGE__->table("evaluationerrors");=head1 ACCESSORS=head2 iddata_type: 'integer'is_auto_increment: 1is_nullable: 0sequence: 'evaluationerrors_id_seq'=head2 errormsgdata_type: 'text'is_nullable: 1=head2 errortimedata_type: 'integer'is_nullable: 1=cut__PACKAGE__->add_columns("id",{data_type => "integer",is_auto_increment => 1,is_nullable => 0,sequence => "evaluationerrors_id_seq",},"errormsg",{ data_type => "text", is_nullable => 1 },"errortime",{ data_type => "integer", is_nullable => 1 },);=head1 PRIMARY KEY=over 4=item * L</id>=back=cut__PACKAGE__->set_primary_key("id");=head1 RELATIONS=head2 jobsetevalsType: has_manyRelated object: L<Hydra::Schema::JobsetEvals>=cut__PACKAGE__->has_many("jobsetevals","Hydra::Schema::JobsetEvals",{ "foreign.evaluationerror_id" => "self.id" },undef,);# Created by DBIx::Class::Schema::Loader v0.07049 @ 2021-02-01 20:17:39# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:sZIg35KWCO8MOsQ5cfN1IA__PACKAGE__->add_column("+id" => { retrieve_on_insert => 1 });1;
# Created by DBIx::Class::Schema::Loader v0.07049 @ 2021-01-25 14:44:07# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:OVxeYH+eoZZrAsAJ2/mAAA
# Created by DBIx::Class::Schema::Loader v0.07049 @ 2021-02-01 20:17:39# DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:SGtK0PwRkbxiMuitQvs4wQ
<p>Errors occurred at [% INCLUDE renderDateTime timestamp=(eval.errortime || eval.timestamp) %].</p><pre class="alert alert-error">[% HTML.escape(eval.errormsg) %]</pre>
<p>Errors occurred at [% INCLUDE renderDateTime timestamp=(eval.evaluationerror.errortime || eval.timestamp) %].</p><pre class="alert alert-error">[% HTML.escape(eval.evaluationerror.errormsg) %]</pre>
<p>Errors occurred at [% INCLUDE renderDateTime timestamp=(eval.errortime || eval.timestamp) %].</p><pre class="alert alert-error">[% HTML.escape(eval.errormsg) %]</pre>
<p>Errors occurred at [% INCLUDE renderDateTime timestamp=(eval.evaluationerror.errortime || eval.timestamp) %].</p><pre class="alert alert-error">[% HTML.escape(eval.evaluationerror.errormsg) %]</pre>
create table EvaluationErrors (id serial primary key not null,errorMsg text, -- error output from the evaluatorerrorTime integer, -- timestamp associated with errorMsgjobsetEvalId integer not null,FOREIGN KEY (jobsetEvalId)REFERENCES JobsetEvals(id)ON DELETE SET NULL);ALTER TABLE JobsetEvalsADD COLUMN evaluationerror_id integer NULL,ADD FOREIGN KEY (evaluationerror_id)REFERENCES EvaluationErrors(id)ON DELETE SET NULL;INSERT INTO EvaluationErrors(errorMsg, errorTime, jobsetEvalId)SELECT errorMsg, errorTime, idFROM JobsetEvalsWHERE JobsetEvals.errorMsg != '' and JobsetEvals.errorMsg is not null;UPDATE JobsetEvalsSET evaluationerror_id = EvaluationErrors.idFROM EvaluationErrorsWHERE JobsetEvals.id = EvaluationErrors.jobsetEvalIdAND JobsetEvals.errorMsg != '' and JobsetEvals.errorMsg is not null;ALTER TABLE JobsetEvalsDROP COLUMN errorMsg,DROP COLUMN errorTime;ALTER TABLE EvaluationErrorsDROP COLUMN jobsetEvalId;