Skip to content

系统时间回退导致生成雪花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方式填充主键

MIT版权,未经许可禁止任何形式的转载