142 lines
5.6 KiB
Go
142 lines
5.6 KiB
Go
package channeldb
|
|
|
|
import (
|
|
"errors"
|
|
"fmt"
|
|
)
|
|
|
|
var (
|
|
// ErrNoChanDBExists is returned when a channel bucket hasn't been
|
|
// created.
|
|
ErrNoChanDBExists = fmt.Errorf("channel db has not yet been created")
|
|
|
|
// ErrNoHistoricalBucket is returned when the historical channel bucket
|
|
// not been created yet.
|
|
ErrNoHistoricalBucket = fmt.Errorf("historical channel bucket has " +
|
|
"not yet been created")
|
|
|
|
// ErrDBReversion is returned when detecting an attempt to revert to a
|
|
// prior database version.
|
|
ErrDBReversion = fmt.Errorf("channel db cannot revert to prior version")
|
|
|
|
// ErrLinkNodesNotFound is returned when node info bucket hasn't been
|
|
// created.
|
|
ErrLinkNodesNotFound = fmt.Errorf("no link nodes exist")
|
|
|
|
// ErrNoActiveChannels is returned when there is no active (open)
|
|
// channels within the database.
|
|
ErrNoActiveChannels = fmt.Errorf("no active channels exist")
|
|
|
|
// ErrNoPastDeltas is returned when the channel delta bucket hasn't been
|
|
// created.
|
|
ErrNoPastDeltas = fmt.Errorf("channel has no recorded deltas")
|
|
|
|
// ErrInvoiceNotFound is returned when a targeted invoice can't be
|
|
// found.
|
|
ErrInvoiceNotFound = fmt.Errorf("unable to locate invoice")
|
|
|
|
// ErrNoInvoicesCreated is returned when we don't have invoices in
|
|
// our database to return.
|
|
ErrNoInvoicesCreated = fmt.Errorf("there are no existing invoices")
|
|
|
|
// ErrDuplicateInvoice is returned when an invoice with the target
|
|
// payment hash already exists.
|
|
ErrDuplicateInvoice = fmt.Errorf("invoice with payment hash already exists")
|
|
|
|
// ErrDuplicatePayAddr is returned when an invoice with the target
|
|
// payment addr already exists.
|
|
ErrDuplicatePayAddr = fmt.Errorf("invoice with payemnt addr already exists")
|
|
|
|
// ErrInvRefEquivocation is returned when an InvoiceRef targets
|
|
// multiple, distinct invoices.
|
|
ErrInvRefEquivocation = errors.New("inv ref matches multiple invoices")
|
|
|
|
// ErrNoPaymentsCreated is returned when bucket of payments hasn't been
|
|
// created.
|
|
ErrNoPaymentsCreated = fmt.Errorf("there are no existing payments")
|
|
|
|
// ErrNodeNotFound is returned when node bucket exists, but node with
|
|
// specific identity can't be found.
|
|
ErrNodeNotFound = fmt.Errorf("link node with target identity not found")
|
|
|
|
// ErrChannelNotFound is returned when we attempt to locate a channel
|
|
// for a specific chain, but it is not found.
|
|
ErrChannelNotFound = fmt.Errorf("channel not found")
|
|
|
|
// ErrMetaNotFound is returned when meta bucket hasn't been
|
|
// created.
|
|
ErrMetaNotFound = fmt.Errorf("unable to locate meta information")
|
|
|
|
// ErrGraphNotFound is returned when at least one of the components of
|
|
// graph doesn't exist.
|
|
ErrGraphNotFound = fmt.Errorf("graph bucket not initialized")
|
|
|
|
// ErrGraphNeverPruned is returned when graph was never pruned.
|
|
ErrGraphNeverPruned = fmt.Errorf("graph never pruned")
|
|
|
|
// ErrSourceNodeNotSet is returned if the source node of the graph
|
|
// hasn't been added The source node is the center node within a
|
|
// star-graph.
|
|
ErrSourceNodeNotSet = fmt.Errorf("source node does not exist")
|
|
|
|
// ErrGraphNodesNotFound is returned in case none of the nodes has
|
|
// been added in graph node bucket.
|
|
ErrGraphNodesNotFound = fmt.Errorf("no graph nodes exist")
|
|
|
|
// ErrGraphNoEdgesFound is returned in case of none of the channel/edges
|
|
// has been added in graph edge bucket.
|
|
ErrGraphNoEdgesFound = fmt.Errorf("no graph edges exist")
|
|
|
|
// ErrGraphNodeNotFound is returned when we're unable to find the target
|
|
// node.
|
|
ErrGraphNodeNotFound = fmt.Errorf("unable to find node")
|
|
|
|
// ErrEdgeNotFound is returned when an edge for the target chanID
|
|
// can't be found.
|
|
ErrEdgeNotFound = fmt.Errorf("edge not found")
|
|
|
|
// ErrZombieEdge is an error returned when we attempt to look up an edge
|
|
// but it is marked as a zombie within the zombie index.
|
|
ErrZombieEdge = errors.New("edge marked as zombie")
|
|
|
|
// ErrEdgeAlreadyExist is returned when edge with specific
|
|
// channel id can't be added because it already exist.
|
|
ErrEdgeAlreadyExist = fmt.Errorf("edge already exist")
|
|
|
|
// ErrNodeAliasNotFound is returned when alias for node can't be found.
|
|
ErrNodeAliasNotFound = fmt.Errorf("alias for node not found")
|
|
|
|
// ErrUnknownAddressType is returned when a node's addressType is not
|
|
// an expected value.
|
|
ErrUnknownAddressType = fmt.Errorf("address type cannot be resolved")
|
|
|
|
// ErrNoClosedChannels is returned when a node is queries for all the
|
|
// channels it has closed, but it hasn't yet closed any channels.
|
|
ErrNoClosedChannels = fmt.Errorf("no channel have been closed yet")
|
|
|
|
// ErrNoForwardingEvents is returned in the case that a query fails due
|
|
// to the log not having any recorded events.
|
|
ErrNoForwardingEvents = fmt.Errorf("no recorded forwarding events")
|
|
|
|
// ErrEdgePolicyOptionalFieldNotFound is an error returned if a channel
|
|
// policy field is not found in the db even though its message flags
|
|
// indicate it should be.
|
|
ErrEdgePolicyOptionalFieldNotFound = fmt.Errorf("optional field not " +
|
|
"present")
|
|
|
|
// ErrChanAlreadyExists is return when the caller attempts to create a
|
|
// channel with a channel point that is already present in the
|
|
// database.
|
|
ErrChanAlreadyExists = fmt.Errorf("channel already exists")
|
|
)
|
|
|
|
// ErrTooManyExtraOpaqueBytes creates an error which should be returned if the
|
|
// caller attempts to write an announcement message which bares too many extra
|
|
// opaque bytes. We limit this value in order to ensure that we don't waste
|
|
// disk space due to nodes unnecessarily padding out their announcements with
|
|
// garbage data.
|
|
func ErrTooManyExtraOpaqueBytes(numBytes int) error {
|
|
return fmt.Errorf("max allowed number of opaque bytes is %v, received "+
|
|
"%v bytes", MaxAllowedExtraOpaqueBytes, numBytes)
|
|
}
|