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

More efficient implementation of a lookaside allocator that supports mini (in this case, harcoded to 128B) slots.

FossilOrigin-Name: b02fdc09c838f355d9efce57f817d6a86153153b4a1f2b763914f4aaa34cb76e
This commit is contained in:
numist
2019-12-12 02:50:07 +00:00
parent 3ecc05bc3f
commit 115d663c05
6 changed files with 86 additions and 15 deletions

View File

@@ -1287,6 +1287,11 @@ struct Lookaside {
u32 anStat[3]; /* 0: hits. 1: size misses. 2: full misses */
LookasideSlot *pInit; /* List of buffers not previously used */
LookasideSlot *pFree; /* List of available buffers */
#ifndef SQLITE_OMIT_MINI_LOOKASIDE
LookasideSlot *pMiniInit; /* List of mini buffers not prediously used */
LookasideSlot *pMiniFree; /* List of available mini buffers */
void *pMiddle; /* An address between the fullsize and mini buffers */
#endif
void *pStart; /* First byte of available memory space */
void *pEnd; /* First byte past end of available space */
};