From 3da78cfe628a3bb4b401a27b4a81fdc2f6960426 Mon Sep 17 00:00:00 2001 From: Alexander Zavorotynskiy Date: Fri, 17 Jun 2022 17:33:52 +0200 Subject: [PATCH] feat(backend): added metadata insertion retrier (temp solution) --- backend/pkg/db/cache/messages-common.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/backend/pkg/db/cache/messages-common.go b/backend/pkg/db/cache/messages-common.go index 8ca7b2f85..90b97efbf 100644 --- a/backend/pkg/db/cache/messages-common.go +++ b/backend/pkg/db/cache/messages-common.go @@ -1,7 +1,9 @@ package cache import ( + "log" . "openreplay/backend/pkg/messages" + "time" // . "openreplay/backend/pkg/db/types" ) @@ -45,6 +47,12 @@ func (c *PGCache) InsertMetadata(sessionID uint64, metadata *Metadata) error { return nil } if err := c.Conn.InsertMetadata(sessionID, keyNo, metadata.Value); err != nil { + // Try to insert metadata after one minute + time.AfterFunc(time.Minute, func() { + if err := c.Conn.InsertMetadata(sessionID, keyNo, metadata.Value); err != nil { + log.Printf("metadata retry err: %s", err) + } + }) return err } session.SetMetadata(keyNo, metadata.Value)