diff options
author | Bjørn Erik Pedersen <[email protected]> | 2021-07-13 11:41:02 +0200 |
---|---|---|
committer | Bjørn Erik Pedersen <[email protected]> | 2021-07-15 17:14:26 +0200 |
commit | 022c4795510306e08a4aba31504ca382d41c7fac (patch) | |
tree | d4c29f62038d0f336d90f32f46bc5b4f5c3ddc28 /resources/image.go | |
parent | f27e542442d19436f1428cc22bb03aca398d37a7 (diff) | |
download | hugo-022c4795510306e08a4aba31504ca382d41c7fac.tar.gz hugo-022c4795510306e08a4aba31504ca382d41c7fac.zip |
hugofs: Make FileMeta a struct
This commit started out investigating a `concurrent map read write` issue, ending by replacing the map with a struct.
This is easier to reason about, and it's more effective:
```
name old time/op new time/op delta
SiteNew/Regular_Deep_content_tree-16 71.5ms ± 3% 69.4ms ± 5% ~ (p=0.200 n=4+4)
name old alloc/op new alloc/op delta
SiteNew/Regular_Deep_content_tree-16 29.7MB ± 0% 27.9MB ± 0% -5.82% (p=0.029 n=4+4)
name old allocs/op new allocs/op delta
SiteNew/Regular_Deep_content_tree-16 313k ± 0% 303k ± 0% -3.35% (p=0.029 n=4+4)
```
See #8749
Diffstat (limited to 'resources/image.go')
-rw-r--r-- | resources/image.go | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/resources/image.go b/resources/image.go index 3c70c9bf4..1eedbad91 100644 --- a/resources/image.go +++ b/resources/image.go @@ -311,7 +311,7 @@ func (i *imageResource) doWithImageConfig(conf images.ImageConfig, f func(src im }) if err != nil { if i.root != nil && i.root.getFileInfo() != nil { - return nil, errors.Wrapf(err, "image %q", i.root.getFileInfo().Meta().Filename()) + return nil, errors.Wrapf(err, "image %q", i.root.getFileInfo().Meta().Filename) } } return img, nil @@ -365,7 +365,7 @@ func (i *imageResource) getImageMetaCacheTargetPath() string { cfgHash := i.getSpec().imaging.Cfg.CfgHash df := i.getResourcePaths().relTargetDirFile if fi := i.getFileInfo(); fi != nil { - df.dir = filepath.Dir(fi.Meta().Path()) + df.dir = filepath.Dir(fi.Meta().Path) } p1, _ := paths.FileAndExt(df.file) h, _ := i.hash() |