升级 LND 到 0.19 之前:发布说明里四条会改变操作行为的提示 图 1
升级 LND 到 0.19 之前:发布说明里四条会改变操作行为的提示 · 图 1

为什么值得单独核对发布说明

LND 的版本公告里,新功能吸引眼球,但真正影响日常操作的是另一类条目:接口倒计时、子系统时序修正、重试策略变化。以下四条摘自 0.19.0 发布说明(本文以 v0.19.0-beta 源码树内的文档为准),每一条都对应一个具体的操作动作。

升级 LND 到 0.19 之前:发布说明里四条会改变操作行为的提示 图 2
升级 LND 到 0.19 之前:发布说明里四条会改变操作行为的提示 · 图 2

V1 到 V2 的迁移成本怎么估

迁移不只是改方法名:V2 一族把结果返回从单次响应改为流式状态更新,TrackPaymentV2 与 V1 轮询的语义差异更大,脚本要重写的其实是连接管理与超时处理这一层。REST 侧新旧路径的请求响应结构同样不同,直接改 URL 大概率走不通。倒计时的真正含义是把付款中间层重写排进日程,而不是等升级报错时现改生产链路。

升级演练建议

升级生产节点之前,值得先在测试环境跑三类场景:一次强制关闭,记录 HTLC 清扫实际进链的区块数,对照 chainio 修复前后的节奏差;一次瞭望塔客户端在塔端不可达时的取块失败,观察重试与退避的日志形态;几笔钱包交易配合清扫预算参数,看费率函数的实际表现。这三组演练数据可以直接校准告警系统的「预期确认时延」,避免沿用旧的延迟补偿经验值。

一、五条 V1 支付接口进入 0.21 移除倒计时

发布说明用警告块列出了将在 0.21 版本移除的旧 RPC:lnrpc.SendToRoute 与 routerrpc.SendToRoute 由 routerrpc.SendToRouteV2 接替;lnrpc.SendPayment 与 routerrpc.SendPayment、以及 lnrpc.SendToRouteSync、lnrpc.SendPaymentSync 分别对应迁移到 SendPaymentV2 与 SendToRouteV2;router.TrackPayment 由 TrackPaymentV2 接替。对应的 REST 新路径是 /v2/router/send、/v2/router/route/send 与 /v2/router/track 下按付款哈希查询的端点。官方同时给出现代替代路径:TrackPaymentV2 可完全替换旧的 TrackPayment。还在调用 V1 支付与追踪接口的脚本,应该把迁移排进 0.21 之前的日程,而不是等到升级报错才动手。

二、chainio 让各子系统看同一个链尖

0.19 引入名为 chainio 的新子系统(PR 9315),目的是让相关子系统与它们的当前最佳区块保持同步。此前在解析强制关闭通道时,因为 ChainArbitrator、UtxoSweeper 与 TxPublisher 三个子系统的高度读数不一致,HTLC 清扫交易可能被延迟一到两个区块,费率与紧迫度判断也随之出现偏差。升级后这类不同步得到修复,运维侧的含义是:强制关闭后的清扫节奏会更接近参数设定的预期,历史上手动加费补偿延迟的经验值需要重新校准。

三、瞭望塔客户端取块重试有了上限

发布说明记录了针对 watchtower 区块拉取加入的重试逻辑(PR 8381):带上最大尝试次数与指数退避。此前瞭望塔客户端在取块失败时的行为较粗放,升级后失败会按退避节奏收敛。对多塔配置的用户,观察点在于对某个塔连续重试失败时的日志,这是塔端故障的第一手信号,而不是等备份窗口耗尽才察觉。

四、清扫器预算参数与无回执命令的补全

发布说明在强制关闭清扫的语境下点名了两个预算参数:--sweeper.budget.deadlinehtlcratio 与 --sweeper.budget.deadlinehtlc——HTLC 一级清扫的预算取用与它们直接相关,调过默认值的节点升级时应逐项复核。另外一组改动容易被忽略:lncli wallet releaseoutput、lncli wallet accounts import-pubkey、lncli wallet labeltx 等一批原本返回空响应的命令现在会给出明确的执行确认,依赖空响应判断成功的脚本要按新语义改写判断逻辑。

操作小结

另一条容易被跳过的注记是 macaroon 校验:0.19 起本地 macaroon 校验切换到外部库,官方特意提示这属于可能改变失败模式的变更。升级后请重新验证所有只读、读写、管理员档权限脚本,尤其是把权限错误当健康检查信号的监控规则。

还有一条通用建议:把发布说明里所有带「breaking」与「will be removed」字样的段落摘录进升级检查单,逐条给出处置人和处置时限。发布说明是版本行为的权威陈述,升级事故的复盘几乎都能在里面找到伏笔。

四条提示各对应一个动作:清点 V1 调用、重估清扫节奏、看一眼塔的重试日志、检查依赖空响应的脚本。版本行为以官方发布说明与实际升级演练为准;本文不构成投资建议。