@nsshunt/stsdatamanagement 1.18.195 → 1.18.196
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/db-scripts/builddb.sql +253 -82
- package/package.json +1 -1
package/db-scripts/builddb.sql
CHANGED
|
@@ -443,6 +443,7 @@ ALTER TABLE public.stsresource
|
|
|
443
443
|
|
|
444
444
|
-- DROP INDEX public.stsresource_resname_vnum;
|
|
445
445
|
|
|
446
|
+
-- Enforce resource version uniqueness.
|
|
446
447
|
CREATE UNIQUE INDEX stsresource_resname_vnum
|
|
447
448
|
ON public.stsresource USING btree
|
|
448
449
|
(resname COLLATE pg_catalog."default" ASC NULLS LAST, vnum ASC NULLS LAST)
|
|
@@ -452,12 +453,14 @@ CREATE UNIQUE INDEX stsresource_resname_vnum
|
|
|
452
453
|
|
|
453
454
|
-- DROP INDEX public.stsresource_resname_validto;
|
|
454
455
|
|
|
456
|
+
-- General current-version lookup.
|
|
457
|
+
-- Includes current deleted records.
|
|
455
458
|
CREATE INDEX stsresource_resname_validto
|
|
456
459
|
ON public.stsresource USING btree
|
|
457
460
|
(resname COLLATE pg_catalog."default" ASC NULLS LAST, validto DESC NULLS LAST)
|
|
458
461
|
TABLESPACE pg_default;
|
|
459
462
|
|
|
460
|
-
|
|
463
|
+
/*
|
|
461
464
|
-- DROP INDEX public.stsresource_given;
|
|
462
465
|
|
|
463
466
|
CREATE INDEX stsresource_given
|
|
@@ -471,6 +474,15 @@ CREATE INDEX stsresource_family
|
|
|
471
474
|
ON public.stsresource USING btree
|
|
472
475
|
(family COLLATE pg_catalog."default" ASC)
|
|
473
476
|
WHERE family IS NOT NULL;
|
|
477
|
+
*/
|
|
478
|
+
|
|
479
|
+
-- DROP INDEX public.idx_stsresource_resname_current;
|
|
480
|
+
|
|
481
|
+
-- Normal application reads and cursor-based pagination.
|
|
482
|
+
CREATE INDEX idx_stsresource_resname_current
|
|
483
|
+
ON public.stsresource (resname, oid)
|
|
484
|
+
WHERE validto IS NULL
|
|
485
|
+
AND dbaction != 3;
|
|
474
486
|
|
|
475
487
|
-- FUNCTION: public.create_stsresource(character varying, character varying, character varying)
|
|
476
488
|
|
|
@@ -564,7 +576,7 @@ ALTER FUNCTION public.create_stsresource(character varying, character varying, c
|
|
|
564
576
|
CREATE OR REPLACE FUNCTION public.update_stsresource(
|
|
565
577
|
_dbactionuser character varying,
|
|
566
578
|
_resname character varying,
|
|
567
|
-
_resvnum
|
|
579
|
+
_resvnum bigint,
|
|
568
580
|
_resdesc character varying)
|
|
569
581
|
RETURNS SETOF stsresource
|
|
570
582
|
LANGUAGE 'plpgsql'
|
|
@@ -616,13 +628,10 @@ BEGIN
|
|
|
616
628
|
END;
|
|
617
629
|
$BODY$;
|
|
618
630
|
|
|
619
|
-
ALTER FUNCTION public.update_stsresource(character varying, character varying,
|
|
631
|
+
ALTER FUNCTION public.update_stsresource(character varying, character varying, bigint, character varying)
|
|
620
632
|
OWNER TO postgres;
|
|
621
633
|
|
|
622
634
|
|
|
623
|
-
-- FUNCTION: public.update_stsresource(character varying, character varying, integer, character varying)
|
|
624
|
-
|
|
625
|
-
-- DROP FUNCTION public.update_stsresource(character varying, character varying, integer, character varying);
|
|
626
635
|
|
|
627
636
|
CREATE OR REPLACE FUNCTION public.update_stsresource_latest(
|
|
628
637
|
_dbactionuser character varying,
|
|
@@ -640,7 +649,7 @@ declare
|
|
|
640
649
|
_now timestamp without time zone := now();
|
|
641
650
|
resoid bigint;
|
|
642
651
|
newresoid stsresource.oid%TYPE;
|
|
643
|
-
_resvnum
|
|
652
|
+
_resvnum bigint;
|
|
644
653
|
_resdesc_jsonb JSONB;
|
|
645
654
|
_given character varying(64) COLLATE pg_catalog."default";
|
|
646
655
|
_family character varying(64) COLLATE pg_catalog."default";
|
|
@@ -691,14 +700,11 @@ ALTER FUNCTION public.update_stsresource_latest(character varying, character var
|
|
|
691
700
|
|
|
692
701
|
|
|
693
702
|
|
|
694
|
-
-- FUNCTION: public.delete_stsresource(character varying, character varying, integer)
|
|
695
|
-
|
|
696
|
-
-- DROP FUNCTION public.delete_stsresource(character varying, character varying, integer);
|
|
697
703
|
|
|
698
704
|
CREATE OR REPLACE FUNCTION public.delete_stsresource(
|
|
699
705
|
_dbactionuser character varying,
|
|
700
706
|
_resname character varying,
|
|
701
|
-
_resvnum
|
|
707
|
+
_resvnum bigint)
|
|
702
708
|
RETURNS SETOF stsresource
|
|
703
709
|
LANGUAGE 'plpgsql'
|
|
704
710
|
|
|
@@ -738,7 +744,7 @@ BEGIN
|
|
|
738
744
|
END;
|
|
739
745
|
$BODY$;
|
|
740
746
|
|
|
741
|
-
ALTER FUNCTION public.delete_stsresource(character varying, character varying,
|
|
747
|
+
ALTER FUNCTION public.delete_stsresource(character varying, character varying, bigint)
|
|
742
748
|
OWNER TO postgres;
|
|
743
749
|
|
|
744
750
|
|
|
@@ -758,7 +764,7 @@ declare
|
|
|
758
764
|
_now timestamp without time zone := now();
|
|
759
765
|
resoid bigint;
|
|
760
766
|
newresoid stsresource.oid%TYPE;
|
|
761
|
-
_resvnum
|
|
767
|
+
_resvnum bigint;
|
|
762
768
|
BEGIN
|
|
763
769
|
begin
|
|
764
770
|
_resvnum := (select vnum from stsresource r where r.resname = _resname and r.validto is null and r.dbaction != 3);
|
|
@@ -798,8 +804,6 @@ ALTER FUNCTION public.delete_stsresource_latest(character varying, character var
|
|
|
798
804
|
|
|
799
805
|
|
|
800
806
|
|
|
801
|
-
|
|
802
|
-
|
|
803
807
|
-- Table: public.stsentity
|
|
804
808
|
|
|
805
809
|
-- DROP TABLE public.stsentity;
|
|
@@ -831,77 +835,257 @@ ALTER TABLE public.stsentity
|
|
|
831
835
|
|
|
832
836
|
-- DROP INDEX public.stsentity_resourceoid_entname_vnum;
|
|
833
837
|
|
|
838
|
+
-- Enforce entity version uniqueness.
|
|
834
839
|
CREATE UNIQUE INDEX stsentity_resourceoid_entname_vnum
|
|
835
840
|
ON public.stsentity USING btree
|
|
836
|
-
|
|
841
|
+
(resourceoid ASC NULLS LAST, entname COLLATE pg_catalog."default" ASC NULLS LAST, vnum ASC NULLS LAST)
|
|
837
842
|
TABLESPACE pg_default;
|
|
838
843
|
|
|
839
|
-
--
|
|
840
|
-
|
|
841
|
-
-- DROP INDEX public.stsentity_resourceoid_entname_validto;
|
|
842
|
-
|
|
844
|
+
-- General current/version lookup.
|
|
843
845
|
CREATE INDEX stsentity_resourceoid_entname_validto
|
|
844
846
|
ON public.stsentity USING btree
|
|
845
847
|
(resourceoid ASC NULLS LAST, entname COLLATE pg_catalog."default" ASC NULLS LAST, validto DESC NULLS LAST)
|
|
846
848
|
TABLESPACE pg_default;
|
|
847
849
|
|
|
850
|
+
-- Normal application reads and cursor-based pagination.
|
|
851
|
+
CREATE UNIQUE INDEX idx_stsentity_resourceoid_entname_current
|
|
852
|
+
ON public.stsentity
|
|
853
|
+
(resourceoid, entname)
|
|
854
|
+
WHERE validto IS NULL;
|
|
848
855
|
|
|
849
|
-
-- FUNCTION: public.create_stsentity(character varying, character varying, integer, character varying, character varying)
|
|
850
|
-
|
|
851
|
-
-- DROP FUNCTION public.create_stsentity(character varying, character varying, integer, character varying, character varying);
|
|
852
856
|
|
|
853
857
|
CREATE OR REPLACE FUNCTION public.create_stsentity(
|
|
854
858
|
_dbactionuser character varying,
|
|
855
859
|
_resname character varying,
|
|
856
|
-
_resvnum
|
|
860
|
+
_resvnum bigint,
|
|
857
861
|
_entname character varying,
|
|
858
|
-
_entvalue character varying
|
|
859
|
-
|
|
860
|
-
|
|
862
|
+
_entvalue character varying
|
|
863
|
+
)
|
|
864
|
+
RETURNS SETOF stsentity
|
|
865
|
+
LANGUAGE 'plpgsql'
|
|
866
|
+
COST 100
|
|
867
|
+
VOLATILE
|
|
868
|
+
ROWS 1000
|
|
861
869
|
|
|
862
|
-
COST 100
|
|
863
|
-
VOLATILE
|
|
864
|
-
ROWS 1000
|
|
865
|
-
|
|
866
870
|
AS $BODY$
|
|
867
|
-
|
|
868
|
-
|
|
871
|
+
DECLARE
|
|
872
|
+
__now timestamp without time zone := now();
|
|
873
|
+
|
|
874
|
+
-- Current resource.
|
|
875
|
+
__resoid bigint;
|
|
876
|
+
|
|
877
|
+
-- Current entity, if one exists.
|
|
878
|
+
__entoid bigint;
|
|
879
|
+
__entvnum bigint;
|
|
880
|
+
__entdbaction smallint;
|
|
881
|
+
|
|
882
|
+
-- Version to assign to the newly created entity.
|
|
883
|
+
__newvnum bigint;
|
|
884
|
+
|
|
885
|
+
-- Newly inserted entity.
|
|
869
886
|
__inserted_oid bigint;
|
|
870
|
-
|
|
887
|
+
|
|
888
|
+
-- Parsed entity JSON.
|
|
889
|
+
__entvalue_jsonb jsonb;
|
|
890
|
+
|
|
871
891
|
BEGIN
|
|
872
|
-
begin
|
|
873
|
-
_entvalue_jsonb := _entvalue::jsonb;
|
|
874
|
-
exception
|
|
875
|
-
when others then
|
|
876
|
-
raise exception 'Invalid JSON string: %', _entvalue;
|
|
877
|
-
end;
|
|
878
892
|
|
|
879
|
-
--
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
893
|
+
-- -------------------------------------------------------------------------
|
|
894
|
+
-- Validate / parse entity JSON
|
|
895
|
+
-- -------------------------------------------------------------------------
|
|
896
|
+
|
|
897
|
+
BEGIN
|
|
898
|
+
__entvalue_jsonb := _entvalue::jsonb;
|
|
899
|
+
|
|
900
|
+
EXCEPTION
|
|
901
|
+
WHEN others THEN
|
|
902
|
+
RAISE EXCEPTION
|
|
903
|
+
'Invalid JSON string: %',
|
|
904
|
+
_entvalue;
|
|
905
|
+
END;
|
|
906
|
+
|
|
907
|
+
-- -------------------------------------------------------------------------
|
|
908
|
+
-- Resolve the requested resource.
|
|
909
|
+
--
|
|
910
|
+
-- The supplied resource version must still be the current, non-deleted
|
|
911
|
+
-- version of the resource.
|
|
912
|
+
-- -------------------------------------------------------------------------
|
|
913
|
+
|
|
914
|
+
BEGIN
|
|
915
|
+
SELECT
|
|
916
|
+
r.oid
|
|
917
|
+
INTO STRICT
|
|
918
|
+
__resoid
|
|
919
|
+
FROM public.stsresource r
|
|
920
|
+
WHERE r.resname = _resname
|
|
921
|
+
AND r.vnum = _resvnum
|
|
922
|
+
AND r.validto IS NULL
|
|
923
|
+
AND r.dbaction != 3;
|
|
924
|
+
|
|
925
|
+
EXCEPTION
|
|
926
|
+
|
|
927
|
+
WHEN no_data_found THEN
|
|
928
|
+
RAISE
|
|
929
|
+
'Resource % version % not found, not current, or deleted',
|
|
930
|
+
_resname,
|
|
931
|
+
_resvnum
|
|
932
|
+
USING ERRCODE = 'no_data_found';
|
|
933
|
+
|
|
934
|
+
WHEN too_many_rows THEN
|
|
935
|
+
RAISE
|
|
936
|
+
'Too many current stsresource records for resource % version %',
|
|
937
|
+
_resname,
|
|
938
|
+
_resvnum
|
|
939
|
+
USING ERRCODE = 'cardinality_violation';
|
|
940
|
+
|
|
941
|
+
END;
|
|
942
|
+
|
|
943
|
+
-- -------------------------------------------------------------------------
|
|
944
|
+
-- Find the current entity.
|
|
945
|
+
--
|
|
946
|
+
-- IMPORTANT:
|
|
947
|
+
--
|
|
948
|
+
-- Do NOT exclude dbaction = 3 here.
|
|
949
|
+
--
|
|
950
|
+
-- A logically deleted entity is still the current entity version while
|
|
951
|
+
-- validto IS NULL. If it exists, it must be closed before the entity can
|
|
952
|
+
-- be created again.
|
|
953
|
+
-- -------------------------------------------------------------------------
|
|
954
|
+
|
|
955
|
+
BEGIN
|
|
956
|
+
SELECT
|
|
957
|
+
e.oid,
|
|
958
|
+
e.vnum,
|
|
959
|
+
e.dbaction
|
|
960
|
+
INTO STRICT
|
|
961
|
+
__entoid,
|
|
962
|
+
__entvnum,
|
|
963
|
+
__entdbaction
|
|
964
|
+
FROM public.stsentity e
|
|
965
|
+
WHERE e.resourceoid = __resoid
|
|
966
|
+
AND e.entname = _entname
|
|
967
|
+
AND e.validto IS NULL;
|
|
968
|
+
|
|
969
|
+
EXCEPTION
|
|
970
|
+
|
|
971
|
+
WHEN no_data_found THEN
|
|
972
|
+
__entoid := NULL;
|
|
973
|
+
__entvnum := NULL;
|
|
974
|
+
__entdbaction := NULL;
|
|
975
|
+
|
|
976
|
+
WHEN too_many_rows THEN
|
|
977
|
+
RAISE
|
|
978
|
+
'Too many current stsentity records for entity % within resource %',
|
|
979
|
+
_entname,
|
|
980
|
+
_resname
|
|
981
|
+
USING ERRCODE = 'cardinality_violation';
|
|
982
|
+
|
|
983
|
+
END;
|
|
984
|
+
|
|
985
|
+
-- -------------------------------------------------------------------------
|
|
986
|
+
-- Current entity exists
|
|
987
|
+
-- -------------------------------------------------------------------------
|
|
988
|
+
|
|
989
|
+
IF __entoid IS NOT NULL THEN
|
|
990
|
+
|
|
991
|
+
-- ---------------------------------------------------------------------
|
|
992
|
+
-- Current entity is active.
|
|
993
|
+
--
|
|
994
|
+
-- CREATE is not allowed because the entity already exists.
|
|
995
|
+
-- ---------------------------------------------------------------------
|
|
996
|
+
|
|
997
|
+
IF __entdbaction != 3 THEN
|
|
998
|
+
|
|
999
|
+
RAISE
|
|
1000
|
+
'Duplicate entname % within stsresource %',
|
|
1001
|
+
_entname,
|
|
1002
|
+
_resname
|
|
1003
|
+
USING ERRCODE = 'unique_violation';
|
|
1004
|
+
|
|
1005
|
+
END IF;
|
|
1006
|
+
|
|
1007
|
+
-- ---------------------------------------------------------------------
|
|
1008
|
+
-- Current entity is logically deleted.
|
|
1009
|
+
--
|
|
1010
|
+
-- Close the deleted version and create the next version.
|
|
1011
|
+
-- ---------------------------------------------------------------------
|
|
1012
|
+
|
|
1013
|
+
UPDATE public.stsentity
|
|
1014
|
+
SET validto = __now
|
|
1015
|
+
WHERE oid = __entoid;
|
|
1016
|
+
|
|
1017
|
+
__newvnum := __entvnum + 1;
|
|
1018
|
+
|
|
1019
|
+
ELSE
|
|
1020
|
+
|
|
1021
|
+
-- ---------------------------------------------------------------------
|
|
1022
|
+
-- No current entity exists.
|
|
1023
|
+
--
|
|
1024
|
+
-- Normally this means the entity has never existed and MAX(vnum)
|
|
1025
|
+
-- will be NULL, resulting in version 1.
|
|
1026
|
+
--
|
|
1027
|
+
-- Using MAX(vnum) also protects against an abnormal historical state
|
|
1028
|
+
-- where previous versions exist but none has validto IS NULL.
|
|
1029
|
+
-- ---------------------------------------------------------------------
|
|
1030
|
+
|
|
1031
|
+
SELECT
|
|
1032
|
+
COALESCE(MAX(e.vnum), 0) + 1
|
|
1033
|
+
INTO
|
|
1034
|
+
__newvnum
|
|
1035
|
+
FROM public.stsentity e
|
|
1036
|
+
WHERE e.resourceoid = __resoid
|
|
1037
|
+
AND e.entname = _entname;
|
|
1038
|
+
|
|
1039
|
+
END IF;
|
|
1040
|
+
|
|
1041
|
+
-- -------------------------------------------------------------------------
|
|
1042
|
+
-- Create new active entity version
|
|
1043
|
+
-- -------------------------------------------------------------------------
|
|
1044
|
+
|
|
1045
|
+
INSERT INTO public.stsentity(
|
|
1046
|
+
resourceoid,
|
|
1047
|
+
entname,
|
|
1048
|
+
entvalue,
|
|
1049
|
+
entvalue_jsonb,
|
|
1050
|
+
vnum,
|
|
1051
|
+
dbaction,
|
|
1052
|
+
dbactionuser,
|
|
1053
|
+
validfrom
|
|
1054
|
+
)
|
|
1055
|
+
VALUES (
|
|
1056
|
+
__resoid,
|
|
1057
|
+
_entname,
|
|
1058
|
+
_entvalue,
|
|
1059
|
+
__entvalue_jsonb,
|
|
1060
|
+
__newvnum,
|
|
1061
|
+
1,
|
|
1062
|
+
_dbactionuser,
|
|
1063
|
+
__now
|
|
1064
|
+
)
|
|
1065
|
+
RETURNING oid
|
|
1066
|
+
INTO __inserted_oid;
|
|
1067
|
+
|
|
1068
|
+
-- -------------------------------------------------------------------------
|
|
1069
|
+
-- Return newly created entity
|
|
1070
|
+
-- -------------------------------------------------------------------------
|
|
1071
|
+
|
|
1072
|
+
RETURN QUERY
|
|
1073
|
+
SELECT *
|
|
1074
|
+
FROM public.stsentity
|
|
1075
|
+
WHERE oid = __inserted_oid;
|
|
894
1076
|
|
|
895
|
-
return query
|
|
896
|
-
select * from stsentity where oid = __inserted_oid;
|
|
897
|
-
END IF;
|
|
898
1077
|
END;
|
|
899
1078
|
$BODY$;
|
|
900
1079
|
|
|
901
|
-
ALTER FUNCTION public.create_stsentity(character varying, character varying, integer, character varying, character varying)
|
|
902
|
-
OWNER TO postgres;
|
|
903
|
-
|
|
904
1080
|
|
|
1081
|
+
ALTER FUNCTION public.create_stsentity(
|
|
1082
|
+
character varying,
|
|
1083
|
+
character varying,
|
|
1084
|
+
bigint,
|
|
1085
|
+
character varying,
|
|
1086
|
+
character varying
|
|
1087
|
+
)
|
|
1088
|
+
OWNER TO postgres;
|
|
905
1089
|
|
|
906
1090
|
|
|
907
1091
|
CREATE OR REPLACE FUNCTION public.create_stsentity_latest(
|
|
@@ -956,16 +1140,12 @@ ALTER FUNCTION public.create_stsentity_latest(character varying, character varyi
|
|
|
956
1140
|
|
|
957
1141
|
|
|
958
1142
|
|
|
959
|
-
-- FUNCTION: public.update_stsentity(character varying, character varying, integer, character varying, integer, character varying)
|
|
960
|
-
|
|
961
|
-
-- DROP FUNCTION public.update_stsentity(character varying, character varying, integer, character varying, integer, character varying);
|
|
962
|
-
|
|
963
1143
|
CREATE OR REPLACE FUNCTION public.update_stsentity(
|
|
964
1144
|
_dbactionuser character varying,
|
|
965
1145
|
_resname character varying,
|
|
966
|
-
_resvnum
|
|
1146
|
+
_resvnum bigint,
|
|
967
1147
|
_entname character varying,
|
|
968
|
-
_entvnum
|
|
1148
|
+
_entvnum bigint,
|
|
969
1149
|
_entvalue character varying)
|
|
970
1150
|
RETURNS SETOF stsentity
|
|
971
1151
|
LANGUAGE 'plpgsql'
|
|
@@ -1025,13 +1205,11 @@ BEGIN
|
|
|
1025
1205
|
END;
|
|
1026
1206
|
$BODY$;
|
|
1027
1207
|
|
|
1028
|
-
ALTER FUNCTION public.update_stsentity(character varying, character varying,
|
|
1208
|
+
ALTER FUNCTION public.update_stsentity(character varying, character varying, bigint, character varying, bigint, character varying)
|
|
1029
1209
|
OWNER TO postgres;
|
|
1030
1210
|
|
|
1031
1211
|
|
|
1032
1212
|
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
1213
|
CREATE OR REPLACE FUNCTION public.update_stsentity_latest(
|
|
1036
1214
|
_dbactionuser character varying,
|
|
1037
1215
|
_resname character varying,
|
|
@@ -1050,7 +1228,7 @@ declare
|
|
|
1050
1228
|
resoid bigint;
|
|
1051
1229
|
entoid bigint;
|
|
1052
1230
|
__inserted_oid bigint;
|
|
1053
|
-
_entvnum
|
|
1231
|
+
_entvnum bigint;
|
|
1054
1232
|
_entvalue_jsonb JSONB;
|
|
1055
1233
|
BEGIN
|
|
1056
1234
|
begin
|
|
@@ -1107,16 +1285,12 @@ ALTER FUNCTION public.update_stsentity_latest(character varying, character varyi
|
|
|
1107
1285
|
OWNER TO postgres;
|
|
1108
1286
|
|
|
1109
1287
|
|
|
1110
|
-
-- FUNCTION: public.delete_stsentity(character varying, character varying, integer, character varying, integer)
|
|
1111
|
-
|
|
1112
|
-
-- DROP FUNCTION public.delete_stsentity(character varying, character varying, integer, character varying, integer);
|
|
1113
|
-
|
|
1114
1288
|
CREATE OR REPLACE FUNCTION public.delete_stsentity(
|
|
1115
1289
|
_dbactionuser character varying,
|
|
1116
1290
|
_resname character varying,
|
|
1117
|
-
_resvnum
|
|
1291
|
+
_resvnum bigint,
|
|
1118
1292
|
_entname character varying,
|
|
1119
|
-
_entvnum
|
|
1293
|
+
_entvnum bigint)
|
|
1120
1294
|
RETURNS SETOF stsentity
|
|
1121
1295
|
LANGUAGE 'plpgsql'
|
|
1122
1296
|
|
|
@@ -1168,14 +1342,11 @@ BEGIN
|
|
|
1168
1342
|
END;
|
|
1169
1343
|
$BODY$;
|
|
1170
1344
|
|
|
1171
|
-
ALTER FUNCTION public.delete_stsentity(character varying, character varying,
|
|
1345
|
+
ALTER FUNCTION public.delete_stsentity(character varying, character varying, bigint, character varying, bigint)
|
|
1172
1346
|
OWNER TO postgres;
|
|
1173
1347
|
|
|
1174
1348
|
|
|
1175
1349
|
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
1350
|
CREATE OR REPLACE FUNCTION public.delete_stsentity_latest(
|
|
1180
1351
|
_dbactionuser character varying,
|
|
1181
1352
|
_resname character varying,
|
|
@@ -1193,7 +1364,7 @@ declare
|
|
|
1193
1364
|
resoid bigint;
|
|
1194
1365
|
entoid bigint;
|
|
1195
1366
|
__inserted_oid bigint;
|
|
1196
|
-
_entvnum
|
|
1367
|
+
_entvnum bigint;
|
|
1197
1368
|
BEGIN
|
|
1198
1369
|
BEGIN
|
|
1199
1370
|
-- Ensure we get the current non-deleted resource.
|