lightning / bolts

BOLT: Basis of Lightning Technology (Lightning Network Specifications)
2.11k stars 492 forks source link

BOLT 7: `gossip_status` (feature 66/67) #1186

Closed rustyrussell closed 1 week ago

rustyrussell commented 3 months ago

This is a simple sync message, so vastly out-of-sync nodes can be handed the gossip they need. It's a stopgap until gossip v2.

I'll be implementing this (as feature 100+66/67, and message 30000+267) for testing.

morehouse commented 3 months ago

At a spec level it seems query messages should already provide this functionality.

Do implementations other than CLN encounter issues with the current query mechanism? Perhaps it would be quicker to fix any implementation bugs with the existing mechanism rather than create a whole new spec that not all implementations may implement any time soon (or ever).

rustyrussell commented 3 months ago

Well, LDK kind of gave up and just asks for all the gossip. This is gentler. Not sure what the status of LND is, but without something like this you can't even know if there's stuff you don't know. If someone wants to write up a good way of doing this, I'd be delighted!

With gossipv2 it's possible to use set reconciliation, but there's a lot of work needed to do that, so this is a simple bandaid in the meantime.

morehouse commented 3 months ago

Isn't this what extended gossip queries are for?

You send a series of query_channel_range messages with the timestamp bit set, checking the replies against your channel_update timestamps. Then you can request the specific channel_updates you're missing.

rustyrussell commented 1 week ago

Dropping this due to lack of enthusiasm, and other ways of implementing.