1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-08 14:02:16 +03:00

Add the new internal interface sqlite3DbNNFreeNN(db,ptr) where both the

db and ptr parameters are guaranteed to be non-NULL.  Use this where
appropriate to save more than 2 million CPU cycles on the standard
performance test.

FossilOrigin-Name: e5eaa80e81fdf86f2875a912b880272b8d099b82b08e945a7988c5dd0fe9d6b5
This commit is contained in:
drh
2022-08-22 02:00:26 +00:00
parent 05cb948bf7
commit 41ce47c4f4
18 changed files with 128 additions and 69 deletions

View File

@@ -340,7 +340,8 @@ void sqlite3VtabUnlockList(sqlite3 *db){
*/
void sqlite3VtabClear(sqlite3 *db, Table *p){
assert( IsVirtual(p) );
if( !db || db->pnBytesFreed==0 ) vtabDisconnectAll(0, p);
assert( db!=0 );
if( db->pnBytesFreed==0 ) vtabDisconnectAll(0, p);
if( p->u.vtab.azArg ){
int i;
for(i=0; i<p->u.vtab.nArg; i++){