Skip to content
chaen edited this page Jul 24, 2026 · 5 revisions

DIRAC v9.1

DIRAC v9.1 is ...

Specific notes on DIRAC v9

Time management within allocations has been fixed (a83fa25). Please double check your CPUTime values in your JDLs (expressed in DB12.seconds) as well as in your CEs configuration (expressed in minutes) as you might get payloads running out of time if they are not correct.

Migration from v9.0 to v9.1

skeleton document for migration

What follows is a skeleton of migration. We suggest to copy/paste/edit what is below, adapting it to your installation. It contains few sections, starting from "PRE".

PRE

Things that have to be done in v9.0, before you even start considering a migration

  • [ ]

the day before the update

  • Install the latest DIRAC v9.0
  • (???) partial drain of the system (can't fully drain) by stopping the Transformation/WorkflowTask agents

(???) few hours before the update

  • stop Transformation/RequestTask agents
  • stop Transformation/Transformation agents
  • stop RequestManagement/RequestExecuting agent

Update phase ("deep downtime")

  • (???) stop all DIRAC components (agents, services, executors) with the exception of:
    • Configuration/Server Services
    • Framework/SystemAdministrator (of these, there will be one per server)
use JobDB;
DROP TABLE IF EXISTS `JobsHistorySummary`;
CREATE TABLE `JobsHistorySummary` (
  `ID` INT AUTO_INCREMENT PRIMARY KEY,
  `Status` VARCHAR(32),
  `Site` VARCHAR(100),
  `Owner` VARCHAR(32),
  `OwnerGroup` VARCHAR(128),
  `VO` VARCHAR(64),
  `JobGroup` VARCHAR(32),
  `JobType` VARCHAR(32),
  `ApplicationStatus` VARCHAR(255),
  `MinorStatus` VARCHAR(128),
  `JobCount` INT,
  `RescheduleSum` INT,
  UNIQUE KEY uq_summary (
    `Status`,
    `Site`,
    `Owner`,
    `OwnerGroup`(32),
    `VO`,
    `JobGroup`,
    `JobType`,
    `ApplicationStatus`(128),
    `MinorStatus`
  )
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

use PilotAgentsDB;
DROP TABLE IF EXISTS `PilotsHistorySummary`;
CREATE TABLE `PilotsHistorySummary` (
  `GridSite` VARCHAR(128),
  `ComputingElement` VARCHAR(128),
  `GridType` VARCHAR(128),
  `Status` VARCHAR(32),
  `VO` VARCHAR(64),
  `PilotCount` INT,
  PRIMARY KEY (`GridSite`,`ComputingElement`,`GridType`,`Status`, `VO`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Restart phase

  • restart the running DIRAC components
  • start all stopped DIRAC components, services before agents

Checking phase

  • DIRAC:
  • DiracX:
  • DiracX-Web:

Any time after

Later:

RMS

Following #8714 a new index needs to be added to the RequestDB

CREATE INDEX idx_request_status_notbefore_lastupdate ON Request (Status, NotBefore, LastUpdate) ALGORITHM=INPLACE LOCK=NONE;

Clone this wiki locally