From 038b5d14378f42909282fd05f6d416f686e61dbf Mon Sep 17 00:00:00 2001 From: Leander Beernaert Date: Wed, 21 Dec 2022 10:16:02 +0100 Subject: [PATCH] GODT-2222: Dot not error on unknown Address Events Prevent infinite error loop in event parsing by not returning errors if we already have or do not have a given address. This occurs since we sync the latest state at Bridge startup but still receive the events which contain these changes later. --- internal/user/events.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/internal/user/events.go b/internal/user/events.go index b76926fa..880024d3 100644 --- a/internal/user/events.go +++ b/internal/user/events.go @@ -196,7 +196,8 @@ func (user *User) handleCreateAddressEvent(ctx context.Context, event proton.Add }).Info("Handling address created event") if _, ok := user.apiAddrs[event.Address.ID]; ok { - return fmt.Errorf("address %q already exists", event.ID) + user.log.Debugf("Address %q already exists", event.ID) + return nil } user.apiAddrs[event.Address.ID] = event.Address @@ -245,7 +246,8 @@ func (user *User) handleUpdateAddressEvent(_ context.Context, event proton.Addre }).Info("Handling address updated event") if _, ok := user.apiAddrs[event.Address.ID]; !ok { - return fmt.Errorf("address %q does not exist", event.Address.ID) + user.log.Debugf("Address %q does not exist", event.Address.ID) + return nil } user.apiAddrs[event.Address.ID] = event.Address @@ -266,7 +268,8 @@ func (user *User) handleDeleteAddressEvent(_ context.Context, event proton.Addre addr, ok := user.apiAddrs[event.ID] if !ok { - return fmt.Errorf("address %q does not exist", event.ID) + user.log.Debugf("Address %q does not exist", event.ID) + return nil } if user.vault.AddressMode() == vault.SplitMode {