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

lightningnetwork / lnd / 13535893188

26 Feb 2025 03:23AM UTC coverage: 57.502% (-1.3%) from 58.835%
13535893188

Pull #8453

github

Roasbeef
peer: update chooseDeliveryScript to gen script if needed

In this commit, we update `chooseDeliveryScript` to generate a new
script if needed. This allows us to fold in a few other lines that
always followed this function into this expanded function.

The tests have been updated accordingly.
Pull Request #8453: [4/4] - multi: integrate new rbf coop close FSM into the existing peer flow

280 of 1318 new or added lines in 22 files covered. (21.24%)

19475 existing lines in 254 files now uncovered.

103929 of 180740 relevant lines covered (57.5%)

24705.38 hits per line

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

79.49
/graph/stats.go
1
package graph
2

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

9
// builderStats is a struct that tracks various updates to the graph and
10
// facilitates aggregate logging of the statistics.
11
type builderStats struct {
12
        numChannels uint32
13
        numUpdates  uint32
14
        numNodes    uint32
15
        lastReset   time.Time
16

17
        mu sync.RWMutex
18
}
19

20
// incNumEdges increments the number of discovered edges.
21
func (g *builderStats) incNumEdgesDiscovered() {
14✔
22
        g.mu.Lock()
14✔
23
        g.numChannels++
14✔
24
        g.mu.Unlock()
14✔
25
}
14✔
26

27
// incNumUpdates increments the number of channel updates processed.
28
func (g *builderStats) incNumChannelUpdates() {
5✔
29
        g.mu.Lock()
5✔
30
        g.numUpdates++
5✔
31
        g.mu.Unlock()
5✔
32
}
5✔
33

34
// incNumNodeUpdates increments the number of node updates processed.
35
func (g *builderStats) incNumNodeUpdates() {
6✔
36
        g.mu.Lock()
6✔
37
        g.numNodes++
6✔
38
        g.mu.Unlock()
6✔
39
}
6✔
40

41
// Empty returns true if all stats are zero.
42
func (g *builderStats) Empty() bool {
125✔
43
        g.mu.RLock()
125✔
44
        isEmpty := g.numChannels == 0 &&
125✔
45
                g.numUpdates == 0 &&
125✔
46
                g.numNodes == 0
125✔
47
        g.mu.RUnlock()
125✔
48
        return isEmpty
125✔
49
}
125✔
50

51
// Reset clears any stats and sets the lastReset field to now.
52
func (g *builderStats) Reset() {
20✔
53
        g.mu.Lock()
20✔
54
        g.numChannels = 0
20✔
55
        g.numUpdates = 0
20✔
56
        g.numNodes = 0
20✔
57
        g.lastReset = time.Now()
20✔
58
        g.mu.Unlock()
20✔
59
}
20✔
60

61
// String returns a human-readable description of the stats.
UNCOV
62
func (g *builderStats) String() string {
×
UNCOV
63
        g.mu.RLock()
×
UNCOV
64
        str := fmt.Sprintf("Processed channels=%d updates=%d nodes=%d in "+
×
UNCOV
65
                "last %v", g.numChannels, g.numUpdates, g.numNodes,
×
UNCOV
66
                time.Since(g.lastReset))
×
UNCOV
67
        g.mu.RUnlock()
×
UNCOV
68
        return str
×
UNCOV
69
}
×
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