You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now Horreum has still some db triggers that we should move into Horreum business logic. Some of them are related to view_recalc_queue which is indeed updated only through triggers in the database.
This can cause some race conditions (noticed just because one of the racing flows was wrong).
Affected entities:
event_object_table
trigger_name
event_manipulation
action_statement
action_timing
label_values
dsv_after_insert
INSERT
EXECUTE FUNCTION dsv_after_lv_insert_func()
AFTER
view_recalc_queue
recalc_dataset_view
INSERT
EXECUTE FUNCTION recalc_dataset_view()
AFTER
viewcomponent
dsv_after_update
UPDATE
EXECUTE FUNCTION dsv_after_vc_update_func()
AFTER
viewcomponent
dsv_after_update
INSERT
EXECUTE FUNCTION dsv_after_vc_update_func()
AFTER
viewcomponent
dsv_after_delete
DELETE
EXECUTE FUNCTION dsv_after_vc_delete_func()
AFTER
Describe the solution you'd like
Move the logic that updates the dataset_view table and related into Horreum, i.e., do NOT rely on database triggers.
Remove the following db entities:
Remove view_recalc_queue table
Remove trigger dsv_after_delete and related function dsv_after_vc_delete_func
Remove trigger dsv_after_update and related function dsv_after_vc_update_func
Remove trigger recalc_dataset_view and related function recalc_dataset_view
Remove trigger dsv_after_insert and related function dsv_after_lv_insert_func
The removed db logic should be migrated into the Horreum business logic
Additional information
n/a
The text was updated successfully, but these errors were encountered:
Feature idea.
Right now Horreum has still some db triggers that we should move into Horreum business logic. Some of them are related to
view_recalc_queue
which is indeed updated only through triggers in the database.This can cause some race conditions (noticed just because one of the racing flows was wrong).
Affected entities:
Describe the solution you'd like
Move the logic that updates the
dataset_view
table and related into Horreum, i.e., do NOT rely on database triggers.Remove the following db entities:
view_recalc_queue
tabledsv_after_delete
and related functiondsv_after_vc_delete_func
dsv_after_update
and related functiondsv_after_vc_update_func
recalc_dataset_view
and related functionrecalc_dataset_view
dsv_after_insert
and related functiondsv_after_lv_insert_func
Additional information
n/a
The text was updated successfully, but these errors were encountered: