lnpeer: increase max_accepted_htlcs (5->30)
Counter-intuitively, the motivation is to be able to *send* more htlcs, for MPP trickery. We don't offer more htlcs than this limit, to be conservative with what we send, and to interoperate with clightning. defaults of other clients: eclair: 30 clightning: 30 lnd: 483
This commit is contained in:
@@ -781,6 +781,7 @@ class Channel(AbstractChannel):
|
|||||||
if len(self.hm.htlcs_by_direction(htlc_receiver, direction=RECEIVED, ctn=ctn)) + 1 > chan_config.max_accepted_htlcs:
|
if len(self.hm.htlcs_by_direction(htlc_receiver, direction=RECEIVED, ctn=ctn)) + 1 > chan_config.max_accepted_htlcs:
|
||||||
raise PaymentFailure('Too many HTLCs already in channel')
|
raise PaymentFailure('Too many HTLCs already in channel')
|
||||||
# however, c-lightning is a lot stricter, so extra checks:
|
# however, c-lightning is a lot stricter, so extra checks:
|
||||||
|
# https://github.com/ElementsProject/lightning/blob/4dcd4ca1556b13b6964a10040ba1d5ef82de4788/channeld/full_channel.c#L581
|
||||||
if strict:
|
if strict:
|
||||||
max_concurrent_htlcs = min(self.config[htlc_proposer].max_accepted_htlcs,
|
max_concurrent_htlcs = min(self.config[htlc_proposer].max_accepted_htlcs,
|
||||||
self.config[htlc_receiver].max_accepted_htlcs)
|
self.config[htlc_receiver].max_accepted_htlcs)
|
||||||
|
|||||||
@@ -529,6 +529,10 @@ class Peer(Logger):
|
|||||||
static_remotekey = None
|
static_remotekey = None
|
||||||
dust_limit_sat = bitcoin.DUST_LIMIT_DEFAULT_SAT_LEGACY
|
dust_limit_sat = bitcoin.DUST_LIMIT_DEFAULT_SAT_LEGACY
|
||||||
reserve_sat = max(funding_sat // 100, dust_limit_sat)
|
reserve_sat = max(funding_sat // 100, dust_limit_sat)
|
||||||
|
# for comparison of defaults, see
|
||||||
|
# https://github.com/ACINQ/eclair/blob/afa378fbb73c265da44856b4ad0f2128a88ae6c6/eclair-core/src/main/resources/reference.conf#L66
|
||||||
|
# https://github.com/ElementsProject/lightning/blob/0056dd75572a8857cff36fcbdb1a2295a1ac9253/lightningd/options.c#L657
|
||||||
|
# https://github.com/lightningnetwork/lnd/blob/56b61078c5b2be007d318673a5f3b40c6346883a/config.go#L81
|
||||||
local_config = LocalConfig.from_seed(
|
local_config = LocalConfig.from_seed(
|
||||||
channel_seed=channel_seed,
|
channel_seed=channel_seed,
|
||||||
static_remotekey=static_remotekey,
|
static_remotekey=static_remotekey,
|
||||||
@@ -536,7 +540,7 @@ class Peer(Logger):
|
|||||||
to_self_delay=self.network.config.get('lightning_to_self_delay', 7 * 144),
|
to_self_delay=self.network.config.get('lightning_to_self_delay', 7 * 144),
|
||||||
dust_limit_sat=dust_limit_sat,
|
dust_limit_sat=dust_limit_sat,
|
||||||
max_htlc_value_in_flight_msat=funding_sat * 1000,
|
max_htlc_value_in_flight_msat=funding_sat * 1000,
|
||||||
max_accepted_htlcs=5,
|
max_accepted_htlcs=30,
|
||||||
initial_msat=initial_msat,
|
initial_msat=initial_msat,
|
||||||
reserve_sat=reserve_sat,
|
reserve_sat=reserve_sat,
|
||||||
funding_locked_received=False,
|
funding_locked_received=False,
|
||||||
|
|||||||
Reference in New Issue
Block a user