Просмотр исходного кода

docs(d2-02-p5): ControlHost 硬件引擎僵死(08:41卡硬件驱动,强杀无效)+ 重启工控机恢复步骤

- operate 经独立进程 ivf_tl_ControlHost 借硬件;该引擎今早08:41卡硬件驱动IO僵死(5MB/不监听端口/日志停/无看门狗)
- 提权 taskkill /F 与 Stop-Process 均报成功但进程退不出(内核态IO不可中断),同 PID20268 先例
- 用户选重启工控机;已记重启后无缝恢复步骤(起微服务->重开operate自动拉新引擎->挂monitor.sh v2->端到端验证)
- 分表已建/库已改对(00e9767)在108已提交,不受本机重启影响

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
huangjie 1 день назад
Родитель
Сommit
a63c4ecad9

+ 12 - 0
项目文档/进度/D2-02-第三阶段-自动对焦重构-特殊情况记录.md

@@ -173,3 +173,15 @@
   ① **中划线库 aivfo-tl 里 9868 行历史测试图**(舱2/4/6/8)留在错库,是否迁到下划线库 aivfo_tl?默认不迁(测试图,今晚重拍即可;迁移需连 FastDFS 文件一起搬)。
   ② 端到端"图真写进下划线库分表 + 前端能看"需**今晚真机重新拍照**确认(现真机未拍照,下划线分表暂0行;根因已消除、日志不再报"表不存在")。
   ③ ★**部署清单须补**:换库/换环境时 data-transmission 必须连 picture 所在的**业务库 aivfo_tl(下划线)**;且只有新设备首次 link 才自动建分表,**已登记设备迁库需手动建分表**(本次踩坑)。
+
+#### [Phase5·真机联调] ControlHost 硬件引擎僵死(08:41卡硬件驱动)→ 强杀无效,重启工控机  — 2026-06-26 下午
+- 现象:改库重编后启动 operate,operate 进程正常响应但**完全空转**——不连MQTT、不拍照、不写日志、CPU近0(6分钟仅1.6秒)。
+- 根因:真机硬件引擎=**独立进程 `ivf_tl_ControlHost.exe`**(operate 经 `ControlProcessLauncher` 探/ping拉起、经 `DebugSessionClient` HTTP 借硬件;operate 自身 HAL 是空壳)。该进程**今早08:41(上一轮拍照)卡在硬件驱动IO僵死**:仅5MB内存、不监听端口、引擎日志(`C:\TLData\ivf_tl_Control_logs\`)停在08:41、看门狗 `ivf_tl_Watchdog` 也没运行。operate 探/ping借硬件失败 → 空转。
+- 强杀无效:提权 `taskkill /F` 与 `Stop-Process -Force` 均报"成功终止"但进程退不出(卡内核态硬件IO不可中断)。**同 PID20268 先例**。operate(18120)已成功杀掉;ControlHost(12192)僵死残留。
+- 处理:**用户选重启工控机**(2026-06-26 下午)。
+- ★**重启后恢复步骤(无缝衔接,下个会话照做)**:
+  1. `bash 项目文档/开发环境/start-all.sh` 起 7 微服务(等~2分钟。data-transmission 已是连下划线库的新jar;若启动期 data-transmission 报 `Load balancer ... aivfo-tl-control` 是它抢跑 tl-control,待 tl-control 就绪后单独重启它一次即可)。
+  2. 重开 operate Release(`ivf_tl_operate_2.0/ivf_tl_Operate/bin/Release/net6.0-windows/ivf_tl_Operate.exe`,15:41构建含两边UI改动;PowerShell `Start-Process -Verb RunAs` 提权,弹UAC)。operate 启动会**自动拉起新的健康 ControlHost 引擎**。
+  3. 启动监控 `bash 临时文件/monitor.sh`(已升级v2:含 ControlHost 引擎进程+日志监控,出报错即退出通知)。
+  4. **端到端验证**:operate拍照 → 图进下划线库 `aivfo_tl` 的 `picture_neo_1_20230411_<舱>` 分表 → 关联 embryo(如id=25)/病例(record_id=2,TEST-AF-NORMAL)。**分表已建好、库已改对(commit 00e9767),都在108/已提交,不受本机重启影响**。
+- 待观察:ControlHost 为何08:41卡死(长跑后串口/相机驱动僵死?**已是第二例硬件僵死**)——重启后长跑续观察,若频发需查硬件驱动/引擎对硬件IO的超时保护。