fix: Check if ArrayData is nil to prevent panic (#44332)

issue: #44331

Signed-off-by: Cai Zhang <cai.zhang@zilliz.com>
This commit is contained in:
cai.zhang 2025-09-12 14:17:57 +08:00 committed by GitHub
parent 060fc61e80
commit 62d416bf4f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1186,14 +1186,14 @@ func fillFieldPropertiesBySchema(columns []*schemapb.FieldData, schema *schemapb
// Set the ElementType because it may not be set in the insert request.
if fieldData.Type == schemapb.DataType_Array {
fd, ok := fieldData.Field.(*schemapb.FieldData_Scalars)
if !ok {
if !ok || fd.Scalars.GetArrayData() == nil {
return fmt.Errorf("field convert FieldData_Scalars fail in fieldData, fieldName: %s,"+
" collectionName:%s", fieldData.FieldName, schema.Name)
}
fd.Scalars.GetArrayData().ElementType = fieldSchema.ElementType
} else if fieldData.Type == schemapb.DataType_ArrayOfVector {
fd, ok := fieldData.Field.(*schemapb.FieldData_Vectors)
if !ok {
if !ok || fd.Vectors.GetVectorArray() == nil {
return fmt.Errorf("field convert FieldData_Vectors fail in fieldData, fieldName: %s,"+
" collectionName:%s", fieldData.FieldName, schema.Name)
}