From 824c41c2a542bbdf36f846ca21af8d9644c2ab24 Mon Sep 17 00:00:00 2001 From: Jamie Holdstock Date: Thu, 1 Dec 2022 13:08:18 +0800 Subject: [PATCH] Remove duplicate fee addr check. (#361) This check was added preemptively, the error has never actually been observed in dev, testing, or production. It does not scale well. Its takes almost 500ms to insert into a database containing 100k tickets. --- database/ticket.go | 14 -------------- database/ticket_test.go | 8 -------- 2 files changed, 22 deletions(-) diff --git a/database/ticket.go b/database/ticket.go index dd68609..70fca37 100644 --- a/database/ticket.go +++ b/database/ticket.go @@ -113,20 +113,6 @@ func (vdb *VspDatabase) InsertNewTicket(ticket Ticket) error { return fmt.Errorf("could not create bucket for ticket: %w", err) } - // Error if a ticket already exists with the same fee address. - err = ticketBkt.ForEach(func(k, v []byte) error { - tbkt := ticketBkt.Bucket(k) - - if string(tbkt.Get(feeAddressK)) == ticket.FeeAddress { - return fmt.Errorf("ticket with fee address %s already exists", ticket.FeeAddress) - } - - return nil - }) - if err != nil { - return err - } - err = putTicketInBucket(newTicketBkt, ticket) if err != nil { return fmt.Errorf("putting ticket in bucket failed: %w", err) diff --git a/database/ticket_test.go b/database/ticket_test.go index 0ea523d..7cbd5f5 100644 --- a/database/ticket_test.go +++ b/database/ticket_test.go @@ -53,14 +53,6 @@ func testInsertNewTicket(t *testing.T) { t.Fatal("expected an error inserting ticket with duplicate hash") } - // Inserting a ticket with the same fee address should fail. - ticket3 := exampleTicket() - ticket3.FeeAddress = ticket.FeeAddress - err = db.InsertNewTicket(ticket3) - if err == nil { - t.Fatal("expected an error inserting ticket with duplicate fee addr") - } - // Inserting a ticket with empty hash should fail. ticket.Hash = "" err = db.InsertNewTicket(ticket)