SomberNight
67d24bf129
add LN gossip sync progress estimate indicator to Qt GUI
2020-02-29 20:03:35 +01:00
SomberNight
fd56fb9189
ChannelDB: add self.lock and make it thread-safe
2020-02-29 20:03:31 +01:00
SomberNight
a32af44ff9
trivial clean-up (typing/imports)
2020-02-28 20:27:35 +01:00
ThomasV
55a0043ab7
follow-up previous commit (fix tests)
2020-02-28 10:34:04 +01:00
ThomasV
97900c0985
store raw messages in gossip_db. Fixes #5960
2020-02-28 10:22:49 +01:00
ThomasV
9d0a862a43
revert prrevious commit (used in tests)
2020-02-20 11:26:19 +01:00
ThomasV
9680e7836c
remove ChannelDB.add_channel_update (no longer needed after 46d8080c76
)
2020-02-20 11:20:05 +01:00
SomberNight
46d8080c76
ln gossip: don't put own channels into db; always pass them to fn calls
...
Previously we would put fake chan announcement and fake outgoing chan upd
for own channels into db (to make path finding work). See Peer.add_own_channel().
Now, instead of above, we pass a "my_channels" param to the relevant ChannelDB methods.
2020-02-17 20:38:41 +01:00
SomberNight
24ebc77d76
ln chan verifier: fix code rot
2019-12-10 01:14:38 +01:00
SomberNight
13d6997355
LNPeerAddr: validate arguments
...
no longer subclassing NamedTuple (as it is difficult to do validation then...)
2019-11-26 00:15:33 +01:00
ThomasV
a4944cdcb2
delete channel from db in remove_channel, becaose it is called from lnworker
2019-10-23 08:20:15 +02:00
SomberNight
106bc6d2b2
follow-up prev
2019-10-15 15:41:18 +02:00
ThomasV
0966edc637
fine-grained callbacks for lightning network dialog
2019-10-12 19:15:51 +02:00
ThomasV
3897cf725d
move handle_error_code_from_failed_htlc to lnworker because it requires access to the network object
2019-10-12 18:22:19 +02:00
ThomasV
5377eb907c
follow-up dd0be1541e
2019-10-12 12:59:38 +02:00
ThomasV
dd0be1541e
Improve handling of lightning payment status:
...
- Move 'handle_error_code_from_failed_htlc' to channel_db,
and call it from pay_to_route, because it should not be
called when HTLCs are forwarded.
- Replace 'payment_received' and 'payment_status'
callbacks with 'invoice_status' and 'request_status'.
- Show payment error logs in the Qt GUI
- In the invoices list, show paid invoices for which
we still have the log.
2019-10-11 17:51:33 +02:00
SomberNight
509df9ddaf
create class for ShortChannelID and use it
2019-09-06 18:09:05 +02:00
SomberNight
edf186da0d
channeldb.load_data: attempt at fixing race
...
closes #5525
2019-09-05 18:32:45 +02:00
ThomasV
bd57880799
do not raise exception when add_own_channel adds channel update from the cache
2019-09-04 08:01:08 +02:00
ThomasV
e286ed1c13
add_own_channel does not need to be async
2019-09-03 21:01:45 +02:00
SomberNight
fa5302bcfb
(trivial) fix type annotation
2019-08-20 09:03:12 +02:00
SomberNight
e54f0fbafa
do not raise BaseException
2019-08-20 09:03:12 +02:00
SomberNight
d955285808
lnrouter/channeldb: small import clean-up
2019-08-20 09:03:12 +02:00
SomberNight
f0588846d5
channeldb: also store "message_flags" field for channel updates
...
this is a breaking change for the db format.
As in comment in diff,
"It would make more sense to store the raw gossip messages in the db."
2019-08-20 09:03:12 +02:00
SomberNight
d229bb4e4d
lnpeer: restore "temp save orphan channel updates" functionality
...
needed to handle race where remote might send chan_upd too soon
(before we save the short channel id for the channel after it reaches funding locked)
2019-08-20 09:03:12 +02:00
SomberNight
ba431495db
lnworker: fix silent TypeError in _calc_routing_hints_for_invoice
2019-08-20 09:03:12 +02:00
ThomasV
39bae1c7cf
channel_db: load_data should load node_info
2019-08-20 09:03:12 +02:00
ThomasV
b55f9e9e6a
Do not route through channels for which we did not receive
...
both updates, because this often means one of the nodes is
offline.
2019-08-20 09:03:12 +02:00
ThomasV
30e942bead
fix: delete from channel_db
2019-08-20 09:03:12 +02:00
ThomasV
32fcad5bc3
channel_db: update channels_for_node when removing channel
2019-08-20 09:03:12 +02:00
ThomasV
238f3c949c
get rid of sql_alchemy
2019-08-20 09:03:12 +02:00
ThomasV
0eab1692d6
Do not store message payloads in channel db.
...
Use single primary key for addresses.
2019-08-20 09:03:12 +02:00
ThomasV
f2d58d0e3f
optimize channel_db:
...
- use python objects mirrored by sql database
- write sql to file asynchronously
- the sql decorator is awaited in sweepstore, not in channel_db
2019-08-20 09:03:12 +02:00
ThomasV
180f6d34be
separate channel_db module
2019-08-20 09:03:12 +02:00