• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

lightningnetwork / lnd / 12343072627

15 Dec 2024 11:09PM UTC coverage: 57.504% (-1.1%) from 58.636%
12343072627

Pull #9315

github

yyforyongyu
contractcourt: offer outgoing htlc one block earlier before its expiry

We need to offer the outgoing htlc one block earlier to make sure when
the expiry height hits, the sweeper will not miss sweeping it in the
same block. This also means the outgoing contest resolver now only does
one thing - watch for preimage spend till height expiry-1, which can
easily be moved into the timeout resolver instead in the future.
Pull Request #9315: Implement `blockbeat`

1445 of 2007 new or added lines in 26 files covered. (72.0%)

19246 existing lines in 249 files now uncovered.

102342 of 177975 relevant lines covered (57.5%)

24772.24 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/lncfg/htlcswitch.go
1
package lncfg
2

3
import (
4
        "fmt"
5
        "time"
6
)
7

8
var (
9
        // MaxMailboxDeliveryTimeout specifies the max allowed timeout value.
10
        // This value is derived from the itest `async_bidirectional_payments`,
11
        // where both side send 483 payments at the same time to stress test
12
        // lnd.
13
        MaxMailboxDeliveryTimeout = 2 * time.Minute
14
)
15

16
//nolint:ll
17
type Htlcswitch struct {
18
        MailboxDeliveryTimeout time.Duration `long:"mailboxdeliverytimeout" description:"The timeout value when delivering HTLCs to a channel link. Setting this value too small will result in local payment failures if large number of payments are sent over a short period."`
19
}
20

21
// Validate checks the values configured for htlcswitch.
UNCOV
22
func (h *Htlcswitch) Validate() error {
×
UNCOV
23
        if h.MailboxDeliveryTimeout <= 0 {
×
24
                return fmt.Errorf("mailboxdeliverytimeout must be positive")
×
25
        }
×
26

UNCOV
27
        if h.MailboxDeliveryTimeout > MaxMailboxDeliveryTimeout {
×
28
                return fmt.Errorf("mailboxdeliverytimeout: %v exceeds "+
×
29
                        "maximum: %v", h.MailboxDeliveryTimeout,
×
30
                        MaxMailboxDeliveryTimeout)
×
31
        }
×
32

UNCOV
33
        return nil
×
34
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc