diff --git a/docs/query-language.md b/docs/query-language.md index 666ba60bf..7c54c3ba8 100644 --- a/docs/query-language.md +++ b/docs/query-language.md @@ -139,7 +139,7 @@ SetColumnAttrs(, , **Result Type:** null -SetColumnAttrs queries always return `null` upon success. Setting a value of `null`, without quotes, deletes an attribute. Note that, `frame` cannot be used as an attribute name. +SetColumnAttrs queries always return `null` upon success. Setting a value of `null`, without quotes, deletes an attribute. To avoid confusion, `frame` cannot be used as an attribute name. **Examples:** diff --git a/executor.go b/executor.go index 03ce03aaa..1507c3050 100644 --- a/executor.go +++ b/executor.go @@ -1040,6 +1040,8 @@ func (e *Executor) executeSetFieldValue(ctx context.Context, index string, c *pq // Copy args and remove reserved fields. args := pql.CopyArgs(c.Args) delete(args, "frame") + // While frame could technically work as a ColumnAttr argument, we are treating it as a reserved word primarily to avoid confusion. + // Also, if we ever need to make ColumnAttrs frame-specific, then having this reserved word prevents backward incompatibility. delete(args, columnLabel) // Set values.