1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-14 00:22:38 +03:00

Use a bitvec object to store the set of pages with the 'always-rollback' property for a transaction. (CVS 5622)

FossilOrigin-Name: 9e9325997e11a0368721ed7860f4c37de3502a9b
This commit is contained in:
danielk1977
2008-08-27 15:16:33 +00:00
parent e5767a33e5
commit a1fa00d95f
7 changed files with 52 additions and 48 deletions

View File

@@ -11,7 +11,7 @@
*************************************************************************
** This file implements that page cache.
**
** @(#) $Id: pcache.c,v 1.16 2008/08/27 09:44:40 danielk1977 Exp $
** @(#) $Id: pcache.c,v 1.17 2008/08/27 15:16:34 danielk1977 Exp $
*/
#include "sqliteInt.h"
@@ -497,15 +497,6 @@ static PgHdr *pcacheRecyclePage(){
pcacheRemoveFromLruList(p);
pcacheRemoveFromHash(p);
pcacheRemoveFromList(&p->pCache->pClean, p);
/* If the always-rollback flag is set on the page being recycled, set
** the always-rollback flag on the corresponding pager. TODO: This is
** a thread-safety problem.
*/
if( p->flags&PGHDR_ALWAYS_ROLLBACK ){
assert(p->pPager);
sqlite3PagerAlwaysRollback(p->pPager);
}
}
return p;