FlinkSql使用中rank/dense_rank函数报错空指针

问题描述

在flink1.16(甚至以前的版本)中,使用rank()或者dense_rank()进行排序时,某些场景会导致报错空指针NPE(NullPointerError)

报错内容如下

该报错没有行号/错误位置,无法排查

现状

目前已经确认为bug,根据github上的PR日志,目前在1.18及以上的版本中已经修复,现阶段用老版本的Coder们只能用row_number来代替下。

在新版本中,通过添加为空情况的判断,来避免掉了这个报错。

BUG问题表现及修复的方式具体看[FLINK-27741][table-planner] Fix NPE when use dense_rank() and rank()... by chenzihao5 · Pull Request #19797 · apache/flink · GitHub

总结

个人在排查过程中经历了极大的困难,主要原因是国内搜索引擎和gpt并未给出相关的结论,最后一页页翻apache issue找到了原因。

相关推荐
消失在人海中5 分钟前
oracle sql 语句 优化方法
数据库·sql·oracle
点赋科技15 分钟前
沙市区举办资本市场赋能培训会 点赋科技分享智能消费新实践
大数据·人工智能
YSGZJJ36 分钟前
股指期货技术分析与短线操作方法介绍
大数据·人工智能
Doker 多克41 分钟前
Flink CDC —部署模式
大数据·flink
Guheyunyi1 小时前
监测预警系统重塑隧道安全新范式
大数据·运维·人工智能·科技·安全
程序员岳焱1 小时前
Java 与 MySQL 性能优化:MySQL 慢 SQL 诊断与分析方法详解
后端·sql·mysql
酷爱码2 小时前
Spring Boot 整合 Apache Flink 的详细过程
spring boot·flink·apache
问道飞鱼2 小时前
Flink 高可用集群部署指南
flink·部署·批处理·流式批处理
Channing Lewis2 小时前
如果科技足够发达,是否还需要维持自然系统(例如生物多样性)中那种‘冗余’和‘多样性’,还是可以只保留最优解?
大数据·人工智能·科技
禺垣2 小时前
区块链技术概述
大数据·人工智能·分布式·物联网·去中心化·区块链