Postgresql procedure failing to compile when rollback to savepoint is mentioned

From: Sumit Sarkar <sumit(at)techtexas(dot)net>
To: pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Postgresql procedure failing to compile when rollback to savepoint is mentioned
Date: 2020-10-25 07:18:39
Message-ID: CAKHhQyUYxEX=pSEkm0gonDqhN+FYcbB4JeeCriF1a=nK3woYSQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Dear Suport Team,

We tried to compile the SP below (statement part) with guidance available on
https://www.postgresql.org/docs/11/sql-savepoint.html

Our aim was to create procedure with transaction rollback on error. We
tried to compile the given SP and wanted to run it (which should throw
error as the primary key (ID field) has the same value in the second
INSERT. On encountering the error, the SP should go to savepoint a without
committing the first INSERT.

However, we could not handle exceptions with rollback to user-defined
SAVEPOINT. The system is throwing error when we try to use ROLLBACK TO
SAVEPOINT (mentioned in your manual). Apparently this is a bug as it defies
your own example. Please let us know once it is fixed or suggest the
alternative at the earliest.

"

*SQL error:*

ERROR: syntax error at or near "TO"
LINE 14: ROLLBACK TO SAVEPOINT a;
^

*In statement:*
CREATE OR REPLACE PROCEDURE transaction_test()
LANGUAGE plpgsql
AS $$
DECLARE
BEGIN
SAVEPOINT a;
insert into
public.aocodes(id,cc_id,name,assigned_to,status,entity,created_by)
select 4,4,'101201',8,'Active',1,1;

insert into
public.aocodes(id,cc_id,name,assigned_to,status,entity,created_by)
select 4,5,'101201',8,'Active',1,1;
exception
when others then
ROLLBACK TO SAVEPOINT a;
RELEASE SAVEPOINT a;
Commit;
END $$;
"

Thanks & Regards
Sumit Sarkar
Managing Consultant
0091-8697727443
0091-8902727443
TechTexas Technical Services LLP
www.techtexas.net
*AN ISO 27001:2013 Company*
Success is simple. Do what's right, the right way, at the right time. -
Arnold H. Glasow

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Pavel Stehule 2020-10-25 14:18:06 Re: Postgresql procedure failing to compile when rollback to savepoint is mentioned
Previous Message Alexander Lakhin 2020-10-25 05:00:00 Re: BUG #16678: The ecpg connect/test5 test sometimes fails on Windows