diff options
author | Ben Johnson <benbjohnson@yahoo.com> | 2014-06-30 08:01:41 -0600 |
---|---|---|
committer | Ben Johnson <benbjohnson@yahoo.com> | 2014-06-30 08:01:41 -0600 |
commit | def455554b5607ec6ccd0af51d0dea5401003e93 (patch) | |
tree | 3c866e1b594f37ae317218b3ba94965592ae8646 /tx.go | |
parent | Merge pull request #214 from Shopify/fix_stats_sub (diff) | |
download | dedo-def455554b5607ec6ccd0af51d0dea5401003e93.tar.gz dedo-def455554b5607ec6ccd0af51d0dea5401003e93.tar.xz |
Add freelist cache.
This commit adds a cache to the freelist which combines the available free pages and pending free pages in
a single map. This was added to improve performance where freelist.isFree() was consuming 70% of CPU time
for large freelists.
Diffstat (limited to 'tx.go')
-rw-r--r-- | tx.go | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -496,7 +496,7 @@ func (tx *Tx) Page(id int) (*PageInfo, error) { } // Determine the type (or if it's free). - if tx.db.freelist.isFree(pgid(id)) { + if tx.db.freelist.freed(pgid(id)) { info.Type = "free" } else { info.Type = p.typ() |