提交 1c41cac8 作者: Jeromy Johnson 提交者: GitHub

Merge pull request #3027 from ipfs/fix/add-finalize-mem

don't cache entire mfs tree on add finalize
......@@ -231,6 +231,8 @@ func (adder *Adder) outputDirs(path string, fsn mfs.FSNode) error {
if err != nil {
return err
}
fsn.Uncache(name)
}
nd, err := fsn.GetNode()
if err != nil {
......
......@@ -152,6 +152,13 @@ func (d *Directory) Child(name string) (FSNode, error) {
return d.childUnsync(name)
}
func (d *Directory) Uncache(name string) {
d.lock.Lock()
defer d.lock.Unlock()
delete(d.files, name)
delete(d.childDirs, name)
}
// childFromDag searches through this directories dag node for a child link
// with the given name
func (d *Directory) childFromDag(name string) (*dag.Node, error) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论