文章总览 - 66
2026

DataX 同步 StarRocks VARCHAR 超长导致数据丢失
DataX 从 PostgreSQL 同步数据到 StarRocks 时,部分行报 NULL value in non-nullable column 被静默丢弃。根因是 PostgreSQL 的 VARCHAR(n) 按字符数计算,StarRocks 按字节数计算,自动建表直接映射导致中文数据超长被置 NULL。

GraalVM 反射参数名丢失导致 Controller 500
生产环境 Controller 全量 500,编译配置正确、class 文件包含参数名,但 GraalVM 运行时反射拿不到方法参数名,导致 Spring MVC 无法解析 @RequestParam 和 @PathVariable。显式指定注解 value 后修复。

Spring 事务与 @Async 导致的状态丢失
记录一次真实线上任务发布状态丢失 Bug 的排查与修复过程:从表面上的"发布成功但状态没变",到定位 Spring @Transactional 与 @Async 之间的事务提交竞态问题,最终通过 TransactionSynchronization 的 afterCommit 回调彻底解决。
2025

一次 Token 刷新并发 Bug 的排查与解决
线上用户频繁被踢出登录,表面看是 Token 过期,实际是前端并发请求触发了 Token 刷新的线程安全问题——旧 Token 被销毁后,其他请求仍在使用它。最终通过分布式锁 + 二级缓存彻底解决。






