mirror of https://github.com/milvus-io/milvus.git
enhance: [cherry-pick]Disallow the keywords as a field name or dynamic field name (#36108)
issue: #35873 master pr: #36101 Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>pull/36324/head
parent
2bc454bf40
commit
eb47150f66
|
@ -275,6 +275,10 @@ func validateFieldName(fieldName string) error {
|
|||
return merr.WrapErrFieldNameInvalid(fieldName, msg)
|
||||
}
|
||||
}
|
||||
if _, ok := common.FieldNameKeywords[fieldName]; ok {
|
||||
msg := invalidMsg + fmt.Sprintf("%s is keyword in milvus.", fieldName)
|
||||
return merr.WrapErrFieldNameInvalid(fieldName, msg)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -174,6 +174,10 @@ func TestValidateFieldName(t *testing.T) {
|
|||
"",
|
||||
string(longName),
|
||||
"中文",
|
||||
"True",
|
||||
"array_contains",
|
||||
"json_contains_any",
|
||||
"ARRAY_LENGTH",
|
||||
}
|
||||
|
||||
for _, name := range invalidNames {
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
package common
|
||||
|
||||
var FieldNameKeywords = map[string]struct{}{
|
||||
"$meta": {},
|
||||
"like": {},
|
||||
"exists": {},
|
||||
"EXISTS": {},
|
||||
"and": {},
|
||||
"or": {},
|
||||
"not": {},
|
||||
"in": {},
|
||||
"json_contains": {},
|
||||
"JSON_CONTAINS": {},
|
||||
"json_contains_all": {},
|
||||
"JSON_CONTAINS_ALL": {},
|
||||
"json_contains_any": {},
|
||||
"JSON_CONTAINS_ANY": {},
|
||||
"array_contains": {},
|
||||
"ARRAY_CONTAINS": {},
|
||||
"array_contains_all": {},
|
||||
"ARRAY_CONTAINS_ALL": {},
|
||||
"array_contains_any": {},
|
||||
"ARRAY_CONTAINS_ANY": {},
|
||||
"array_length": {},
|
||||
"ARRAY_LENGTH": {},
|
||||
"true": {},
|
||||
"True": {},
|
||||
"TRUE": {},
|
||||
"false": {},
|
||||
"False": {},
|
||||
"FALSE": {},
|
||||
}
|
Loading…
Reference in New Issue