Index and blob garbage collection doesn't take into accout data in undo log ---------------------------------------------------------------------------
Key: CORE-4701 URL: http://tracker.firebirdsql.org/browse/CORE-4701 Project: Firebird Core Issue Type: Bug Components: Engine Affects Versions: 3.0 Beta 2 Reporter: Dimitry Sibiryakov When indexes and blobs are garbage collected during savepoint release, list_staying() collect data only from versions on disk, but not from undo log. As the result following script produces missing index entry: create database "d_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=3; savepoint c; update g_test set f=4; savepoint d; update g_test set f=4; release savepoint b only; rollback to savepoint c; commit; select * from g_test; select * from g_test where f=3; -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://tracker.firebirdsql.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ------------------------------------------------------------------------------ Dive into the World of Parallel Programming The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel