系统时间回退导致生成雪花ID报错
报错场景:对接钉钉考勤数据,由于今天是2025.07.01,想着给系统时间改成6月底,然后同步6月的考勤信息,当插入信息到考勤表时,报错(插入时显式给主键设置了雪花ID)
报错信息
tex### Error updating database. Cause: java.lang.RuntimeException: Clock moved backwards. Refusing to generate id for 31890658 milliseconds ### Cause: java.lang.RuntimeException: Clock moved backwards. Refusing to generate id for 31890658 milliseconds问题原因:clock moved backwards 根据这个关键字百度发现这个是雪花算法的日志,由于服务器时间倒退,雪花算法依赖时间,服务器时间回退6小时,生成id会抛异常
解决方式:重启项目或者使用非雪花ID方式填充主键