Test cache during init (#17852)
This commit is contained in:
parent
b4a32afec1
commit
11d519b385
15
modules/cache/cache.go
vendored
15
modules/cache/cache.go
vendored
@ -8,6 +8,7 @@ import (
|
||||
"fmt"
|
||||
"strconv"
|
||||
|
||||
"code.gitea.io/gitea/modules/log"
|
||||
"code.gitea.io/gitea/modules/setting"
|
||||
|
||||
mc "gitea.com/go-chi/cache"
|
||||
@ -35,6 +36,20 @@ func NewContext() error {
|
||||
if conn, err = newCache(setting.CacheService.Cache); err != nil {
|
||||
return err
|
||||
}
|
||||
const testKey = "__gitea_cache_test"
|
||||
const testVal = "test-value"
|
||||
if err = conn.Put(testKey, testVal, 10); err != nil {
|
||||
return err
|
||||
}
|
||||
val := conn.Get(testKey)
|
||||
if valStr, ok := val.(string); !ok || valStr != testVal {
|
||||
// If the cache is full, the Get may not read the expected value stored by Put.
|
||||
// Since we have checked that Put can success, so we just show a warning here, do not return an error to panic.
|
||||
log.Warn("cache (adapter:%s, config:%s) doesn't seem to work correctly, set test value '%v' but get '%v'",
|
||||
setting.CacheService.Cache.Adapter, setting.CacheService.Cache.Conn,
|
||||
testVal, val,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
return err
|
||||
|
Loading…
Reference in New Issue
Block a user