FMHN#76578 Deadlock ontdekt tijdens wachten op resource

svn path=/Database/trunk/; revision=58976
This commit is contained in:
Jos Groot Lipman
2023-02-06 09:34:17 +00:00
parent b85ee1f36e
commit 77d01e6216

View File

@@ -194,12 +194,19 @@ BEGIN
END;
/
CREATE_TRIGGER(res_t_res_rsv_artikel_B_I)
BEFORE INSERT ON res_rsv_artikel
FOR EACH ROW
BEGIN
UPDATE_PRIMARY_KEY(res_rsv_artikel_key, res_s_res_rsv_artikel_key);
END;
/
CREATE_TRIGGER(res_t_res_rsv_artikel_B_IU)
BEFORE INSERT OR UPDATE ON res_rsv_artikel
FOR EACH ROW
BEGIN
IF :old.res_status_bo_key=6 THEN raise_application_error(-20001, 'Reserveringsgegevens zijn verwerkt; wijzigen is niet meer toegestaan.'); END IF;
UPDATE_PRIMARY_KEY(res_rsv_artikel_key, res_s_res_rsv_artikel_key);
IF :new.res_status_bo_key = 5 AND :old.res_status_bo_key <> 5
THEN
:new.res_rsv_artikel_afgemeld := SYSDATE;
@@ -215,12 +222,19 @@ BEGIN
END;
/
CREATE_TRIGGER(res_t_res_rsv_deel_B_I)
BEFORE INSERT ON res_rsv_deel
FOR EACH ROW
BEGIN
UPDATE_PRIMARY_KEY(res_rsv_deel_key, res_s_res_rsv_deel_key);
END;
/
CREATE_TRIGGER(res_t_res_rsv_deel_B_IU)
BEFORE INSERT OR UPDATE ON res_rsv_deel
FOR EACH ROW
BEGIN
IF :old.res_status_bo_key=6 THEN raise_application_error(-20001, 'Reserveringsgegevens zijn verwerkt; wijzigen is niet meer toegestaan.'); END IF;
UPDATE_PRIMARY_KEY(res_rsv_deel_key, res_s_res_rsv_deel_key);
IF :new.res_status_bo_key = 5 AND :old.res_status_bo_key <> 5
THEN
:new.res_rsv_deel_afgemeld := SYSDATE;
@@ -378,12 +392,19 @@ BEGIN
END;
/
CREATE_TRIGGER(res_t_res_rsv_ruimte_B_I)
BEFORE INSERT ON res_rsv_ruimte
FOR EACH ROW
BEGIN
UPDATE_PRIMARY_KEY(res_rsv_ruimte_key, res_s_res_rsv_ruimte_key);
END;
/
CREATE_TRIGGER(res_t_res_rsv_ruimte_B_IU)
BEFORE INSERT OR UPDATE ON res_rsv_ruimte
FOR EACH ROW
BEGIN
IF :old.res_status_bo_key=6 THEN raise_application_error(-20001, 'Reserveringsgegevens '||:new.res_rsv_ruimte_key||'/'||:new.res_rsv_ruimte_volgnr||' zijn verwerkt; wijzigen is niet meer toegestaan.'); END IF;
UPDATE_PRIMARY_KEY(res_rsv_ruimte_key, res_s_res_rsv_ruimte_key);
BEGIN IF :new.res_rsv_ruimte_verwijder IS NOT NULL OR (:new.res_rsv_ruimte_verwijder IS NULL AND :old.res_rsv_ruimte_verwijder IS NOT NULL) THEN UPDATE res_rsv_artikel SET res_rsv_artikel_verwijder = :new.res_rsv_ruimte_verwijder WHERE res_rsv_artikel.res_rsv_ruimte_key = :new.res_rsv_ruimte_key AND res_rsv_artikel.res_rsv_artikel_verwijder IS NULL; END IF; END;
BEGIN IF :new.res_rsv_ruimte_verwijder IS NOT NULL OR (:new.res_rsv_ruimte_verwijder IS NULL AND :old.res_rsv_ruimte_verwijder IS NOT NULL) THEN UPDATE res_rsv_deel SET res_rsv_deel_verwijder = :new.res_rsv_ruimte_verwijder WHERE res_rsv_deel.res_rsv_ruimte_key = :new.res_rsv_ruimte_key AND res_rsv_deel.res_rsv_deel_verwijder IS NULL; END IF; END;
BEGIN IF :new.res_rsv_ruimte_verwijder IS NOT NULL THEN DELETE FROM bez_afspraak WHERE bez_afspraak.res_rsv_ruimte_key = :new.res_rsv_ruimte_key; END IF; END;