From 59a641b21b06f721bb092b8a889a03638e0ad295 Mon Sep 17 00:00:00 2001 From: Rogan Hamby Date: Fri, 9 Feb 2018 08:18:14 -0500 Subject: [PATCH] making the user delete information a bit more robust --- remove_ou_data/16_delete_usrs_stage_1.sql | 7 +++++++ remove_ou_data/16_delete_usrs_stage_3.sql | 29 +++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 0 deletions(-) create mode 100644 remove_ou_data/16_delete_usrs_stage_3.sql diff --git a/remove_ou_data/16_delete_usrs_stage_1.sql b/remove_ou_data/16_delete_usrs_stage_1.sql index 32eaf30..78c3956 100644 --- a/remove_ou_data/16_delete_usrs_stage_1.sql +++ b/remove_ou_data/16_delete_usrs_stage_1.sql @@ -19,6 +19,10 @@ \set ECHO all \timing +-- creates an output file for serially deleting users, +-- makes it easier than finding each problem stopping a batch +-- creates a stage 2 inbetween 1 and 3 + \t \psql format unaligned \o 16_delete_usrs_stage_2.sql @@ -32,4 +36,7 @@ FROM actor.usr WHERE home_ou IN ( SELECT 'ALTER TABLE actor.usr ENABLE RULE protect_user_delete;'; \o +\pset format aligned +\t + diff --git a/remove_ou_data/16_delete_usrs_stage_3.sql b/remove_ou_data/16_delete_usrs_stage_3.sql new file mode 100644 index 0000000..09cc9d2 --- /dev/null +++ b/remove_ou_data/16_delete_usrs_stage_3.sql @@ -0,0 +1,29 @@ +-- Copyright 2015, Equinox Software, Inc. +-- Author: Galen Charlton +-- +-- This program is free software; you can redistribute it and/or +-- modify it under the terms of the GNU General Public License +-- as published by the Free Software Foundation; either version 2 +-- of the License, or (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program; if not, write to the Free Software +-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +\set ou_to_del ''''EXAMPLE'''' +\set ECHO all +\timing + +SELECT id +FROM actor.usr WHERE home_ou IN ( + SELECT (actor.org_unit_descendants(id)).id FROM actor.org_unit + WHERE shortname IN (SELECT shortname FROM esi.ous_to_del) +); + + +-- find the problems and clear them up -- 1.7.2.5