zijunchiang
1ceba8ef7f
V1.4.5: 修正下载失败的错误归因 + 清理残留临时文件(为定位"空间不足"误报)
现象: 极米 H1S 上报告「曲库分区空间不足(当前可用 6.04 GB)」——数字自相矛盾。
核实(本地实测 Muse 协议):
- 曲库压缩包 430,575,974 字节;从 gzip 尾部 ISIZE 读出解压后为 965MB,
峰值占用约 1.4GB,6.04GB 可用空间根本不构成空间不足。
- 结论: 真正抛出的异常另有原因(消息里含 no space left),
被 isNoSpaceError() 只按消息文本匹配而误判成了"空间不足"。
修复:
- readableError 不再只看异常消息: 报告完整异常链 + 可用空间,
并用真实写入探针(AppPaths.probeWrite,写 8MB 再删)区分
"真的写不进去" 与 "其实能写"(inode 耗尽/配额/ROM 限制同样报 ENOSPC,
而 usableSpace 仍显示数 GB)。
- 失败时上报单行完整诊断到远程日志:
DB-SYNC download failed | <异常链> | root/free/total/envState/probe/proc-mounts。
- 界面失败文案直接显示原始异常,不再用可能误导的"空间不足"结论。
- AppPaths 新增 probeWrite() 与 diagnose()(含 /proc/mounts 相关挂载点)。
- MuseDbSync 失败时同时清理 muse.db.gz.download 与 muse.db.download:
原先失败只删前者,残留的 965MB 分片在反复重试时会白占空间。
版本 1.4.4(24) 到 1.4.5(25);签名证书不变。
2026-09-26 16:42:59 +08:00
..
2026-09-04 21:23:21 +08:00
2026-09-26 16:42:59 +08:00
2026-09-26 16:42:59 +08:00
2026-09-04 21:23:21 +08:00