开发者社区 > 云原生 > 中间件 > 正文

Seata 的UNDO_LOG_SEQ 经常生产不了,服务报找不到函数,怎么办?

Seata 的UNDO_LOG_SEQ 经常生产不了,服务报找不到函数,怎么办?

-- Create table
create table UNDO_LOG
(
  id            NUMBER(20) not null,
  branch_id     NUMBER(20) not null,
  xid           VARCHAR2(100) not null,
  rollback_info BLOB,
  log_status    INTEGER,
  log_created   DATE,
  log_modified  DATE,
  context VARCHAR2(100),
  ext           VARCHAR2(100)
);
-- Create/Recreate indexes 
create index IDX_XRID on UNDO_LOG (BRANCH_ID, XID);
-- Create/Recreate primary, unique and foreign key constraints 
alter table UNDO_LOG
  add constraint PK_UNDO primary key (ID);
create sequence UNDO_LOG_SEQ
minvalue 1
maxvalue 9999999999999999999999999
start with 1
increment by 1
cache 20;

展开
收起
青城山下庄文杰 2023-08-04 18:25:07 160 0
2 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    当你在使用 Seata 过程中遇到 UNDO_LOG_SEQ 生成问题和服务找不到函数的报错时,以下是一些可能的解决方法:

    检查数据库配置:请确保你的 Seata 配置中的数据库连接配置正确,并且数据库可正常访问。检查数据库连接 URL、用户名、密码等配置项是否正确,以及数据库服务是否正常运行。

    检查 Seata Server 配置:确保你的 Seata Server 的配置正确,并且与应用程序的配置相匹配。特别注意 store 配置项,它定义了 Seata Server 用于存储事务日志的存储介质。如果你使用的是数据库存储模式,确保数据库表结构正确创建,并且与 Seata Server 的配置一致。

    检查事务参与者配置:确保你的事务参与者(包括动态数据源)的配置正确,并且与 Seata Server 的配置相匹配。检查事务参与者的唯一标识(如 applicationId、txServiceGroup)是否正确设置,并且与 Seata Server 的配置一致。

    检查事务参与者代码:如果你的事务参与者是自定义的代码,确保你的代码正确实现了 Seata 提供的参与者接口。检查代码中的事务注解、事务处理逻辑是否正确,并且与 Seata Server 的配置相匹配。

    检查函数注册:当服务报找不到函数的错误时,可能是由于函数注册问题导致的。请确保你的服务已正确注册到 Seata Server,并且函数名、参数类型和个数与服务实现类中的函数匹配。检查服务的唯一标识(如 serviceName)是否正确设置,并且与 Seata Server 的配置一致。

    检查 Seata 版本兼容性:确保你使用的 Seata 版本与你的应用程序和其他相关组件(如动态数据源)兼容。不同版本的 Seata 可能会有不同的特性和行为,因此请查阅 Seata 的官方文档或与 Seata 社区交流,了解你使用的版本是否与你的环境兼容。

    日志调试:通过查看 Seata 和应用程序的日志,可以获取更多关于具体错误的信息。检查日志中是否存在其他异常或错误提示,以便更好地定位问题并采取相应的解决措施。

    2023-08-04 20:51:36
    赞同 展开评论 打赏
  • undo_log没有删掉是因为回滚失败了吧,回滚失败就不会删,得手动按照undo_log表里beforeImage的数据回滚数据后,undo_log就自动删了,或者自己手动删undo_log的数据-此回答整理自钉群“3群-Seata 开源讨论群”

    2023-08-04 19:20:40
    赞同 展开评论 打赏

为企业提供高效、稳定、易扩展的中间件产品。

相关电子书

更多
大规模日志数据平台架构面临的问题与挑战 立即下载
PostgresChina2018_赖思超_PostgreSQL10_hash索引的WAL日志修改版final 立即下载
Kubernetes下日志实时采集、存储与计算实践 立即下载