aboutsummaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
author6543 <6543@obermui.de>2022-05-15 20:43:27 +0200
committerGitHub <noreply@github.com>2022-05-15 20:43:27 +0200
commit00a981d341dfa62d2a9667b01500820ec7ddf19a (patch)
treefc95b030791d6629d277cfe48a3380f296cf5adb /modules
parent3a245230f494b9d6a7e5c688cbb3c7f7c3a33cbd (diff)
downloadgitea-00a981d341dfa62d2a9667b01500820ec7ddf19a.tar.gz
gitea-00a981d341dfa62d2a9667b01500820ec7ddf19a.zip
Update go-chi/cache to utilize Ping() (#19719)
* update gitea.com/go-chi/cache -> v0.2.0 * ajust to new interface * refactor
Diffstat (limited to 'modules')
-rw-r--r--modules/cache/cache.go27
-rw-r--r--modules/cache/cache_redis.go5
-rw-r--r--modules/cache/cache_twoqueue.go5
3 files changed, 11 insertions, 26 deletions
diff --git a/modules/cache/cache.go b/modules/cache/cache.go
index fd32aa153b..21d0cd0a04 100644
--- a/modules/cache/cache.go
+++ b/modules/cache/cache.go
@@ -5,11 +5,9 @@
package cache
import (
- "errors"
"fmt"
"strconv"
- "code.gitea.io/gitea/modules/log"
"code.gitea.io/gitea/modules/setting"
mc "gitea.com/go-chi/cache"
@@ -35,7 +33,7 @@ func NewContext() error {
if conn, err = newCache(setting.CacheService.Cache); err != nil {
return err
}
- if err = Ping(); err != nil {
+ if err = conn.Ping(); err != nil {
return err
}
}
@@ -43,29 +41,6 @@ func NewContext() error {
return err
}
-// Ping checks if the cache service works or not, it not, it returns an error
-func Ping() error {
- if conn == nil {
- return errors.New("cache not available")
- }
- var err error
- 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 nil
-}
-
// GetCache returns the currently configured cache
func GetCache() mc.Cache {
return conn
diff --git a/modules/cache/cache_redis.go b/modules/cache/cache_redis.go
index ff6c8d424c..7bb71f08ce 100644
--- a/modules/cache/cache_redis.go
+++ b/modules/cache/cache_redis.go
@@ -153,6 +153,11 @@ func (c *RedisCacher) StartAndGC(opts cache.Options) error {
return c.c.Ping(graceful.GetManager().HammerContext()).Err()
}
+// Ping tests if the cache is alive.
+func (c *RedisCacher) Ping() error {
+ return c.c.Ping(graceful.GetManager().HammerContext()).Err()
+}
+
func init() {
cache.Register("redis", &RedisCacher{})
}
diff --git a/modules/cache/cache_twoqueue.go b/modules/cache/cache_twoqueue.go
index 275b73f068..9c26b011b6 100644
--- a/modules/cache/cache_twoqueue.go
+++ b/modules/cache/cache_twoqueue.go
@@ -199,6 +199,11 @@ func (c *TwoQueueCache) StartAndGC(opts mc.Options) error {
return err
}
+// Ping tests if the cache is alive.
+func (c *TwoQueueCache) Ping() error {
+ return mc.GenericPing(c)
+}
+
func init() {
mc.Register("twoqueue", &TwoQueueCache{})
}