使用Redis Stream偶发空指针问题

**问题描述:**使用redission客户端封装的stream消息队列,在进行消息轮询时,偶发出现空指针问题。

java 复制代码
[2024-11-13 09:59:20]  [] [] [redis-stream-consumer-thread-1 ] [lambda$streamMessageListenerContainer$1] [ERROR] [c.r.c.r.s.config.RedisStreamConfig] Cannot invoke "java.util.List.iterator()" because "records" is null
java.lang.NullPointerException: Cannot invoke "java.util.List.iterator()" because "records" is null
	at org.springframework.data.redis.stream.StreamPollTask.deserializeAndEmitRecords(StreamPollTask.java:151)
	at org.springframework.data.redis.stream.StreamPollTask.doLoop(StreamPollTask.java:128)
	at org.springframework.data.redis.stream.StreamPollTask.run(StreamPollTask.java:112)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:842)

解决方案: 可以看到redission官网在3.30.0版本解决了这个问题

使用redission封装的redis stream时遇到这个问题,只需要升级redission到3.30.0之后的版本即可。

相关推荐
chh5639 小时前
C++--模版初阶
c语言·开发语言·c++·学习·算法
灼灼桃花夭10 小时前
js之阳历 → 农历(含时辰)转换函数
开发语言·前端·javascript
qq_3806191610 小时前
html如何查看windows
jvm·数据库·python
派大星酷10 小时前
Java 调用 Kimi API 实战:实现与大模型的简单对话
java·开发语言·ai编程
小李子呢021110 小时前
前端八股性能优化(1)---防抖和节流
开发语言·前端·javascript
henrylin999910 小时前
Hermes Agent 核心运行系统调用流程--源码分析
开发语言·人工智能·python·机器学习·hermesagent
wgzrmlrm7411 小时前
如何加固SQL环境部署_删除默认安装的示例数据库
jvm·数据库·python
珎珎啊11 小时前
Python3 字符串核心知识点
开发语言·python
会编程的土豆11 小时前
01背包与完全背包详解
开发语言·数据结构·c++·算法
lbb 小魔仙11 小时前
Python_多模态大模型实战指南
开发语言·python