Pull Request已成功合入, 合并人@wangyang
(感谢 wenjinhust 的贡献)Thanks for your pull-request.
The full list of commands accepted by me can be found at here。
You can get sig-info at here
PR Approval Progress
⚠️ This PR does not yet meet the following requirements:lgtm (requires ≥ 2 person(s) per module)、approve (requires ≥ 1 person(s) per module)
Module Approval Details
| module | lgtm status | approve status |
|---|---|---|
| repo-Ascend/MindIE-Motor | ❌ ganglv (1/2)(You can also ask: 纪涛, dljzx, 吴铭泾, renxiaolong12, zhoujing101) | ❌ (0/1)(You can also ask: 康宇昕, coding-lz, 柯展, guanxinghua, 王洋) |
💡 Tip:
- Committer can comment
/approveor/lgtm- Commenting
/approveimplies both code review (lgtm) and intent to merge (approve)
CLA Signature Pass
wenjinhust, thanks for your pull request. All authors of the commits have signed the CLA. 👍


✅ 流水线任务触发成功(流水线编号: 1367),正在执行, 请稍候。 任务链接 点此跳转 ...


Ascend docs pipeline is running...


变更摘要
本次 PR 主要修复 ClusterNodes.cpp 中三处共享锁误用问题:AddFaultNode、RemoveFaultNode 和 UpdateExtraInfo 原本使用 std::shared_lock(只读锁),却对 faultIds、faultVirtualIds、virtualToIdsMap 等成员容器进行了插入/删除/修改操作,存在并发数据竞争风险。修复方式是将这三处改为 std::unique_lock(写锁),确保写操作的线程安全性。其余改动为代码风格整理(include 顺序调整、函数签名格式化、缩进规范化、命名空间闭合注释)。
主要改动
AddFaultNode锁类型修正:将std::shared_lock改为std::unique_lock,该函数会向faultVirtualIds、faultIds、virtualIdToDelTimeMap、idToDelTimeMap写入数据,必须持有写锁。RemoveFaultNode锁类型修正:将std::shared_lock改为std::unique_lock,该函数会从faultVirtualIds、faultIds、virtualIdToDelTimeMap、idToDelTimeMap、virtualToIdsMap中擦除数据,必须持有写锁。UpdateExtraInfo锁类型修正:将std::shared_lock改为std::unique_lock,该函数会修改InstanceInfo内部字段以及virtualToIdsMap容器,必须持有写锁。- Include 顺序与代码格式整理:
ClusterNodes.h移至首位(保证头文件自包含),标准库头文件与项目头文件分组;大量函数签名合并为一行,缩进/换行统一规范化。


✅ 跳过 docs ci 检查,没有需要检查的文档文件


/retry


retry


| 阶段 | 任务名 | 状态 | 详情 |
|---|---|---|---|
| 编译构建 | Build_linux_x86_abi1 | ✅ | >>> |
| Build_linux_arm_abi1 | ✅ | >>> | |
| Build_linux_arm_abi0 | ✅ | >>> | |
| 恶意代码检查 | Antipoison | ✅ | >>> |
| 开源片段检查 | SCA | ✅ | >>> |
| pre-commit | ✅ | >>> | |
| 开发者测试 | UT_linux_x86_ms | ✅ | >>> |
| 流水线 | PR-pipeline_MindIE-Motor_gitcode | ✅ | >>> |
- compile : 运行流水线
- retry : 重试流水线所有失败子任务
- retry <任务名> : 仅重试指定失败子任务
- stop : 停止流水线


unique_lock:独占锁。同一时刻,只有一个线程可以持有该锁并访问资源。
shared_lock:共享锁。同一时刻,多个线程可以同时持有该锁。
可能出现以前可以正常取锁,修改后变为阻塞。造成的影响需评估后再修改。


1. 合入背景
Fixes #169
2. 修改内容
3. 资料变更
4. 接口变更
5. 测试结果
6. CheckList
[x] 代码注释完备
[x] 正确记录维测日志
[x] 是否有UT用例