From 0a1d592cf937ff49d9f051df88bfa93cbd96ac00 Mon Sep 17 00:00:00 2001 From: Olaoluwa Osuntokun Date: Wed, 17 Mar 2021 14:21:27 -0700 Subject: [PATCH] channeldb: return more detailed errors in DeleteInvoice This PR was created in order to help to debug the failures in: https://github.com/lightningnetwork/lnd/issues/5113 We add some more contextual errors so we can figure out where the assumptions of the current scan to delete function in the invoice registry is incorrect. --- channeldb/invoices.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/channeldb/invoices.go b/channeldb/invoices.go index 1675f15c..7598575a 100644 --- a/channeldb/invoices.go +++ b/channeldb/invoices.go @@ -2181,7 +2181,8 @@ func (d *DB) DeleteInvoice(invoicesToDelete []InvoiceDeleteRef) error { // payment address index. key := payAddrIndex.Get(ref.PayAddr[:]) if !bytes.Equal(key, invoiceKey) { - return fmt.Errorf("unknown invoice") + return fmt.Errorf("unknown invoice " + + "in pay addr index") } // Delete from the payment address index. @@ -2199,7 +2200,8 @@ func (d *DB) DeleteInvoice(invoicesToDelete []InvoiceDeleteRef) error { // invoice key. key := invoiceAddIndex.Get(addIndexKey[:]) if !bytes.Equal(key, invoiceKey) { - return fmt.Errorf("unknown invoice") + return fmt.Errorf("unknown invoice in " + + "add index") } // Remove from the add index. @@ -2221,7 +2223,8 @@ func (d *DB) DeleteInvoice(invoicesToDelete []InvoiceDeleteRef) error { // settle index key := settleIndex.Get(settleIndexKey[:]) if !bytes.Equal(key, invoiceKey) { - return fmt.Errorf("unknown invoice") + return fmt.Errorf("unknown invoice " + + "in settle index") } err = settleIndex.Delete(settleIndexKey[:])