router+graph: return ErrGraphNodesNotFound if no nodes to prune

Avoids creating a bucket unneccessarily.
This commit is contained in:
Johan T. Halseth committed 2018-12-06 10:22:15 +01:00
1 parent 87df6b71c5
commit 81fe6e73ed
2 files changed
+5 -4

No files matched your search

+3 -3
View File
@@ -795,9 +795,9 @@ func (c *ChannelGraph) PruneGraph(spentOutputs []*wire.OutPoint,
// node gains more channels, it will be re-added back to the graph. // node gains more channels, it will be re-added back to the graph.
func (c *ChannelGraph) PruneGraphNodes() error { func (c *ChannelGraph) PruneGraphNodes() error {
return c.db.Update(func(tx *bbolt.Tx) error { return c.db.Update(func(tx *bbolt.Tx) error {
nodes, err := tx.CreateBucketIfNotExists(nodeBucket) nodes := tx.Bucket(nodeBucket)
if err != nil { if nodes == nil {
return err return ErrGraphNodesNotFound
} }
edges := tx.Bucket(edgeBucket) edges := tx.Bucket(edgeBucket)
if edges == nil { if edges == nil {
+2 -1
View File
@@ -445,7 +445,8 @@ func (r *ChannelRouter) Start() error {
// Finally, before we proceed, we'll prune any unconnected nodes from // Finally, before we proceed, we'll prune any unconnected nodes from
// the graph in order to ensure we maintain a tight graph of "useful" // the graph in order to ensure we maintain a tight graph of "useful"
// nodes. // nodes.
if err := r.cfg.Graph.PruneGraphNodes(); err != nil { err = r.cfg.Graph.PruneGraphNodes()
if err != nil && err != channeldb.ErrGraphNodesNotFound {
return err return err
} }