mirror of
https://github.com/gohugoio/hugo.git
synced 2024-12-25 15:01:27 +00:00
hugolib: Clear the page cache per render
This is a slight performance optimization with no functional effect. See #5239
This commit is contained in:
parent
ed4f1edbd7
commit
dd692c710a
2 changed files with 8 additions and 2 deletions
|
@ -44,6 +44,12 @@ func newPageCache() *pageCache {
|
|||
return &pageCache{m: make(map[string][]pageCacheEntry)}
|
||||
}
|
||||
|
||||
func (c *pageCache) clear() {
|
||||
c.Lock()
|
||||
defer c.Unlock()
|
||||
c.m = make(map[string][]pageCacheEntry)
|
||||
}
|
||||
|
||||
// get/getP gets a Pages slice from the cache matching the given key and
|
||||
// all the provided Pages slices.
|
||||
// If none found in cache, a copy of the first slice is created.
|
||||
|
|
|
@ -1012,6 +1012,8 @@ func (s *Site) setupSitePages() {
|
|||
}
|
||||
|
||||
func (s *Site) render(config *BuildCfg, outFormatIdx int) (err error) {
|
||||
// Clear the global page cache.
|
||||
spc.clear()
|
||||
|
||||
if outFormatIdx == 0 {
|
||||
if err = s.preparePages(); err != nil {
|
||||
|
@ -1514,8 +1516,6 @@ func (s *Site) resetBuildState() {
|
|||
|
||||
s.expiredCount = 0
|
||||
|
||||
spc = newPageCache()
|
||||
|
||||
for _, p := range s.rawAllPages {
|
||||
p.subSections = Pages{}
|
||||
p.parent = nil
|
||||
|
|
Loading…
Reference in a new issue