Skip to content

Commit a903575

Browse files
[Tools] Modified deletion query order for physiological file deletion (#8322)
The order of deleted queries is changed, with a few extra necessary queries added. Related to #8232
1 parent 4efccea commit a903575

File tree

1 file changed

+52
-34
lines changed

1 file changed

+52
-34
lines changed

tools/data_integrity/data_deletion/delete_physiological_file.php

Lines changed: 52 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -285,38 +285,8 @@ function deletePhysiologicalFile($physioFileID, $confirm, $printToSQL, $DB, &$ou
285285
echo "\Deleting DB entries\n";
286286
echo "----------------------------\n";
287287

288-
// delete from the physiological_archive table
289-
$DB->delete(
290-
"physiological_archive",
291-
["PhysiologicalFileID" => $physioFileID]
292-
);
293-
294-
// delete from the physiological_file table
295-
$DB->delete(
296-
"physiological_file",
297-
["PhysiologicalFileID" => $physioFileID]
298-
);
299-
300-
// delete from the physiological_task_event table
301-
$DB->delete(
302-
"physiological_task_event",
303-
["PhysiologicalFileID" => $physioFileID]
304-
);
305-
306-
// delete from the physiological_event_file table
307-
$DB->delete(
308-
"physiological_event_file",
309-
["PhysiologicalFileID" => $physioFileID]
310-
);
311-
312-
// delete from the physiological_event_archive table
313-
$DB->delete(
314-
"physiological_event_archive",
315-
["PhysiologicalFileID" => $physioFileID]
316-
);
317-
318288
// delete from the physiological_event_parameter_category_level table
319-
$EventParameterIDs = $DB->pselect(
289+
$EventParameterIDs = $DB->pselectCol(
320290
'SELECT EventParameterID
321291
FROM physiological_event_parameter
322292
JOIN physiological_event_file USING(EventFileID)
@@ -334,7 +304,7 @@ function deletePhysiologicalFile($physioFileID, $confirm, $printToSQL, $DB, &$ou
334304
}
335305

336306
// delete from the physiological_event_parameter table
337-
$EventFileIDs = $DB->pselect(
307+
$EventFileIDs = $DB->pselectCol(
338308
'SELECT EventFileID
339309
FROM physiological_event_file
340310
WHERE PhysiologicalFileID=:pfid',
@@ -350,8 +320,8 @@ function deletePhysiologicalFile($physioFileID, $confirm, $printToSQL, $DB, &$ou
350320
}
351321
}
352322

353-
// delete from the physiological_annotation_instance table
354-
$AnnotationFileIDs = $DB->pselect(
323+
// delete from the physiological_annotation_* tables
324+
$AnnotationFileIDs = $DB->pselectCol(
355325
'SELECT AnnotationFileID
356326
FROM physiological_annotation_file
357327
WHERE PhysiologicalFileID=:pfid',
@@ -364,6 +334,18 @@ function deletePhysiologicalFile($physioFileID, $confirm, $printToSQL, $DB, &$ou
364334
"physiological_annotation_instance",
365335
["AnnotationFileID" => $AnnotationFileID]
366336
);
337+
$DB->delete(
338+
"physiological_annotation_rel",
339+
["AnnotationTSV" => $AnnotationFileID]
340+
);
341+
$DB->delete(
342+
"physiological_annotation_rel",
343+
["AnnotationJSON" => $AnnotationFileID]
344+
);
345+
$DB->delete(
346+
"physiological_annotation_parameter",
347+
["AnnotationFileID" => $AnnotationFileID]
348+
);
367349
}
368350
}
369351

@@ -396,6 +378,42 @@ function deletePhysiologicalFile($physioFileID, $confirm, $printToSQL, $DB, &$ou
396378
"physiological_parameter_file",
397379
["PhysiologicalFileID" => $physioFileID]
398380
);
381+
382+
// delete from the physiological_archive table
383+
$DB->delete(
384+
"physiological_archive",
385+
["PhysiologicalFileID" => $physioFileID]
386+
);
387+
388+
// delete from the physiological_event_archive table
389+
$DB->delete(
390+
"physiological_event_archive",
391+
["PhysiologicalFileID" => $physioFileID]
392+
);
393+
394+
// delete from the physiological_task_event table
395+
$DB->delete(
396+
"physiological_task_event",
397+
["PhysiologicalFileID" => $physioFileID]
398+
);
399+
400+
// delete from the physiological_event_file table
401+
$DB->delete(
402+
"physiological_event_file",
403+
["PhysiologicalFileID" => $physioFileID]
404+
);
405+
406+
// delete from the physiological_chunk_process table
407+
$DB->delete(
408+
"physiological_chunk_process",
409+
["PhysiologicalFileID" => $physioFileID]
410+
);
411+
412+
// delete from the physiological_file table
413+
$DB->delete(
414+
"physiological_file",
415+
["PhysiologicalFileID" => $physioFileID]
416+
);
399417
} elseif ($printToSQL) {
400418
echo "Generating all DELETE statements for physiological file: " .
401419
$physioFileID . "\n";

0 commit comments

Comments
 (0)