Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Get method doesn't work correctly for bigcache with string type. #166

Open
ByungJun25 opened this issue Aug 10, 2022 · 1 comment
Open

Comments

@ByungJun25
Copy link

ByungJun25 commented Aug 10, 2022

Description
Hi,

Thank you for making the awesome library first.

The type casting code is wrong for bigcache with string type. Because bigcache always returns []byte type(refer here) even though we can store data as string type.

I think it is better if type casting is failed, it should return not only zero value but also error.

Steps for Reproduction

  1. Set up Bigcache with string type
func fn(config Config) {
  bigcacheClient, _ := bigcache.NewBigCache(bigcache.DefaultConfig(config.ExpiredTime))
  bigcacheStore := store.NewBigcache(bigcacheClient)

  memoryCache = cache.New[string](bigcacheStore)
}
  1. Set data
val := "some string data"
memoryCache.Set(ctx, key, val) // There is no error because it will be convert to byte array
  1. Get data
val, _ := memoryCache.Get(ctx, key) // There is no error but data is blank string.

Expected behavior:
It should be return stored string data.

Actual behavior:
It returned blank string.

Platforms:
Ubuntu

Versions:
v3.1.1

@davidwudv
Copy link

same issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants