feat(backend): added metadata insertion retrier (temp solution) (#548)

Co-authored-by: Alexander Zavorotynskiy <alexander@openreplay.com>
This commit is contained in:
Rajesh Rajendran 2022-06-21 10:48:51 +00:00 committed by GitHub
parent 270e9ca46a
commit 68e5555f25
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -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)