昇腾社区首页
中文
注册

运行时报错:corrupted size vs. prev_size或者Segmentation fault

问题现象

运行完成最后报错:corrupted size vs. prev_size或者Segmentation fault。

问题原因

可能是由于用户的业务进程中,有别的组件使用了acl资源并调用aclFinalize进行释放,从而导致acl资源重复释放。

解决方案

  • 方案一

    可以设置环境变量“MX_INDEX_FINALIZE”为0,则Index SDK不调用aclFinalize;设置为“1”表示仍调用aclFinalize。其他为无效设置。

    确保安装的Index SDK版本配套的版本,添加环境变量:

    export MX_INDEX_FINALIZE=0
  • 方案二

    若方案一无效,删除from paddle.base import libpaddle,然后调整导包顺序。若同时导入mx_rag.retrievers或mx_rag.storage相关包与mx_rag.document或mx_rag.knowledge相关包,需先导入后者。