From 3c53d432187db928f7614529a115863ab670ec08 Mon Sep 17 00:00:00 2001
From: "Richard T. Carback III" <rick.carback@gmail.com>
Date: Wed, 5 Oct 2022 16:59:44 +0000
Subject: [PATCH] If the insert fails, due to the duplicate most likely, try to
 look up the uuid

---
 indexedDb/implementation.go | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/indexedDb/implementation.go b/indexedDb/implementation.go
index 110df126..0b723642 100644
--- a/indexedDb/implementation.go
+++ b/indexedDb/implementation.go
@@ -382,7 +382,14 @@ func (w *wasmModel) receiveHelper(newMessage *Message) (uint64,
 	err = txn.Await(ctx)
 	cancel()
 	if err != nil {
-		return 0, errors.Errorf("Upserting Message failed: %+v", err)
+		err = errors.Errorf("Upserting Message failed: %+v", err)
+		msgID := cryptoChannel.MessageID{}
+		copy(msgID[:], newMessage.MessageID)
+		uuid, _ := w.msgIDLookup(msgID)
+		if uuid == 0 {
+			return uuid, nil
+		}
+		return 0, err
 	}
 	res, _ := addReq.Result()
 	uuid := uint64(res.Int())
-- 
GitLab