config: add channel commit batch size parameter
This commit is contained in:
parent
a181d26287
commit
ffd346e2e1
@ -145,6 +145,11 @@ const (
|
||||
// defaultChannelCommitInterval is the default maximum time between receiving a
|
||||
// channel state update and signing a new commitment.
|
||||
defaultChannelCommitInterval = 50 * time.Millisecond
|
||||
|
||||
// defaultChannelCommitBatchSize is the default maximum number of
|
||||
// channel state updates that is accumulated before signing a new
|
||||
// commitment.
|
||||
defaultChannelCommitBatchSize = 10
|
||||
)
|
||||
|
||||
var (
|
||||
@ -294,6 +299,7 @@ type Config struct {
|
||||
CoopCloseTargetConfs uint32 `long:"coop-close-target-confs" description:"The target number of blocks that a cooperative channel close transaction should confirm in. This is used to estimate the fee to use as the lower bound during fee negotiation for the channel closure."`
|
||||
|
||||
ChannelCommitInterval time.Duration `long:"channel-commit-interval" description:"The maximum time that is allowed to pass between receiving a channel state update and signing the next commitment. Setting this to a longer duration allows for more efficient channel operations at the cost of latency."`
|
||||
ChannelCommitBatchSize uint32 `long:"channel-commit-batch-size" description:"The maximum number of channel state updates that is accumulated before signing a new commitment."`
|
||||
|
||||
DefaultRemoteMaxHtlcs uint16 `long:"default-remote-max-htlcs" description:"The default max_htlc applied when opening or accepting channels. This value limits the number of concurrent HTLCs that the remote party can add to the commitment. The maximum possible value is 483."`
|
||||
|
||||
@ -514,6 +520,7 @@ func DefaultConfig() Config {
|
||||
registeredChains: chainreg.NewChainRegistry(),
|
||||
ActiveNetParams: chainreg.BitcoinTestNetParams,
|
||||
ChannelCommitInterval: defaultChannelCommitInterval,
|
||||
ChannelCommitBatchSize: defaultChannelCommitBatchSize,
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -314,6 +314,10 @@ type Config struct {
|
||||
// operations at the cost of latency.
|
||||
ChannelCommitInterval time.Duration
|
||||
|
||||
// ChannelCommitBatchSize is the maximum number of channel state updates
|
||||
// that is accumulated before signing a new commitment.
|
||||
ChannelCommitBatchSize uint32
|
||||
|
||||
// Quit is the server's quit channel. If this is closed, we halt operation.
|
||||
Quit chan struct{}
|
||||
}
|
||||
@ -822,7 +826,7 @@ func (p *Brontide) addLink(chanPoint *wire.OutPoint,
|
||||
BatchTicker: ticker.New(p.cfg.ChannelCommitInterval),
|
||||
FwdPkgGCTicker: ticker.New(time.Hour),
|
||||
PendingCommitTicker: ticker.New(time.Minute),
|
||||
BatchSize: 10,
|
||||
BatchSize: p.cfg.ChannelCommitBatchSize,
|
||||
UnsafeReplay: p.cfg.UnsafeReplay,
|
||||
MinFeeUpdateTimeout: htlcswitch.DefaultMinLinkFeeUpdateTimeout,
|
||||
MaxFeeUpdateTimeout: htlcswitch.DefaultMaxLinkFeeUpdateTimeout,
|
||||
|
@ -269,6 +269,10 @@
|
||||
; allows for more efficient channel operations at the cost of latency.
|
||||
; channel-commit-interval=50ms
|
||||
|
||||
; The maximum number of channel state updates that is accumulated before signing
|
||||
; a new commitment.
|
||||
; channel-commit-batch-size=10
|
||||
|
||||
; The default max_htlc applied when opening or accepting channels. This value
|
||||
; limits the number of concurrent HTLCs that the remote party can add to the
|
||||
; commitment. The maximum possible value is 483.
|
||||
|
@ -3138,6 +3138,7 @@ func (s *server) peerConnected(conn net.Conn, connReq *connmgr.ConnReq,
|
||||
MaxAnchorsCommitFeeRate: chainfee.SatPerKVByte(
|
||||
s.cfg.MaxCommitFeeRateAnchors * 1000).FeePerKWeight(),
|
||||
ChannelCommitInterval: s.cfg.ChannelCommitInterval,
|
||||
ChannelCommitBatchSize: s.cfg.ChannelCommitBatchSize,
|
||||
Quit: s.quit,
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user