How can I set a timeout for a locked table in Function ?
İlyas Derse <[email protected]> Fri, 3 Jan 2020 12:53:50 +0300
| Newsgroups | gmane.comp.db.postgresql.general |
|---|---|
| Message-ID | <CALcdmySuZO9OsFOC6-7gPN4PfmLe1W2y_pmxPfjMthWAH-qYNA@mail.gmail.com> |
CREATE OR REPLACE FUNCTION public."testlock"()
RETURNS TABLE
(
id integer,
name character varying,
state integer,
owner character varying
)
LANGUAGE 'plpgsql'
AS $BODY$
BEGIN
SET "statement_timeout" = 6000; --- It's not changing. !!
LOCK TABLE public."lock" IN ROW EXCLUSIVE MODE;
UPDATE public."lock" as l set name = 'deneme' WHERE l."id" = 4;
RETURN QUERY
select l."id",l."name",l."state",l."owner" from public."lock" as l,
pg_sleep(10) where l."id" = 4;
END;
$BODY$;
select * from public."testlock"();
How can I do ?