User savepoints are not released on commit [CORE4382] #4704
Labels
affect-version: 2.1.5 Update 1
affect-version: 2.1.6
affect-version: 2.1.7
affect-version: 2.5.0
affect-version: 2.5.1
affect-version: 2.5.2 Update 1
affect-version: 2.5.2
affect-version: 2.5.3 Update 1
affect-version: 2.5.3
affect-version: 3.0 Alpha 1
affect-version: 3.0 Alpha 2
affect-version: 3.0 Beta 1
component: engine
fix-version: 2.5.4
fix-version: 3.0 Beta 2
priority: major
qa: done successfully
type: bug
Submitted by: @aafemt
Assigned to: @aafemt
Attachments:
tra.diff
Following script leaves in index several orphan nodes.
create database "g_test";
create table g_test (f integer);
create index g_ind on g_test (f);
insert into g_test values (1);
commit;
update g_test set f=2;
savepoint a;
update g_test set f=3;
savepoint b;
update g_test set f=4;
savepoint c;
update g_test set f=5;
savepoint d;
update g_test set f=6;
savepoint e;
update g_test set f=7;
commit;
select * from g_test;
Proposed patch is attached
Commits: 6abc6ae 90c04f7 FirebirdSQL/fbt-repository@7e8c45c FirebirdSQL/fbt-repository@074a99b
====== Test Details ======
Confirmed result of "gstat -i"
1) for 3.0 Alpha1 & Alpha2:
Root page: 203, depth: 1, leaf buckets: 1, nodes: 6 // i.e. 6 orphans instead of expected 1
2) for 2.5.3:
Depth: 1, leaf buckets: 1, nodes: 6 // i.e. 6 orphans instead of expected 1
The text was updated successfully, but these errors were encountered: