* Don't bother with the Jobs.active column anymore.

[?]
Oct 8, 2009, 11:19 AM
IXCUNELFZBXTEZKZJXJFP3AFPRHCWJ4NEQC2FSKTOYIZDP74O3RQC

Dependencies

  • [2] S6OISBQ3 * Mark the "current" builds in a jobset, i.e. those corresponding to
  • [3] SHZLOM5M * eval-jobs -> hydra_eval_jobs.
  • [4] YAPITGB3 * Boolean inputs.
  • [5] XNCWZ7OT * Get the job priority from the meta.schedulingPriority attribute.
  • [6] E6IC7YIK * Release sets: need to include the jobset name to disambiguate
  • [7] NI5BVF2V * In job inputs of type "build", allow the project and jobset names of
  • [8] RI4S7SYT * Job status: show the active jobs.
  • [9] X27GNHDV * Basic job info in the database.
  • [10] M552HLIA * Support variant builds.
  • [11] L2E6EVE2 * Merged the Build and Job tables.
  • [12] POPU2ATH * hydra_scheduler: use eval-jobs.
  • [13] FDE3BJAP * Refactoring.
  • [14] LZO3C2KI * Hack around those SQLite timeouts: just retry the transaction.
  • [15] S5PV6IIM * Represent jobs explicitly in the DB.
  • [16] 67P45PY4
  • [17] BTOXLRG3 * Record the input containing the Nix expression (release.nix) in the
  • [18] 7YBYT2LQ
  • [19] CVDK3XJK * In the scheduler, don't check if we've already done a build (except
  • [*] UUGBVEGY * Development notes.
  • [*] RAKTHYAI * In the job status and error pages, show when the status of a job
  • [*] N22GPKYT * Put info about logs / build products in the DB.

Change contents

  • edit in doc/dev-notes.txt at line 146
    [22.558]
    * Using PostgreSQL:
    $ HYDRA_DBI="dbi:Pg:dbname=hydra;" hydra_server.pl
  • replacement in src/script/hydra_scheduler.pl at line 266
    [3.1415][3.5149:5200](),[3.9403][3.5149:5200]()
    # Mark this job as active in the database.
    [3.1415]
    [3.5200]
    # Update the last evaluation time in the database.
  • edit in src/script/hydra_scheduler.pl at line 269
    [3.5286][3.5286:5312]()
    , active => 1
  • replacement in src/script/hydra_scheduler.pl at line 429
    [2.5278][2.5278:5432]()
    # Mark all existing jobs that we haven't seen as inactive.
    my %jobNames;
    $jobNames{$_->{jobName}}++ foreach @{$jobs->{job}};
    [2.5278]
    [2.5432]
    # Update the last checked times and error messages for each
    # job.
  • edit in src/script/hydra_scheduler.pl at line 437
    [3.6254][3.6254:6366](),[3.6366][3.688:689](),[3.7086][3.688:689]()
    $jobInDB->update({active => $jobNames{$jobInDB->name} || $failedJobNames{$jobInDB->name} ? 1 : 0});
  • replacement in src/sql/hydra.sql at line 264
    [3.6950][3.6950:7160]()
    -- `active' means the Nix expression for the jobset currently
    -- contains this job. Otherwise it's a job that has been removed
    -- from the expression.
    active integer not null default 1,
    [3.6950]
    [3.7160]
    active integer not null default 1, -- !!! obsolete, remove