Closed phr34k closed 1 year ago
Hi @phr34k - just checking: are you sure that the channel was in fact opened & if so, is it active?
@ellemouton I believe so yes, I mean I'm rather new so I'm not that savvy with the command line to assert but from what I understand the channel is open and active. Here you can see a couple of screens:
I think there's plenty of liquidity and the channel to endurance is opened, green, and also you can see I can receive a (recent-) payment on btcpay, but the payment sending to phoenix always hits a no_route error. You can also see when I query for routes it does actually select endurance node, so I'm puzzled what's actually causing this.
this happens to me sometimes and it resolves itself eventually.
Do you have debug logs?
I recreated some payments in order to capture the logs, I believe this is relevant portion: "missing feature dependency 47". Just my two cents, might be usefull to aggregate warnings/errors that lead up no_route
and return them as contextual reasons, so they can be displayed in user-facing ui's such as rtl and some wallets.
2022-11-25 11:22:40.292 [ERR] RPCS: [/routerrpc.Router/TrackPaymentV2]: rpc error: code = NotFound desc = payment isn't initiated
2022-11-25 11:22:40.295 [ERR] RPCS: [/routerrpc.Router/TrackPaymentV2]: rpc error: code = NotFound desc = payment isn't initiated
2022-11-25 11:22:43.858 [ERR] RPCS: [/lnrpc.Lightning/SendPaymentSync]: invalid character in string: '
'
2022-11-25 11:22:45.305 [ERR] RPCS: [/routerrpc.Router/TrackPaymentV2]: rpc error: code = NotFound desc = payment isn't initiated
2022-11-25 11:22:50.319 [ERR] RPCS: [/routerrpc.Router/TrackPaymentV2]: rpc error: code = NotFound desc = payment isn't initiated
2022-11-25 11:22:51.245 [WRN] CRTR: Pathfinding destination node features: missing feature dependency: 47
2022-11-25 11:22:51.245 [WRN] CRTR: Failed to find route for payment c04b876ae0e41e926089ff634ee701b362dfd8c946edb5fc78a382fe9fe5ecfb: missing dependent feature
2022-11-25 11:22:51.261 [WRN] RPCS: Unable to send payment: no_route
2022-11-25 11:22:55.327 [ERR] RPCS: [/routerrpc.Router/TrackPaymentV2]: rpc error: code = NotFound desc = payment isn't initiated
2022-11-25 11:22:55.328 [ERR] RPCS: [/routerrpc.Router/TrackPaymentV2]: rpc error: code = NotFound desc = payment isn't initiated
Feature bit 47 is ScidAliasOptional
. Sounds like this might be some issue with the endurance node itself since that's Acinq's implementation (Eclair). Or an interoperability problem.
Can you run lncli getnodeinfo 03933884aaf1d6b108397e5efe5c86bcf2d8ca8d2f700eda99db9214fc2712b134
and paste the result here please?
@guggero here's the output
{
"node": {
"last_update": 1669209210,
"pub_key": "03933884aaf1d6b108397e5efe5c86bcf2d8ca8d2f700eda99db9214fc2712b134",
"alias": "endurance",
"addresses": [
{
"network": "tcp",
"addr": "13.248.222.197:9735"
},
{
"network": "tcp",
"addr": "76.223.71.211:9735"
},
{
"network": "tcp",
"addr": "h7vdzsdiwmtv7ypli7e5ynjpgnnnmtj2wfbxz4dudwpzthfimcqcbkid.onion:9735"
}
],
"color": "#ffff00",
"features": {
"1": {
"name": "data-loss-protect",
"is_required": false,
"is_known": true
},
"5": {
"name": "upfront-shutdown-script",
"is_required": false,
"is_known": true
},
"7": {
"name": "gossip-queries",
"is_required": false,
"is_known": true
},
"8": {
"name": "tlv-onion",
"is_required": true,
"is_known": true
},
"11": {
"name": "unknown",
"is_required": false,
"is_known": false
},
"13": {
"name": "static-remote-key",
"is_required": false,
"is_known": true
},
"14": {
"name": "payment-addr",
"is_required": true,
"is_known": true
},
"17": {
"name": "multi-path-payments",
"is_required": false,
"is_known": true
},
"19": {
"name": "wumbo-channels",
"is_required": false,
"is_known": true
},
"23": {
"name": "anchors-zero-fee-htlc-tx",
"is_required": false,
"is_known": true
},
"27": {
"name": "shutdown-any-segwit",
"is_required": false,
"is_known": true
},
"29": {
"name": "unknown",
"is_required": false,
"is_known": false
},
"39": {
"name": "unknown",
"is_required": false,
"is_known": false
},
"45": {
"name": "explicit-commitment-type",
"is_required": false,
"is_known": true
},
"47": {
"name": "scid-alias",
"is_required": false,
"is_known": true
}
}
},
"num_channels": 200,
"total_capacity": "651304925",
"channels": [
]
}
I checked my own node and feature 47 isn't listed, when I query the public node id. I think this is due to btcpay not enabling the configuration by default. So I added the a custom fragment to turn it on, like this.
version: "3"
services:
lnd_bitcoin:
environment:
LND_EXTRA_ARGS: |
protocol.option-scid-alias=true
Now when I run docker exec -it btcpayserver_lnd_bitcoin /bin/cat ~/.lnd/lnd.conf
I can clearly see the option listed, and when I run ./bitcoin-lncli.sh getnodeinfo 03d5b2724e7624b436b61599c337fbc91eb7a09e82d2f0bfcfb05567aca9555fc4
the following output is generated.
{
"node": {
"last_update": 1669436505,
"pub_key": "03d5b2724e7624b436b61599c337fbc91eb7a09e82d2f0bfcfb05567aca9555fc4",
"alias": "03d5b2724e7624b436b6",
"addresses": [
{
"network": "tcp",
"addr": "82.168.121.213:9735"
},
{
"network": "tcp",
"addr": "f6fn672s6dco3bfog3ulwuisexotyktnjhruvswpfkxc7ywrjzbejjyd.onion:9735"
}
],
"color": "#3399ff",
"features": {
"0": {
"name": "data-loss-protect",
"is_required": true,
"is_known": true
},
"5": {
"name": "upfront-shutdown-script",
"is_required": false,
"is_known": true
},
"7": {
"name": "gossip-queries",
"is_required": false,
"is_known": true
},
"9": {
"name": "tlv-onion",
"is_required": false,
"is_known": true
},
"12": {
"name": "static-remote-key",
"is_required": true,
"is_known": true
},
"14": {
"name": "payment-addr",
"is_required": true,
"is_known": true
},
"17": {
"name": "multi-path-payments",
"is_required": false,
"is_known": true
},
"19": {
"name": "wumbo-channels",
"is_required": false,
"is_known": true
},
"23": {
"name": "anchors-zero-fee-htlc-tx",
"is_required": false,
"is_known": true
},
"27": {
"name": "shutdown-any-segwit",
"is_required": false,
"is_known": true
},
"31": {
"name": "amp",
"is_required": false,
"is_known": true
},
"45": {
"name": "explicit-commitment-type",
"is_required": false,
"is_known": true
},
"47": {
"name": "scid-alias",
"is_required": false,
"is_known": true
},
"2023": {
"name": "script-enforced-lease",
"is_required": false,
"is_known": true
}
}
},
"num_channels": 14,
"total_capacity": "88373916",
"channels": [
]
}
It still generates a no_route through:
2022-11-26 04:34:52.081 [WRN] CRTR: Pathfinding destination node features: missing feature dependency: 47
2022-11-26 04:34:52.081 [WRN] CRTR: Failed to find route for payment e066d3cfc6b9cdc82e7256907264f4aef744ea04acdbd4337902d7e789eeafb3: missing dependent feature
2022-11-26 04:34:52.094 [WRN] RPCS: Unable to send payment: no_route
2022-11-26 04:34:53.225 [ERR] RPCS: [/routerrpc.Router/TrackPaymentV2]: rpc error: code = NotFound desc = payment isn't initiated
Looks like this might be a known issue with older version of the phoenix wallet (https://github.com/ACINQ/phoenix/issues/317#issuecomment-1328030106).
I recently tried a payment from lnd to phoenix (mainnet), which worked. Since this looks like it's already fixed, would you consider to close the issue?
Closing based on the above comment from the OP.
Background
I run a testnet version of a btcpayserver and configured it with lnd. The node is connected to +/- 14 peers, and plenty of liquidity. I've been running some tests with phoenix wallet, and always get a
no_route
when I try to do a payment from mylnd
to myphoenix wallet
. I can use the phoenix wallet, to pay for the btcpay invoices w/o problem however.At first, I assumed it was related there no channel available so I've used
https://lndecode.com/
to decode one of the payment request, and took the public key03933884aaf1d6b108397e5efe5c86bcf2d8ca8d2f700eda99db9214fc2712b134
- looked up the node and opened a direct channel of about ~399000 sats.According to
1ml.com
that node (endurance) is owned by acinq so I believe this implies that I should have been able to directly transfer money back and forth between phoenix and my lnd node, but instead I always get ano_route
error upon using lnd to pay for the payment request.I think this could be related to:
Your environment
Steps to reproduce
I don't know the exact reproduction steps that lead up to the issue. In general what, I did was:
Expected behaviour
I expected that either the direct channel or one of the other channels would have been used to transfer money back to phoenix wallet.
Actual behaviour