cover all concurrency + etag cases

This commit is contained in:
Bernd Verst 2021-09-22 12:18:13 -07:00
parent f8456bc0d1
commit 0bd6eb2e9a
1 changed files with 5 additions and 1 deletions

View File

@ -199,7 +199,11 @@ func (r *StateStore) writeRow(req *state.SetRequest) error {
err := entity.Insert(storage.FullMetadata, nil)
if err != nil {
if etag == "" {
return state.NewETagError(state.ETagMismatch, err)
if req.Options.Concurrency == state.FirstWrite {
return state.NewETagError(state.ETagMismatch, err)
}
return entity.Update(true, nil)
}
err := entity.Update(false, nil)
if err != nil {