Use always strings for cache keys (#13631)

* Use always strings for cache keys

* fixing tests

* Addressing PR review comments

* Adding the base to FormatInt

* Fix typo
Этот коммит содержится в:
Jesús Espino
2020-01-22 15:59:59 +01:00
коммит произвёл GitHub
родитель d881b68a38
Коммит 06fb1458ca
7 изменённых файлов: 55 добавлений и 56 удалений

Просмотреть файл

@@ -9,6 +9,7 @@ import (
"io"
"net/http"
"net/url"
"strconv"
"strings"
"time"
@@ -434,7 +435,7 @@ func resolveMetadataURL(requestURL string, siteURL string) string {
}
func getLinkMetadataFromCache(requestURL string, timestamp int64) (*opengraph.OpenGraph, *model.PostImage, bool) {
cached, ok := linkCache.Get(model.GenerateLinkMetadataHash(requestURL, timestamp))
cached, ok := linkCache.Get(strconv.FormatInt(model.GenerateLinkMetadataHash(requestURL, timestamp), 16))
if !ok {
return nil, nil, false
}
@@ -497,7 +498,7 @@ func cacheLinkMetadata(requestURL string, timestamp int64, og *opengraph.OpenGra
val = image
}
linkCache.AddWithExpiresInSecs(model.GenerateLinkMetadataHash(requestURL, timestamp), val, LINK_CACHE_DURATION)
linkCache.AddWithExpiresInSecs(strconv.FormatInt(model.GenerateLinkMetadataHash(requestURL, timestamp), 16), val, LINK_CACHE_DURATION)
}
func (a *App) parseLinkMetadata(requestURL string, body io.Reader, contentType string) (*opengraph.OpenGraph, *model.PostImage, error) {

Просмотреть файл

@@ -34,11 +34,9 @@ func (a *App) GetAllStatuses() map[string]*model.Status {
statusMap := map[string]*model.Status{}
for _, userId := range userIds {
if id, ok := userId.(string); ok {
status := a.GetStatusFromCache(id)
if status != nil {
statusMap[id] = status
}
status := a.GetStatusFromCache(userId)
if status != nil {
statusMap[userId] = status
}
}