search index triggers

This commit is contained in:
keyan 2022-01-26 11:03:21 -06:00
parent 28b86af898
commit 5ade072b8c
1 changed files with 31 additions and 0 deletions

View File

@ -0,0 +1,31 @@
CREATE OR REPLACE FUNCTION index_item() RETURNS TRIGGER AS $$
BEGIN
-- insert indexItem pgboss.job with id
INSERT INTO pgboss.job (name, data) VALUES ('indexItem', jsonb_build_object('id', NEW.id));
-- insert indexItem pgboss.job from parentId if there's a parentId
IF NEW."parentId" IS NOT NULL THEN
INSERT INTO pgboss.job (name, data) VALUES ('indexItem', jsonb_build_object('id', NEW."parentId"));
END IF;
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
DROP TRIGGER IF EXISTS index_item ON "Item";
CREATE TRIGGER index_item
AFTER INSERT OR UPDATE ON "Item"
FOR EACH ROW
EXECUTE PROCEDURE index_item();
CREATE OR REPLACE FUNCTION index_item_after_act() RETURNS TRIGGER AS $$
BEGIN
-- insert indexItem pgboss.job with itemId
INSERT INTO pgboss.job (name, data) VALUES ('indexItem', jsonb_build_object('id', NEW."itemId"));
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
DROP TRIGGER IF EXISTS index_item_after_act ON "ItemAct";
CREATE TRIGGER index_item_after_act
AFTER INSERT ON "ItemAct"
FOR EACH ROW
EXECUTE PROCEDURE index_item_after_act();