From fe52bbfb381974b7468f26829ec6bdc7424518e8 Mon Sep 17 00:00:00 2001 From: Hailey Date: Sun, 8 Jun 2025 13:10:01 -0700 Subject: [PATCH] fix putRecord updates --- server/repo.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/server/repo.go b/server/repo.go index 87e26f0..bbde68b 100644 --- a/server/repo.go +++ b/server/repo.go @@ -112,6 +112,11 @@ func (rm *RepoMan) applyWrites(urepo models.Repo, writes []Op, swapCommit *strin for i, op := range writes { if op.Type != OpTypeCreate && op.Rkey == nil { return nil, fmt.Errorf("invalid rkey") + } else if op.Type == OpTypeCreate && op.Rkey != nil { + _, _, err := r.GetRecord(context.TODO(), op.Collection+"/"+*op.Rkey) + if err == nil { + op.Type = OpTypeUpdate + } } else if op.Rkey == nil { op.Rkey = to.StringPtr(rm.clock.Next().String()) writes[i].Rkey = op.Rkey -- 2.51.2