TaskRetries: init table

[?]
Aug 26, 2021, 8:32 PM
6JYDU2DMPSG7OXOASKM5HKAQVVNM2KX37P737WSVS4NSNMZETEBAC

Dependencies

  • [2] OZ2XXTT4 update-dbix.pl: correct indentation
  • [3] WQ3QMV3D DBIx::Class: migrate to use_namespaces
  • [*] N22GPKYT * Put info about logs / build products in the DB.
  • [*] RYTQLATY Keep track of failed paths in the Hydra database
  • [*] 4S5JF5JP Use latest DBIx::Class::Schema::Loader
  • [*] D5QIOJGP * Move everything up one directory.

Change contents

  • file addition: TaskRetries.pm (----------)
    [3.1]
    use utf8;
    package Hydra::Schema::Result::TaskRetries;
    # Created by DBIx::Class::Schema::Loader
    # DO NOT MODIFY THE FIRST PART OF THIS FILE
    =head1 NAME
    Hydra::Schema::Result::TaskRetries
    =cut
    use 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<taskretries>
    =cut
    __PACKAGE__->table("taskretries");
    =head1 ACCESSORS
    =head2 id
    data_type: 'integer'
    is_auto_increment: 1
    is_nullable: 0
    sequence: 'taskretries_id_seq'
    =head2 channel
    data_type: 'text'
    is_nullable: 0
    =head2 pluginname
    data_type: 'text'
    is_nullable: 0
    =head2 payload
    data_type: 'text'
    is_nullable: 0
    =head2 attempts
    data_type: 'integer'
    is_nullable: 0
    =head2 retry_at
    data_type: 'integer'
    is_nullable: 0
    =cut
    __PACKAGE__->add_columns(
    "id",
    {
    data_type => "integer",
    is_auto_increment => 1,
    is_nullable => 0,
    sequence => "taskretries_id_seq",
    },
    "channel",
    { data_type => "text", is_nullable => 0 },
    "pluginname",
    { data_type => "text", is_nullable => 0 },
    "payload",
    { data_type => "text", is_nullable => 0 },
    "attempts",
    { data_type => "integer", is_nullable => 0 },
    "retry_at",
    { data_type => "integer", 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.07049 @ 2021-08-26 16:30:59
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:4MC8UnsgrvJVRrIURvSH5A
    # You can replace this text with custom code or comments, and it will be preserved on regeneration
    1;
  • edit in src/sql/hydra.sql at line 556
    [6.4073]
    [6.4073]
    -- Events processed by hydra-notify which have failed at least once
    --
    -- The payload field contains the original, unparsed payload.
    --
    -- One row is created for each plugin which fails to process the event,
    -- with an increasing retry_at and attempts field.
    create table TaskRetries (
    id serial primary key not null,
    channel text not null,
    pluginname text not null,
    payload text not null,
    attempts integer not null,
    retry_at integer not null
    );
    create index IndexTaskRetriesOrdered on TaskRetries(retry_at asc);
  • edit in src/sql/update-dbix.pl at line 42
    [2.1360]
    [2.1360]
    "taskretries" => "TaskRetries",
  • file addition: upgrade-77.sql (----------)
    [8.3004]
    -- Events processed by hydra-notify which have failed at least once
    --
    -- The payload field contains the original, unparsed payload.
    --
    -- One row is created for each plugin which fails to process the event,
    -- with an increasing retry_at and attempts field.
    create table TaskRetries (
    id serial primary key not null,
    channel text not null,
    pluginname text not null,
    payload text not null,
    attempts integer not null,
    retry_at integer not null
    );
    create index IndexTaskRetriesOrdered on TaskRetries(retry_at asc);