Nested transactions in postgres
- Dominant language
- Go
- Stars
- 158
- Forks
- 22
- PR merge metrics
- No merged PRs in 30d
Description
Hi, thanks for this lib as this is really needed.
Looking at the code, I'm not sure I understand how nested transactions work... As far as I understand, Beginx() uses the same Node object and just does a savepoint and overrides the last savepoint that happened?
If I understand code correctly, below code with 2 savepoints would not work?
```
create table testtable (
field1 text,
field2 int
)
begin transaction
insert into testtable (field1, field2) values ('edsa', 1)
SAVEPOINT sp_1;
insert into testtable (field1, field2) values ('eds22a', 13)
SAVEPOINT sp_2;
insert into testtable (field1, field2) values ('eds22eea', 123)
-- 3 rows
select * from testtable
ROLLBACK TO SAVEPOINT sp_2;
-- 2 rows
select * from testtable
ROLLBACK TO SAVEPOINT sp_1;
-- 1 row
select * from testtable
rollback transaction
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.