DIRAC
DIRAC copied to clipboard
[9.1] feat: added foreign keys to PilotAgentsDB
For https://github.com/DIRACGrid/diracx/issues/414
- [ ] add to Wiki + update guide
use PilotAgentsDB;
ALTER TABLE `JobToPilotMapping` ADD CONSTRAINT `fk_JobToPilot_PilotID` FOREIGN KEY (`PilotID`) REFERENCES `PilotAgents`(`PilotID`) ON DELETE CASCADE;
ALTER TABLE `PilotOutput` ADD CONSTRAINT `fk_PilotOutput_PilotID` FOREIGN KEY (`PilotID`) REFERENCES `PilotAgents`(`PilotID`) ON DELETE CASCADE;
use SandboxMetadataDB;
ALTER TABLE `sb_EntityMapping` ADD CONSTRAINT `fk_EntityToSB_SBId` FOREIGN KEY (`SBId`) REFERENCES `sb_SandBoxes`(`SBId`) ON DELETE CASCADE;
ALTER TABLE `sb_EntityMapping` MODIFY COLUMN `Type` ENUM("Input", "Output") NOT NULL;
use TaskQueueDB;
ALTER TABLE `tq_TQToBannedSites` MODIFY CONSTRAINT `tq_TQToBannedSites_ibfk_1` FOREIGN KEY (`TQId`) REFERENCES `tq_TaskQueues` (`TQId`) ON DELETE CASCADE ON UPDATE RESTRICT;
ALTER TABLE `tq_TQToGridCEs` MODIFY CONSTRAINT `tq_TQToGridCEs_ibfk_1` FOREIGN KEY (`TQId`) REFERENCES `tq_TaskQueues` (`TQId`) ON DELETE CASCADE ON UPDATE RESTRICT;
ALTER TABLE `tq_TQToGridMiddlewares` MODIFY CONSTRAINT `tq_TQToGridMiddlewares_ibfk_1` FOREIGN KEY (`TQId`) REFERENCES `tq_TaskQueues` (`TQId`) ON DELETE CASCADE ON UPDATE RESTRICT;
ALTER TABLE `tq_TQToJobTypes` MODIFY CONSTRAINT `tq_TQToJobTypes_ibfk_1` FOREIGN KEY (`TQId`) REFERENCES `tq_TaskQueues` (`TQId`) ON DELETE CASCADE ON UPDATE RESTRICT;
ALTER TABLE `tq_TQToPilotTypes` MODIFY CONSTRAINT `tq_TQToPilotTypes_ibfk_1` FOREIGN KEY (`TQId`) REFERENCES `tq_TaskQueues` (`TQId`) ON DELETE CASCADE ON UPDATE RESTRICT;
ALTER TABLE `tq_TQToPlatforms` MODIFY CONSTRAINT `tq_TQToPlatforms_ibfk_1` FOREIGN KEY (`TQId`) REFERENCES `tq_TaskQueues` (`TQId`) ON DELETE CASCADE ON UPDATE RESTRICT;
ALTER TABLE `tq_TQToSites` MODIFY CONSTRAINT `tq_TQToSites_ibfk_1` FOREIGN KEY (`TQId`) REFERENCES `tq_TaskQueues` (`TQId`) ON DELETE CASCADE ON UPDATE RESTRICT;
ALTER TABLE `tq_TQToTags` MODIFY CONSTRAINT `tq_TQToTags_ibfk_1` FOREIGN KEY (`TQId`) REFERENCES `tq_TaskQueues` (`TQId`) ON DELETE CASCADE ON UPDATE RESTRICT;
ALTER TABLE `tq_Jobs` MODIFY CONSTRAINT `tq_Jobs_ibfk_1` FOREIGN KEY (`TQId`) REFERENCES `tq_TaskQueues` (`TQId`) ON DELETE CASCADE ON UPDATE RESTRICT;
- [ ] check for
tq_jobsON DELETE CASCADE - [ ] port to DiracX
BEGINRELEASENOTES
*WMS CHANGE: add foreign keys to PilotAgentsDB and SandboxMetadataDB
*Core CHANGE: MySQL: use ON DELETE CASCADE for foreign keys by default
ENDRELEASENOTES
The issue with PilotWrapper should be fixed with https://github.com/DIRACGrid/Pilot/pull/251 (still to be merged to master branch...)