seata Saga状态机实例表为什么不用自增id作为主键?

9w11ddsr  于 2个月前  发布在  其他
关注(0)|答案(1)|浏览(33)

请问下这两张表为什么不用自增id作为主键?

euoag5mw

euoag5mw1#

因为支持不同数据库,代码中没有针对不同数据库实现,这些数据库的主键自增实现各不相同,所以id在代码中要用相同的方式生成,参考 StateMachineRepositoryImpl

if (StringUtils.isBlank(stateMachine.getId())) {
    stateMachine.setId(seqGenerator.generate(DomainConstants.SEQ_ENTITY_STATE_MACHINE));
}

在 at 模式中的表中,针对不同数据库有特定的SQL,和这儿实现方式不一样。

相关问题