From 0f7c37ee470d55d15229d0f024835e573be3c41c Mon Sep 17 00:00:00 2001
From: Jake Taylor <jake@elixxir.io>
Date: Fri, 21 Oct 2022 13:39:03 -0500
Subject: [PATCH] force indexeddb to close and open after creation

---
 indexedDb/init.go | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/indexedDb/init.go b/indexedDb/init.go
index 461c031e..d21564a2 100644
--- a/indexedDb/init.go
+++ b/indexedDb/init.go
@@ -87,6 +87,27 @@ func newWASMModel(databaseName string, cb MessageReceivedCallback) (
 
 	// Wait for database open to finish
 	db, err := openRequest.Await(ctx)
+	if err != nil {
+		return nil, err
+	}
+
+	// Close and open again to ensure the state is finalized
+	err = db.Close()
+	if err != nil {
+		return nil, err
+	}
+	openRequest, err = idb.Global().Open(ctx, databaseName, currentVersion,
+		func(db *idb.Database, oldVersion, newVersion uint) error {
+			return nil
+		})
+	if err != nil {
+		return nil, err
+	}
+	// Wait for database open to finish
+	db, err = openRequest.Await(ctx)
+	if err != nil {
+		return nil, err
+	}
 
 	return &wasmModel{db: db, receivedMessageCB: cb}, err
 }
-- 
GitLab