Fix: archive is never closed

This commit is contained in:
Radhi Fadlillah 2019-08-06 20:51:06 +07:00
parent cc097f50c8
commit 1399e0fc9f
2 changed files with 7 additions and 0 deletions

View file

@ -6,6 +6,7 @@ import (
"time"
"github.com/go-shiori/shiori/internal/database"
"github.com/go-shiori/shiori/pkg/warc"
"github.com/julienschmidt/httprouter"
cch "github.com/patrickmn/go-cache"
"github.com/sirupsen/logrus"
@ -24,6 +25,11 @@ func ServeApp(DB database.DB, dataDir string, port int) error {
ArchiveCache: cch.New(time.Minute, 5*time.Minute),
}
hdl.ArchiveCache.OnEvicted(func(key string, data interface{}) {
archive := data.(*warc.Archive)
archive.Close()
})
// Create router
router := httprouter.New()

View file

@ -54,6 +54,7 @@ func NewArchive(req ArchivalRequest, dstPath string) error {
if err != nil {
return fmt.Errorf("failed to create archive: %v", err)
}
defer db.Close()
// Create archiver
arc := &archiver.Archiver{