Builds.jobset_id: make not-null

[?]
Feb 5, 2020, 8:25 PM
ICRGXEPIPD7RFHFMBKWD7ZOAUHARG47VQH3WK3HJFYCV5ZVBQGHQC

Dependencies

  • [2] SJPEC375 Builds: add a nullable jobset_id foreign key to Jobsets.
  • [3] H7CNGK4O * Log evaluation errors etc. in the DB.
  • [4] RU7AQO7U * Role-based access control. Only admins can create projects. Only
  • [5] S5PV6IIM * Represent jobs explicitly in the DB.
  • [6] JM3DPYOM generated schema with new dbix class schema loader, grrrrrr
  • [7] 4S5JF5JP Use latest DBIx::Class::Schema::Loader
  • [8] SHBLLAVH * More global substitution.
  • [9] 3E6IP3R3 * Add the name of the jobset to ReleaseSetJobs, otherwise we can't
  • [10] VJHIHMEH * Store the meta.longDescription and meta.license attributes in the
  • [11] FHF6IZJQ * Basic release management: releases are now dynamically computed as
  • [12] ZVTSOVHN * Support Subversion checkouts.
  • [13] BHZXGT2H * Channels: provide an index page that lists all the packages in the
  • [14] LCKWLQW3 * In Sqlite "release" is now a keyword, so use "release_" instead.
  • [15] TPNHTE5V Remove obsolete Builds columns and provide accurate "Running builds"
  • [16] WE5Q2NVI Allow build to be bumped to the front of the queue via the web interface
  • [17] IGR322YP sql: Generate models from postgresql
  • [18] R5D7DZPE
  • [19] YAPITGB3 * Boolean inputs.
  • [20] ITJWNQEZ Update Hydra schema, otherwise hydra-notify will not work.
  • [21] T5BIOVJE Add support for tracking custom metrics
  • [22] GNIEG2GC * Disambiguate jobs by jobset name. I.e. jobs with the same name in
  • [23] IK53RV4V
  • [24] YTIDBFGU Drop unused "disabled" columns
  • [25] TWVSALRL * Allow the maximum number of concurrent builds per platform to be
  • [26] V4RNHJNR * Add a link to each project's homepage. Suggested by karltk.
  • [27] TLZ2SPBR
  • [28] L2E6EVE2 * Merged the Build and Job tables.
  • [29] EYNG4EL4 * Regenerate the bindings from a clean sqlite database.
  • [30] ECBA3GQO * Make the schema class names match the case of the SQL table names.
  • [31] 4CELXP7P Remove the longDescription field
  • [32] 37R34XJO * Negative caching: don't perform a build if a dependency already
  • [33] CMU3YKOU * Store the release name.
  • [34] CLJQCY2X * Store info about all the build actions and allow them to be
  • [35] B72GLND4
  • [36] X27GNHDV * Basic job info in the database.
  • [37] SB2V735V Keep track of the database schema version
  • [38] YTZOC7C5 * Editing of jobset inputs.
  • [39] KOTB7BKV
  • [40] BD3GRK4B * Get rid of "positive failures" and separate log phases.
  • [41] SJLEZFC4 check getHydraPath in stead of Envvar HYDRA_DBI directly
  • [42] 26PYNDXV Remove the errorMsg column from the Builds table
  • [43] AHTEIK7G * Added a maintainers field to the Builds table.
  • [44] FTPCV25M Store aggregate members in the database
  • [45] JTHWA6AM Rename aggregate members to constituents
  • [46] TQKGQ5R3
  • [47] PMNWRTGJ Add multiple output support
  • [48] ZI535LI6 * hydra: 'new' UI for project/jobset/job/build
  • [49] 6BLUKEQ2 * Caching of "path" inputs, and fake a revision number for those.
  • [50] 3ZCEPLNO
  • [51] 53IMJNBB Add isChannel column and meta attribute.
  • [52] D3DIBMOK * For products that are directories (like manuals), allow a default
  • [53] G2T4WAHI Store the inputs of each evaluation in the database
  • [54] S66BOMVU * Added authentication.
  • [55] Y6AHH4TH Remove the logfile and logSize columns from the database
  • [56] LZVO64YG Merge in the first bits of the API work
  • [*] J5UVLXOK * Start of a basic Catalyst web interface.
  • [*] N22GPKYT * Put info about logs / build products in the DB.
  • [*] D5QIOJGP * Move everything up one directory.

Change contents

  • replacement in src/lib/Hydra/Schema/Builds.pm at line 71
    [2.62][2.62:79]()
    is_nullable: 1
    [2.62]
    [3.7600]
    is_nullable: 0
  • replacement in src/lib/Hydra/Schema/Builds.pm at line 225
    [2.95][2.95:164]()
    { data_type => "integer", is_foreign_key => 1, is_nullable => 1 },
    [2.95]
    [3.1331]
    { data_type => "integer", is_foreign_key => 1, is_nullable => 0 },
  • replacement in src/lib/Hydra/Schema/Builds.pm at line 469
    [2.218][2.218:346]()
    {
    is_deferrable => 0,
    join_type => "LEFT",
    on_delete => "CASCADE",
    on_update => "NO ACTION",
    },
    [2.218]
    [2.346]
    { is_deferrable => 0, on_delete => "CASCADE", on_update => "NO ACTION" },
  • replacement in src/lib/Hydra/Schema/Builds.pm at line 576
    [3.3378][2.500:642]()
    # Created by DBIx::Class::Schema::Loader v0.07049 @ 2020-02-06 12:32:28
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:RvrINOAowDcde8Nd9VD6rQ
    [3.3378]
    [3.4481]
    # Created by DBIx::Class::Schema::Loader v0.07049 @ 2020-02-06 12:34:25
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:EEXlcKN/ydXJ129vT0jTUw
  • replacement in src/sql/hydra.sql at line 173
    [3.5820][2.1307:1339]()
    jobset_id integer null,
    [3.5820]
    [3.5820]
    jobset_id integer not null,
  • file addition: upgrade-64.sql (----------)
    [60.3004]
    -- Make the Builds.jobset_id column NOT NULL. If this upgrade fails,
    -- either the admin didn't run the backfiller or there is a bug. If
    -- the admin ran the backfiller and there are null columns, it is
    -- very important to figure out where the nullable columns came from.
    ALTER TABLE Builds
    ALTER COLUMN jobset_id SET NOT NULL;