On 2024-12-04 We 3:07 AM, postgresql_contributors wrote:
Hi pg_hackers,

I hope you are doing well. I am working on reviewing PostgreSQL community tickets and started with the patch cf/5044.
This patch is in the branch cf/5044, and I pulled the code to test it.
Here’s what I have done so far:

 *
    Pulled the code from the branch cf/5044.
 *
    Compiled the code.
 *
    Set up the database as required.

Tested the query for this patch mentioned in the community chat (https://commitfest.postgresql.org/50/5044/ <https://commitfest.postgresql.org/50/5044/>) . However, I didn’t get the expected output mentioned in the ticket (below mentioned example).

CREATE TABLE foo3(id serial PRIMARY key, txt text);

INSERT INTO foo3 (txt) VALUES ('aaa'),('bbb');
DO $$
DECLARE
    l_cnt int;
BEGIN
    l_cnt := 1
    DELETE FROM foo3 WHERE id=1;
END; $$

-- without reaction - just don't work

(2024-06-16 16:05:55) postgres=# set plpgsql.extra_errors to
'strict_expr_check';
SET
(2024-06-16 16:06:43) postgres=# DO $$

DECLARE
    l_cnt int;
BEGIN
    l_cnt := 1
    DELETE FROM foo3 WHERE id=1;
END; $$;
ERROR:  syntax error at or near "DELETE"
LINE 11:     DELETE FROM foo3 WHERE id=1;
             ^
Please provide guidance on this patch.


Well, it's told you what the problem is - there's a syntax error. And it's pretty glaring: the line


    l_cnt := 1


is missing a trailing semicolon. So I suggest you add that and then keep going.


cheers


andrew


--
Andrew Dunstan
EDB:https://www.enterprisedb.com

Reply via email to