enhance: field stringtype maxlength raise to 1M (#38592)

enhance: field stringtype maxlength raise to 1M
issue: https://github.com/milvus-io/milvus/issues/37436

Signed-off-by: Xianhui.Lin <xianhui.lin@zilliz.com>
pull/38623/head
Xianhui Lin 2024-12-20 14:32:45 +08:00 committed by GitHub
parent c39db11509
commit 90de37e60a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 9 additions and 9 deletions

View File

@ -1252,7 +1252,7 @@ func (t *alterCollectionFieldTask) PreExecute(ctx context.Context) error {
}
if value > defaultMaxVarCharLength {
return merr.WrapErrParameterInvalid("%s exceeds the maximum allowed value 65535", prop.Value)
return merr.WrapErrParameterInvalid("%s exceeds the maximum allowed value 1048576", prop.Value)
}
}
}

View File

@ -64,7 +64,7 @@ const (
// enableMultipleVectorFields indicates whether to enable multiple vector fields.
enableMultipleVectorFields = true
defaultMaxVarCharLength = 65535
defaultMaxVarCharLength = 1048576
defaultMaxArrayCapacity = 4096
@ -365,7 +365,7 @@ func validateMaxLengthPerRow(collectionName string, field *schemapb.FieldSchema)
return err
}
if maxLengthPerRow > defaultMaxVarCharLength || maxLengthPerRow <= 0 {
return merr.WrapErrParameterInvalidMsg("the maximum length specified for a VarChar should be in (0, 65535]")
return merr.WrapErrParameterInvalidMsg("the maximum length specified for a VarChar should be in (0, 1048576]")
}
exist = true
}

View File

@ -57,7 +57,7 @@ const (
DefaultRgName = "__default_resource_group"
DefaultDb = "default"
MaxDim = 32768
MaxLength = int64(65535)
MaxLength = int64(1048576)
MaxCollectionNameLen = 255
DefaultRgCapacity = 1000000
RetentionDuration = 40 // common.retentionDuration

View File

@ -836,7 +836,7 @@ func TestCreateVarcharArrayInvalidLength(t *testing.T) {
for _, invalidLength := range []int64{-1, 0, common.MaxLength + 1} {
arrayVarcharField.WithMaxLength(invalidLength)
err := mc.CreateCollection(ctx, client.NewCreateCollectionOption(collName, schema))
common.CheckErr(t, err, false, "the maximum length specified for a VarChar should be in (0, 65535]")
common.CheckErr(t, err, false, "the maximum length specified for a VarChar should be in (0, 1048576]")
}
}
@ -858,7 +858,7 @@ func TestCreateVarcharInvalidLength(t *testing.T) {
for _, invalidLength := range []int64{-1, 0, common.MaxLength + 1} {
varcharField.WithMaxLength(invalidLength)
err := mc.CreateCollection(ctx, client.NewCreateCollectionOption(collName, schema))
common.CheckErr(t, err, false, "the maximum length specified for a VarChar should be in (0, 65535]")
common.CheckErr(t, err, false, "the maximum length specified for a VarChar should be in (0, 1048576]")
}
}

View File

@ -3875,10 +3875,10 @@ class TestCollectionString(TestcaseBase):
c_name = cf.gen_unique_str(prefix)
int_field = cf.gen_int64_field(is_primary=True)
vec_field = cf.gen_float_vec_field()
max_length = 100000
max_length = 1048576 + 1
string_field = cf.gen_string_field(max_length=max_length)
schema = cf.gen_collection_schema([int_field, string_field, vec_field])
error = {ct.err_code: 65535, ct.err_msg: "the maximum length specified for a VarChar should be in (0, 65535]"}
error = {ct.err_code: 1048576, ct.err_msg: "the maximum length specified for a VarChar should be in (0, 1048576]"}
self.collection_wrap.init_collection(name=c_name, schema=schema,
check_task=CheckTasks.err_res, check_items=error)
@ -4117,7 +4117,7 @@ class TestCollectionARRAY(TestcaseBase):
self.init_collection_wrap(schema=array_schema, check_task=CheckTasks.err_res,
check_items={ct.err_code: 65535,
ct.err_msg: "the maximum length specified for a VarChar "
"should be in (0, 65535]"})
"should be in (0, 1048576]"})
@pytest.mark.tags(CaseLabel.L2)
def test_collection_array_field_all_datatype(self):