# `Milvex.Milvus.Proto.Schema.FieldPartialUpdateOp`

FieldPartialUpdateOp describes how the values carried by the matching
FieldData should be applied against the existing row during a partial
upsert.

The message is referenced from UpsertRequest.field_ops rather than
embedded in FieldData to keep FieldData a pure data carrier — FieldData
flows through InsertRequest, QueryResults, SearchResultData and
internal msgstream paths where an op directive would be meaningless
and risk accidental echo-back on client-side read-modify-write flows.

Ops are matched to FieldData entries by field_name. When no op message
targets a given field, that field is merged with REPLACE semantics
(full overwrite), preserving backward compatibility.

# `t`

```elixir
@type t() :: %Milvex.Milvus.Proto.Schema.FieldPartialUpdateOp{
  __protobuf__: true,
  __unknown_fields__: [Protobuf.unknown_field()],
  field_name: String.t(),
  op: Milvex.Milvus.Proto.Schema.FieldPartialUpdateOp.OpType.t()
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
