nomad/state/state_store: two cases of incorrect CSIPlugin in-place (#8630)

This commit is contained in:
Lang Martin
2020-08-10 18:15:29 -04:00
committed by GitHub
parent c097c40776
commit 083ec181f8

View File

@@ -1099,7 +1099,7 @@ func upsertNodeCSIPlugins(txn *memdb.Txn, node *structs.Node, index uint64) erro
if raw == nil {
break
}
plug := raw.(*structs.CSIPlugin)
plug := raw.(*structs.CSIPlugin).Copy()
var hadDelete bool
if _, ok := inUseController[plug.ID]; !ok {
@@ -4740,6 +4740,7 @@ func (s *StateStore) updatePluginWithAlloc(index uint64, alloc *structs.Allocati
// became healthy, just move on
return nil
}
plug = plug.Copy()
err = plug.DeleteAlloc(alloc.ID, alloc.NodeID)
if err != nil {
return err