问题类型
启动失败 / 服务无法启动
部署方式
Windows / 非 Docker(原生 windows_amd64 包 + PowerShell 启动脚本)
CPA 版本
v7.2.71
CPA Manager Plus 版本
v1.11.0(从 v1.10.5 升级失败后已回退到 v1.10.5 可正常使用)
问题描述
升级到 CPA Manager Plus v1.11.0(cpa-manager-plus_v1.11.0_windows_amd64.zip)后,Manager Server 无法启动。
进程几乎立刻退出,日志仅有:
open sqlite: SQL logic error: out of memory (1)
系统物理内存充足(测试时 FreePhysicalMemory 约 14–15GB),因此更像是 Windows 原生包内 SQLite 初始化失败,而不是真实 OOM。
补充:
- 官方 release 中 zip 的 SHA256 与
checksums.txt 一致(包未损坏)。
- 空
USAGE_DATA_DIR(全新目录)也会复现 → 不是旧库损坏导致。
- 同一台机器、同一启动脚本、同一数据目录下,v1.10.5 可正常启动并打开
http://127.0.0.1:18317/management.html。
- 系统 Python 的
sqlite3 可打开现有 usage.sqlite,PRAGMA integrity_check 返回 ok。
- 即使直接运行
cpa-manager-plus.exe(无额外参数),也会先尝试 open sqlite 并以同样错误退出。
复现步骤
- 在 Windows 上下载并解压
cpa-manager-plus_v1.11.0_windows_amd64.zip。
- 设置环境变量(示意):
HTTP_ADDR=127.0.0.1:18317
USAGE_DATA_DIR=<任意空目录或已有 data 目录>
CPA_MANAGER_ADMIN_KEY=...
CPA_UPSTREAM_URL=http://127.0.0.1:8317
CPA_MANAGEMENT_KEY=...
USAGE_COLLECTOR_MODE=http
USAGE_POLL_INTERVAL_MS=500
- 运行
cpa-manager-plus.exe。
- 观察进程立即退出,stderr 出现:
open sqlite: SQL logic error: out of memory (1)
- 将同一脚本/环境改回 v1.10.5 exe → 可正常监听 18317。
也可不依赖已有数据,仅用空 USAGE_DATA_DIR 启动,同样失败。
关键配置
deployment: Windows native package (windows_amd64)
start: PowerShell script setting env vars then Start-Process cpa-manager-plus.exe
http_addr: 127.0.0.1:18317
cpa_upstream: http://127.0.0.1:8317
collector_mode: http
poll_interval_ms: 500
cpa_version: v7.2.71
cpamp_broken: v1.11.0
cpamp_working: v1.10.5
(未在此粘贴 admin/management key 等敏感信息。)
/status 返回内容
无法获取:v1.11.0 进程未成功监听,无法访问 /status。
v1.10.5 回退后服务正常。
日志
2026/07/13 15:38:18 open sqlite: SQL logic error: out of memory (1)
2026/07/13 15:39:05 open sqlite: SQL logic error: out of memory (1)
2026/07/13 15:39:50 open sqlite: SQL logic error: out of memory (1)
2026/07/13 15:40:11 open sqlite: SQL logic error: out of memory (1) # empty USAGE_DATA_DIR
截图
N/A(进程在绑定端口前已退出)
期望行为
- v1.11.0 Windows amd64 原生包应能在空 data 目录下正常初始化 SQLite 并启动。
- 若存在数据迁移,应给出明确错误信息,而不是 SQLITE_NOMEM 被映射成 out of memory。
- 在真实内存充足时不应报 out of memory。
检查清单
问题类型
启动失败 / 服务无法启动
部署方式
Windows / 非 Docker(原生 windows_amd64 包 + PowerShell 启动脚本)
CPA 版本
v7.2.71
CPA Manager Plus 版本
v1.11.0(从 v1.10.5 升级失败后已回退到 v1.10.5 可正常使用)
问题描述
升级到 CPA Manager Plus v1.11.0(
cpa-manager-plus_v1.11.0_windows_amd64.zip)后,Manager Server 无法启动。进程几乎立刻退出,日志仅有:
系统物理内存充足(测试时 FreePhysicalMemory 约 14–15GB),因此更像是 Windows 原生包内 SQLite 初始化失败,而不是真实 OOM。
补充:
checksums.txt一致(包未损坏)。USAGE_DATA_DIR(全新目录)也会复现 → 不是旧库损坏导致。http://127.0.0.1:18317/management.html。sqlite3可打开现有usage.sqlite,PRAGMA integrity_check返回ok。cpa-manager-plus.exe(无额外参数),也会先尝试 open sqlite 并以同样错误退出。复现步骤
cpa-manager-plus_v1.11.0_windows_amd64.zip。HTTP_ADDR=127.0.0.1:18317USAGE_DATA_DIR=<任意空目录或已有 data 目录>CPA_MANAGER_ADMIN_KEY=...CPA_UPSTREAM_URL=http://127.0.0.1:8317CPA_MANAGEMENT_KEY=...USAGE_COLLECTOR_MODE=httpUSAGE_POLL_INTERVAL_MS=500cpa-manager-plus.exe。open sqlite: SQL logic error: out of memory (1)也可不依赖已有数据,仅用空
USAGE_DATA_DIR启动,同样失败。关键配置
(未在此粘贴 admin/management key 等敏感信息。)
/status 返回内容
日志
2026/07/13 15:38:18 open sqlite: SQL logic error: out of memory (1) 2026/07/13 15:39:05 open sqlite: SQL logic error: out of memory (1) 2026/07/13 15:39:50 open sqlite: SQL logic error: out of memory (1) 2026/07/13 15:40:11 open sqlite: SQL logic error: out of memory (1) # empty USAGE_DATA_DIR截图
N/A(进程在绑定端口前已退出)
期望行为
检查清单
out of memory/open sqlite/ Windows 启动失败:无匹配)