--Redis入坑--RedisPipelineException:Pipeline contained one or more invalid commands;WRONGTYPE ...
異常說明
最近在寫代碼的時候,redis報了如下錯誤:
org.springframework.data.redis.connection.RedisPipelineException: Pipeline contained one or more invalid commands; nested exception is io.lettuce.core.RedisCommandException: WRONGTYPE Operation against a key holding the wrong kind of value
原因分析
之前的一個需求中,使用的是list作為數據結構進行存儲,其存儲方式為redisService.lPush(key,value),之后邏輯的變更,使得需要換成set作為數據結構進行存儲,其存儲方式為redisService.sadd(key,value)。發生錯誤的位置就是這里:
在更改數據結構存儲的同時,key的鍵還是一樣的,因為之前的鍵是綁定給list結構的,現在key沒變,而結構換成了set,所以導致類型錯誤的異常。
解決方法
只需要把鍵重新命名為新的并且不重復于其他鍵即可。
總結
在使用redis進行存儲的時候,數據結構最好不要隨意更改,如果更改了,就需要把鍵重新命名一下,以防鍵的類型與原來的不匹配,存儲從而導致發生異常。
總結
以上是生活随笔為你收集整理的--Redis入坑--RedisPipelineException:Pipeline contained one or more invalid commands;WRONGTYPE ...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python爬虫爬取智联招聘(进阶版)
- 下一篇: The Places of Our Li