hydra icon indicating copy to clipboard operation
hydra copied to clipboard

Once a project is converted to a flake, you can't go back to legacy?

Open dhess opened this issue 4 years ago • 1 comments

We've been slowly converting our Hydra "legacy" jobsets to flakes, via declarative job specs. Tonight I updated 2 repos to flakes, but had to revert the change due to their use of a dependency that doesn't evaluate properly as a flake. Now whenever our Hydra evaluates the declarative job spec, this happens:

Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:vonnegut-pr-462, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  new row for relation "jobsets" violates check constraint "jobsets_flake_paths_check"
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: DETAIL:  Failing row contains (vonnegut-pr-462, 525, hackworthltd, PR 462: [github] Add a feature request template, vonnegut, release.nix, in job ‘source-code-checks’:
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: error: attribute 'currentSystem..., 1619402208, 1619403618, null, 1, 0, 0, , 5, 60, 25, null, null, null, 1, git+ssh://[email protected]/hackworthltd/vonnegut?ref=refs/pull/462...). [for Statement "UPDATE jobsets SET nixexprinput = ?, nixexprpath = ? WHERE ( ( name = ? AND project = ? ) )" with ParamValues: 1='vonnegut', 2='release.nix', 3='vonnegut-pr-462', 4='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:haskell-template, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='haskell-template', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:tc-inference-pr-6, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='tc-inference-pr-6', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:hacknix-lib, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='hacknix-lib', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:hacknix, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='hacknix', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:vonnegut-pr-459, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='vonnegut-pr-459', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:haskell-template-test-flake, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='haskell-template-test-flake', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:vonnegut, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='vonnegut', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:haskell-hacknix, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='haskell-hacknix', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:vonnegut-pr-450, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='vonnegut-pr-450', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:haskell-hacknix-pr-198, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='haskell-hacknix-pr-198', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:vonnegut-pr-460, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='vonnegut-pr-460', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:vonnegut-pr-396, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='vonnegut-pr-396', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:vonnegut-pr-354, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='vonnegut-pr-354', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:tc-inference-pr-7, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='tc-inference-pr-7', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:tc-inference, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='tc-inference', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:haskell-hacknix-pr-186, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='haskell-hacknix-pr-186', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:vonnegut-pr-323, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='vonnegut-pr-323', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:compendium, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='compendium', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:hackworth-ops, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='hackworth-ops', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:vonnegut-pr-384, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='vonnegut-pr-384', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:viz, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='viz', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:vonnegut-ghc865, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='vonnegut-ghc865', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:vonnegut-ghc884, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='vonnegut-ghc884', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65
Apr 26 02:20:31 hydra-b hydra-notify[1382764]: ERROR: failed to process declarative jobset hackworthltd:hackworth-nix-darwin, DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR:  current transaction is aborted, commands ignored until end of transaction block [for Statement "SELECT me.name, me.id, me.project, me.description, me.nixexprinput, me.nixexprpath, me.errormsg, me.errortime, me.lastcheckedtime, me.triggertime, me.enabled, me.enableemail, me.hidden, me.emailoverride, me.keepnr, me.checkinterval, me.schedulingshares, me.fetcherrormsg, me.forceeval, me.starttime, me.type, me.flake FROM jobsets me WHERE ( ( me.name = ? AND me.project = ? ) )" with ParamValues: 1='hackworth-nix-darwin', 2='hackworthltd'] at /nix/store/dnkb3ld53d7n3p4wwzxbr3kv4x43559d-hydra-0.1.20210426.523d6df/libexec/hydra/lib/Hydra/Helper/AddBuilds.pm line 65

What's odd is that a few of those are still legacy projects and always have been, so I'm not sure why they're failing.

We're running https://github.com/NixOS/hydra/commit/85e299d3d7883f5b8a0394784f918e30f91bf8d7, by the way.

dhess avatar Apr 26 '21 02:04 dhess

I had a flake based job and converted it back to a regular one, however I did hit the same error message somewhere on the way, which leads me to believe that this issue may be obsolete.

For anyone else hitting this issue; if you too "violate the check constraint 'jobsets_flake_paths_check'" then you're hitting this code:

https://github.com/NixOS/hydra/blob/d7986226f0666d5aa0032fdcdb9f38eef6a91dd3/src/sql/hydra.sql#L100

And reading the third line in OP:

[…] [for Statement "UPDATE jobsets SET nixexprinput = ?, nixexprpath = ? WHERE ( ( name = ? AND project = ? ) )" with ParamValues: 1='vonnegut', 2='release.nix', 3='vonnegut-pr-462', 4='hackworthltd'] […]

Implies that either type == 1 or flake != null, which is to say make sure your jobspec generates a job with type = 0 and no flake set (setting the flake to null explicitly caused issues for me), as well as nixexprinput and nixexprpath. That fixed it for me.

benaryorg avatar Jul 24 '24 12:07 benaryorg