From 158897ff74e70a322d9c60cb8b5a08150854e897 Mon Sep 17 00:00:00 2001 From: Dominique Padiou <5765435+dpad85@users.noreply.github.com> Date: Tue, 4 Nov 2025 16:07:56 +0100 Subject: [PATCH] Ignore local channels with version 2/3 Channels v2/v3 are not supported anymore in lightning-kmp and cannot be read. They should be ignored. See https://github.com/ACINQ/lightning-kmp/pull/685 --- .../phoenix/db/sqldelight/ChannelsDatabase.sq | 11 +++++++++-- .../v1/channels-testnet-fe646b99.sqlite | Bin 28672 -> 36864 bytes 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/phoenix-shared/src/commonMain/sqldelight/channelsdb/fr/acinq/phoenix/db/sqldelight/ChannelsDatabase.sq b/phoenix-shared/src/commonMain/sqldelight/channelsdb/fr/acinq/phoenix/db/sqldelight/ChannelsDatabase.sq index a90637b22..bfd4f1218 100644 --- a/phoenix-shared/src/commonMain/sqldelight/channelsdb/fr/acinq/phoenix/db/sqldelight/ChannelsDatabase.sq +++ b/phoenix-shared/src/commonMain/sqldelight/channelsdb/fr/acinq/phoenix/db/sqldelight/ChannelsDatabase.sq @@ -22,8 +22,12 @@ CREATE TABLE htlc_infos ( CREATE INDEX htlc_infos_idx ON htlc_infos(channel_id, commitment_number); -- channels queries + +-- we ignore legacy channels using version 2/3 getChannel: -SELECT * FROM local_channels WHERE channel_id=?; +SELECT * FROM local_channels +WHERE channel_id=? +AND hex(substr(data, 1, 4)) NOT IN ('00000002', '00000003'); updateChannel: UPDATE local_channels SET data=? WHERE channel_id=?; @@ -34,8 +38,11 @@ INSERT INTO local_channels VALUES (?, ?, 0); closeLocalChannel: UPDATE local_channels SET is_closed=1 WHERE channel_id=?; +-- we ignore legacy channels using version 2/3 listLocalChannels: -SELECT data FROM local_channels WHERE is_closed=0; +SELECT data FROM local_channels +WHERE is_closed=0 +AND hex(substr(data, 1, 4)) NOT IN ('00000002', '00000003'); -- htlcs info queries insertHtlcInfo: diff --git a/phoenix-shared/src/commonTest/resources/sampledbs/channelsdb/v1/channels-testnet-fe646b99.sqlite b/phoenix-shared/src/commonTest/resources/sampledbs/channelsdb/v1/channels-testnet-fe646b99.sqlite index 0aeea534d5d4692f2e8f3d697da9b21a9b6eeee4..05e3024b238c8f15b8d62a837aa024f3aa9dce1a 100644 GIT binary patch literal 36864 zcmeI530xD${=j!P+{htfDG0bhL_y>bkW=Lfha7Pk0kKfLU9b6#4Qk21Vs@?97hnu9&GYp>k}yupf*Zm!G`v3RQ%7x9x?G+s-&_G zkyf%qRLYgVQ;AS21wkl~03-kjKmw2eBmfCO0+0YC0112+1Y)FRH4N!!h7M1_C6b~@ zJ|~Fde}!Qa)wnZEr#8Ow=c3j_ooq&LPn!k8Ey8AAxj za6x=b1R*xel#!CvpwrQ;V3HldC*J1tHYC$qR-lu!H=|$9_*exT$lLsJXK$u6?#m3s zeS^HcjeCy1Um`F$km1f?y{9K)CriwVV#h^&Fdsgd5KbhCc;e(g$-#}uVtBgy;$DpD z{d_jWSqwJ@i{b0S2*CM54x1m|Yj9kDEd|323k-laL^J6U5bvtK8tIt4>}nv4e15Je=7B`%f^ zZnwkP@uW}^4}aIRaPxQL(%^iMqt1z7R7PX`c$6b?oGsvrg*kN_kA2|xmn03-kje4Yf9 zfZ3?ZZwPonfdn7{NB|Om1Rw!O01|)%AOT1K5`Y9Cfxj04SrpSC1mQse)Ia>F${Wf% zxt`tM%TYvy{x@^zzttV3n*UbIpk0svBmfCO0{^1~WR&C<4@afFzvavA6Nc^(oWE1D zd5BTjjSKYlNVBYJ(> zs)(x87e@XVZMn^YZO^Y($l0cbb%o~q@Z#FpMW!O<>%}*gssCe)T7@Oe|C(Cz*kix% zH*GBre{nSaCTr!9$aC$N-0mvdn4I7mG|~3iW~x7O6xhYz&AFB6erZ>#T{H_%Vpd)_ zz0+;6du{^lao#zP#JWtT?d3D2Vb_I)Yu%Lf^)%1K&0tx5x$||A5vDfnd1l>BpY%kf zS6W>ii7n^24bxVi_PBNSWY!~IRmxg-g+8-CelK}ewpSfTR&6oL<7HsIaT-pY$5#V1lmJoCLQJ$s_GbS9ARJVJm+J%@h~y7Y4c&Z5~H8+S?VP>L{vH+s$YnZ<$CURN34fW{8cx;eOo8$hqw>cNC)>5i)d>+FyFi6 zl~lX2=(vwR&y{u2CKKO`NtIU^tf0BS)~DTDvhyCHiYyUYbF&pDnCo1tS-)i4(|eT< zmAsCqEli(5dn~wqK6>Ka$kh*bzetehi#m7}nf^&K9Xi3nyG1!C%{#I1GA%*Vngh&3 z$C7wWq7ij8%S{zA4VRRocZ3KhdtE-3(?u(HwURGM3D@#lyhqPb?Ph`5dfio0BWJFy zGt;lQT4bj{tNJC#%sKbLtT(Kc*XgNqx3s(*msW3@!aCg%RFO~S4aK6nM70Z_RW;uo z@ml@p&NN@tW96bNxb)8MtCi*|MkDiR`^NBLTZb~X{3|Z(urLhCW~|;on2Zp8lt*T<)Yl?XZq_j zZO@591k-N^?Z24wiyFVZV|4K^*tqCx%e*enL(>XNk;e0e+)4PDjTc5)%C*bol_d_p zydY!mt0@96f}NSP-wRQ73T&KuGA zBpvCvLt@7>NR#esomC8)a-EhM#)LqWU9^f7xa_l z*E{-K4lW$F)z+vnJzl!@L;=J6m2z{j|Bzhr__8d{=qdfProx|;JAzJ>e|0*zbK})z zHz%KG@n4CbuG@X=cGaT|@n#~X!OBVcj{jc%2hsrz9M;3j<^(95|FwavchAipz67)v277*rAarvLB9H|{jb+VXB zHKJ0jauWohKmw2eBmfCO0+0YC00}?>kN_kA2|xmnz+Xwg4Yg)ZoDgAcYi$|9wzjdh zvLMW@%{dkpX50x@Tz#51ni5gH(yM%7z}?v6W|zKdY*-pA9%rB(oUZkZD3F=oc@i5% z^Ohg%hr*uc|Mwy)d;d!3U|Em=BmfCO0+0YC00}?>kN_kA2|xmn03i>UKi5n_M)1Lh#J==tXUbf)%9K;a zlOq!f*=eUo9M8@3pJ2DHW}BC8*wpL4c=~jAr{R4A?GR*GZcjdad$TJbj#6a}rRJM> zE9%tXNnm|X;GFW!V8l8j;sKn@@UGIoF@em%>x z1P~lCK~l;C8Rg85<8gfA`6SPeEhc-DQbyqeln@NoqY+X{A8NpTfC5O+ggGoC2Kebk zBva}GS?wg?LIY?0?jCh7ISnazog7riZos?d+<_b9cVUI8_dej$nVdjsBK7eSmF@JOcx zZd5>YT~|M!m-^!n4~M#}>f7Jkz1qe$5U{6J4!f^VFHx$Q8#Q|O>@Y_>Uq5U&%c$*1 zNZXd{+$`3D_1acZCBIR*(J^j%)g12fy$;b0Hb0Iw5m{=+r}8?AJBO_(n4znhB}I)h zrqdQFIXg8yQCKQJHjbs15;{qsG~Cd0@AQ1UwX;scrj;7ZOviL(z3j`L2`g)-(o>e@ zjgHAQ?N-yxi0{&v<_4l zRdfDYvR~d{4fb-NkM#qKPEnTz{n3ScG}XS*pT|@0T9@XsN-=wyKFxE%b?vYkSJmko ztsJRzK%@hcKq?Rzw`zyv12B~UE>j%bVqmm6mA-8C&)?>^p%1* zHix=~0-t`6e91u3k8+^Aj!2i9N>Kv>ERTr1vEGgRQFxB2`LnD0Z)>Y^+vX&5w?Al` zyVYmYLv>z1)kR+{Nr}*Z^gMan2_A9nig^0{_J<=b?J9bx>VEEZyXgiiw?A?{wu0Hx zPQS3OI&=7&1dsdk)8ji&?SDYtI5<7j>Zn7AOf=^Y)wcVmc9W_BCq|ktJ6D|Iq<-ab zNwSuViE5~(;S>7i?1fT@yO}G7tG7I8Sn7ljqo!qFr`j2`u|mxFKX-Y9uAWC|Jz!7T4`Ua#lLKx$cvsM+uFr`Zkugt$7@^X+1okrUxUYCy?QLw4%YH>Blv|oKqqv5E^euY%x! zq=lf89i4Va)o?{+f%d(k%l@@x3Qs+JYq6E){;T-4tv>182B|wh|1&+6!0iVz$?QEb z{}cfk;NPbr)_T>GM<}K3wRzE@c>YcO&n1>8MqF@NnwxrU74sF)nfzWEW}i}qnK@O8 z$0CP=#xdF1J06`JcDH7?o@!GR_QpBb%Ki4-unYH|-Ud2T{;g7aig~6(zf-6b8t?jj zil)B$t(%GJjo+T%lN?r*_F`{P;AZNUMKXS$`rd$lOrIkYwH~PUievNy_T%qL^7G4n zxN+*)^J4o=t=|^?Fu8`6vo_pWeZw|idndBSYzy1u1wFH1BS`hGp0tr9@ zkN_kA2|xmnz~71hoc|A0C!GIp@Okmz{C{x%KREv%=q%v;e*;f92nc=l^Zy~pKLPrF BV2l6& delta 1009 zcmZozz|`=7ae_3fAOiyf`$PqMAVbgj(8iRl{9H^xAqHk3X4x#LaF>6Pf&dpUkjKbr z!N6&;vGE%d6ED-mMqMVJ%NrZn+1Pts8CiX1`D}h~@td)pk%5sx<(dgs(}U&{ay!x{ zt4PW@R%r%3IXl1RT%i5lK0p}GB;aHdDA|0Z{e;2tJ2yO=5oo=( z>y>FBXMhY}U3S})zf;k?x7qHAoc~)Z-5A~CLoYT znBun!s3Ez1ld_L_-rC!08;f^8eKd7TQ2)HlY{!ke&hiz=PSbER{Kw!?8s);^KKX-% zf-2$A=zyq9C#aHuFd@n@mSsPs!%O@GVX$uIsIM zPpo84+;f@XbgSy3X}lX+yw#oO$y-*WZCfTKS}Yl3;Ue&OH`5`HtQO_dA!;HPM-;uL zmToZJ*|lQX(uXo-haGk})d=`AfSg$mj64uv{LB784&q3V`|80?4Q3U2vM($0=-JgL zTf{R@f6xj3H!FmXuk()Xat-a+s*g->;@_vcDA(*RGvYlf;N!mTVCWIyH^-mM=ROqb zDOcyB3Je5BCh?`^&k9a7IVSpl*kN~}xMZE)-0TL9?8}x)tUh&Xda{`8K?w~RFfvXK zu+vduRQkkXs`n;W-$zwf_Rhr37uW>eX0J55C#vGzaAD`YLx~QP?d