[chore] update database caching library (#1040)

* convert most of the caches to use result.Cache{}

* add caching of emojis

* fix issues causing failing tests

* update go-cache/v2 instances with v3

* fix getnotification

* add a note about the left-in StatusCreate comment

* update EmojiCategory db access to use new result.Cache{}

* fix possible panic in getstatusparents

* further proof that kim is not stinky
This commit is contained in:
kim 2022-11-15 18:45:15 +00:00 committed by GitHub
commit 8598dea98b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
55 changed files with 725 additions and 2289 deletions

View file

@ -27,11 +27,11 @@ import (
"github.com/superseriousbusiness/gotosocial/internal/log"
"codeberg.org/gruf/go-cache/v2"
"codeberg.org/gruf/go-cache/v3"
)
func newETagCache() cache.Cache[string, eTagCacheEntry] {
eTagCache := cache.New[string, eTagCacheEntry]()
eTagCache := cache.New[string, eTagCacheEntry](0, 1000, 0)
eTagCache.SetTTL(time.Hour, false)
if !eTagCache.Start(time.Minute) {
log.Panic("could not start eTagCache")

View file

@ -123,7 +123,7 @@ func (m *Module) rssFeedGETHandler(c *gin.Context) {
cacheEntry.lastModified = accountLastPostedPublic
cacheEntry.eTag = eTag
m.eTagCache.Put(cacheKey, cacheEntry)
m.eTagCache.Set(cacheKey, cacheEntry)
}
c.Header(eTagHeader, cacheEntry.eTag)

View file

@ -22,7 +22,7 @@ import (
"errors"
"net/http"
"codeberg.org/gruf/go-cache/v2"
"codeberg.org/gruf/go-cache/v3"
"github.com/gin-gonic/gin"
"github.com/superseriousbusiness/gotosocial/internal/api"
"github.com/superseriousbusiness/gotosocial/internal/gtserror"