Skip to content

Commit e679b9c

Browse files
author
Mario L Gutierrez
committed
redis cache: check for nil
1 parent da5d9aa commit e679b9c

File tree

2 files changed

+10
-4
lines changed

2 files changed

+10
-4
lines changed

kvs/redis.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,13 @@ func (rs *RedisStore) Get(key string) (string, error) {
7272
defer conn.Close()
7373

7474
key = rs.ns + key
75-
return redis.String(conn.Do("GET", key))
75+
s, err := redis.String(conn.Do("GET", key))
76+
if err == redis.ErrNil {
77+
return "", ErrNotFound
78+
} else if err != nil {
79+
return "", err
80+
}
81+
return s, nil
7682
}
7783

7884
// Del deletes a key

sqlx-runner/exec.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -422,7 +422,7 @@ func cacheOrSQL(execer *Execer) (sql string, args []interface{}, value []byte, e
422422
v, err := Cache.Get(execer.cacheID)
423423
//logger.Warn("DBG cacheOrSQL.1 getting by id", "id", execer.cacheID, "v", v, "err", err)
424424
if err != nil && err != kvs.ErrNotFound {
425-
logger.Error("Unable to read cache key. Continuing with query", "key", execer.cacheID)
425+
logger.Error("Unable to read cache key. Continuing with query", "key", execer.cacheID, "err", err)
426426
} else if v != "" {
427427
//logger.Warn("DBG cacheOrSQL.11 HIT", "v", v)
428428
return "", nil, []byte(v), nil
@@ -472,10 +472,10 @@ func setCache(execer *Execer, data interface{}, dataType int) {
472472
case dtStruct:
473473
b, err := json.Marshal(data)
474474
if err != nil {
475-
logger.Warn("Could not marshal data, clearing", "key", execer.cacheID)
475+
logger.Warn("Could not marshal data, clearing", "key", execer.cacheID, "err", err)
476476
err = Cache.Del(execer.cacheID)
477477
if err != nil {
478-
logger.Error("Could not delete cache key", "key", execer.cacheID)
478+
logger.Error("Could not delete cache key", "key", execer.cacheID, "err", err)
479479
}
480480
return
481481
}

0 commit comments

Comments
 (0)